Linux-Praxisbuch/ Grundlagen der Sicherheit
Prozessorsicherheit
BearbeitenDie Grundlegende Sicherheit des Rechners basiert auf dem mehrschichtigem Speicherschutzmodell des Prozessors. Im Ring 0 des Prozessors sollte nur der Kernel laufen. Der Ring 1 ist für Hardwaretreiber vorgesehen. Der Ring 2 ist für systemnahe Prozesse wie das Dateisystem vorgesehen. Auf dem obersten Ring laufen die Userprozesse. Ein Prozess eines niederen Rings kann jederzeit Prozesse eines höheren Rings beenden.
Betriebssystemsicherheit
BearbeitenAuf diese Art und Weise kann das Betriebssystem die Kontrolle behalten. Auf Userebene wird die Sicherheit am besten durch User, Usergruppen und Rechte gestaltet. Nur ein User darf alles, alle anderen User dürfen nur das, was für sie notwendig ist. Spezielle Berechtigungen für Gruppen von Usern werden einer Usergruppe zugeordnet, die User werden dann Mitglied dieser Gruppe.
Diese Rechteunterteilung ermöglicht es, feindliche Übernahmen von Prozessen und Usern in ihrem Kontext zu begrenzen. Der Übernehmer kann nicht aus den Rechten des Users ausbrechen.
Alle exponierten Prozesse wie Web- oder FTP-Server, die von außen erreichbar sind, werden durch einen eigenen User ausgeführt, der nur über sehr eingeschränkte Rechte verfügt. So kann der User wwwrun, der den Apache ausführt, nicht außerhalb seines Serverrootverzeichnises schreiben. Er hat keinen Zugriff auf die meiste Hardware. Er gehört auch keiner Usergruppe an, um über diese keine zusätzlichen Rechte zu erhalten.
Wird durch ein Programm Zugriff auf Hardware oder Dateien benötigt, für die der Nutzer keine Rechte besitzt, so muss es im Kontext eines höher berechtigten Users ausgeführt werden. Das Programm ist dadurch wiederum besonders gefährdet für Angriffe, weil sich höhere Rechte erreichen lassen. Man ist deshalb bestrebt, diese Programme zu teilen, um nur einen kleineren Teil mit höheren Rechten ausführen zu müssen.