One of the core pieces of security in Unix/Linux systems is limiting privileges by user. For instance, certain actions can only be done by the root user. In theory, this can keep a malicious process from causing too much harm.
But what mechanism enforces this?
As far as I know, there are basically two ways of password-protecting something:
- Superficially: When Windows XP boots, it may ask for a password. Without the password, it won't let you log in, which might stop someone from accessing a file on the computer. But this only works if the attacker boots Windows; if they boot a different operating system and mount the hard drive, there is no protection on the file.
- Cryptographically: Password management programs typically store passwords in a file. This file is encrypted with a "master password." Unless you supply the master password, the program not only will not, but truly cannot give you access to the file; it does not know how.
Which category do Unix/Linux user permissions fall under, and how is this enforced?