diff options
author | Jan Klemkow <j.klemkow@wemelug.de> | 2012-11-05 00:05:33 +0100 |
---|---|---|
committer | Jan Klemkow <j.klemkow@wemelug.de> | 2012-11-05 00:05:33 +0100 |
commit | f527da04b4f9293a147d165761d7fc58927b3a59 (patch) | |
tree | a87a234b013f049a37a0c2064ac8fd3a0745429c /document.asciidoc | |
parent | 93a40cf77ebe3ce59fb5fff659951ba369865b66 (diff) | |
download | sksys-f527da04b4f9293a147d165761d7fc58927b3a59.tar.gz sksys-f527da04b4f9293a147d165761d7fc58927b3a59.tar.bz2 sksys-f527da04b4f9293a147d165761d7fc58927b3a59.zip |
add privilege separation
Diffstat (limited to 'document.asciidoc')
-rw-r--r-- | document.asciidoc | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/document.asciidoc b/document.asciidoc index 1dcab7b..e97255a 100644 --- a/document.asciidoc +++ b/document.asciidoc @@ -3,12 +3,17 @@ == Einleitung -Systemprogrammierung +Dieses Dokument beschreibt Sicherheitrisiken von Systemprogrammen mit dem Fokus +auf UNIX-Systeme. == Angriffsvektoren === Standard-C-Bibliothek +Viele Systemprogramme sind in der Programmiersprache C geschrieben. +Deren Standardbiblothek unterlag im laufe der Zeit einer ganzen Reihe von +Veraenderungen, welche auch den Punkt der Sicherheit betrafen. + Zeichenketten-Funktionen. * gets() @@ -16,6 +21,30 @@ Zeichenketten-Funktionen. * strcpy() * str..() +=== Netzwerk-Programmierung + +Ein grosser Angriffvektor auf Computersysteme sind die Laufenden Dienste, +welche ueber Netzwerk und Internet erreichbar sind. +Ein Fehler in iherer Programmierung kann von ausserhalb ausgenutzt werden, +da man bei Internet diensten eine staendige weltweite Erreichbarkeit hat. + +Zum Schutz solcher Dienste gibt es verschiene Mechanissmen. + + * privilege separation + * zugangs beschraenkung (Firewall Layer 3/4) + * Applikation Level Gateway (doppelte parsen von protokollen) + +==== Privilege Separation + +Bei der Privilege-Seperation wird ein Programm in verschiedene Prozesse mit +unterschiedlichen Berechtigungena auf geteilt. +Ziel ist es, so wenig wie moeglich Programmcode mit root-Rechten laufen zu +lassen. + +Im einfachsten Fall startet ein Deamon mit Root rechten und holt sich alle +resourcen, wie etwas sockets mit Well-Known-Ports oder eine Filedescriptor auf +eine Datei, gibt dann die rechte ab und laeuft im user-mode weiter. + === Kernel * interrupt blockierung |