Skip to main content

How to Disable System Integrity Protection(SIP) or rootless mode in OS X El Capitan.

System Integrity Protection or Rootless mode is a security feature of OS X El Capitan operating system  by Apple Inc. It protects certain system processes, file and folders from being modified or tampered with by other processes even when executed by the root user or by a user with root privileges(sudo). Following are the the key concepts of System Integrity Protection.

1. System Locations Cannot Be Written To  -  System files can be modified only by system processes signed with Apple’s code signing identity. App processes should instead write to locations designated for third-party developers.

The following directories can only be written to by the system: 

System-Only Locations 

    ● /bin 
    ● /sbin 
    ● /usr 
    ● /System 

In contrast, the following directories are available to any process: 

Locations Available to Developers 
    ● /usr/local 
    ● /Applications 
    ● [~]/Library 

All directories in /usr except for /usr/local are restricted to the system. Apple app directories in /Applications are restricted to the system.



           
2. System Processes Cannot Be Attached To  - System binaries can be modified only by Apple Installer and Software Update from Apple-provided packages, and no longer permit runtime attachment or code injection.



3. Kernel Extensions Must Be Signed - Kernel extensions must be signed with a Developer ID for Signing Kexts certificate.


Security configuration is stored in NVRAM rather than in the file system itself. As a result, this configuration applies to all installations of OS X across the entire machine and persists across OS X installations that support System Integrity Protection.


System Integrity Protection can be configured using the csrutil(1) command.

The following command will check the status of the SIP on the system.

$ csrutil status 
System Integrity Protection status: enabled.

To enable or disable System Integrity Protection, you must boot to Recovery partition and run the csrutil  command from the Terminal. 

       1. Boot to Recovery OS by restarting your machine and holding down the Command and R keys at startup. 
       2. Launch Terminal from the Utilities menu. 
       3. Enter the following command: 
              $ csrutil disable 
      
       Note:  After enabling or disabling System Integrity Protection on a machine, a reboot is required.

For more information on SIP, click here


Comments

Popular posts from this blog

How to find firmware or boot ROM version in Mac OS X

Firmware and boot ROM version of your mac can be found in two ways. Way 1 : 1. From "Apple" menu , choose "About This Mac" menu item. 2. Click " More Info " to open "System Profiler" application. 3. Under Contents -> Select Hardware Tree item. On the right side panel Under hardware overview section, we can see Boot ROM Version and SMC (Firmware) Version. Way 2 : Run the below command in terminal to get boot ROM version and SMC(firmware) version : $ system_profiler SPHardwareDataType | grep -i "Version" | awk -F ':' '{print $1 $2}'

How to enable root login in gnome on Debian 6 or 7

Root user login in gnome is disabled on Debian system by default for security reasons. If you want to enable it for specific reasons then follow the below steps : 1. Login into Debian system 2. launch the Root Terminal from Applications -> Accessories. 3. Authenticate with password to launch the Root Terminal. 4. Open "/etc/pam.d/gdm3" with vi.          #vi /etc/pam.d/gdm3 5. Look for "auth     required     pam_succeed_if.so  user  != root   quiet_success"  , comment it out as below.     #auth     required     pam_succeed_if.so  user  != root   quiet_success 6. Save the modification with Esc+w+q+Enter keystroke. 7. Restart or reboot Debian system. 8. Login with root user in gnome. You should be now able to login successfully.   

How to setup Redhat cluster and GFS2 on RedHat Enterprise Linux 6 on Vmware ESXi

1)     Installing RHEL6 on Vmware esxi  with clustering packages . a)     Creating a RedHat Enterprise Linux 6.0 Virtual image. i)       Open vSphere Client by connecting to a Vmware ESXi Server. ii)     Login into your vSphere Client iii)    Goto File -> New -> Virtual Machine (VM). iv)    Select Custom option in Create New Virtual Machine Window and click Next v)   Give a name to the virtual machine(VM) ( In my case name of my virtual machine is – RHEL6-ClusterNode1) and click next. vi)    Select a resource pool where you want your VM to  reside ( In my case , I have created a      resource pool named RHEL6-Cluster.) and click Next. vii)  Select a datastore  to store your VM files  and Click Next. viii) Select VM version which is suitable for your environment.( In my case VM version is 7) and click Next. ix)   Specify ...