summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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