summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Klemkow <j.klemkow@wemelug.de>2012-11-05 00:05:33 +0100
committerJan Klemkow <j.klemkow@wemelug.de>2012-11-05 00:05:33 +0100
commitf527da04b4f9293a147d165761d7fc58927b3a59 (patch)
treea87a234b013f049a37a0c2064ac8fd3a0745429c
parent93a40cf77ebe3ce59fb5fff659951ba369865b66 (diff)
downloadsksys-f527da04b4f9293a147d165761d7fc58927b3a59.tar.gz
sksys-f527da04b4f9293a147d165761d7fc58927b3a59.tar.bz2
sksys-f527da04b4f9293a147d165761d7fc58927b3a59.zip
add privilege separation
-rw-r--r--document.asciidoc31
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