summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Franzke <benjaminfranzke@googlemail.com>2013-01-08 16:53:51 +0100
committerBenjamin Franzke <benjaminfranzke@googlemail.com>2013-01-08 16:53:51 +0100
commitf5cf107dddb63c57d0e2224f4288b7461104d12e (patch)
tree4ab6b4ed62c64fe17f09455b8810ad167d6d669d
parenta822babf56c71ac360faaf7f4c3a96b44f300db3 (diff)
downloadsksys-f5cf107dddb63c57d0e2224f4288b7461104d12e.tar.gz
sksys-f5cf107dddb63c57d0e2224f4288b7461104d12e.tar.bz2
sksys-f5cf107dddb63c57d0e2224f4288b7461104d12e.zip
doc: Fix some FIXME's
-rw-r--r--document.asciidoc17
1 files changed, 5 insertions, 12 deletions
diff --git a/document.asciidoc b/document.asciidoc
index 6405f29..5458bb0 100644
--- a/document.asciidoc
+++ b/document.asciidoc
@@ -62,13 +62,10 @@ sondern als loser Speicherbereich betrachtet.
Somit muss ein Programmierer bei Zeichenketten immer den dahinterliegenden
Speicherbereich und dessen Laenge bei jeder Operation bedenken.
-//TODO: Hinleitung auf C-Funktion die durch folgendes "diesen" referenziert
-//werden.
-
//Da dieses seit langer Zeit immer wieder für Sicherheitsprobleme sorgt, wurden
//viele Funktionen neu geschrieben.
-Bei diesen Funktionen ist das Problem, dass diese die Laengen von
-Speicherbereichen nicht beachten.
+Die herkömmlichen Funktionen für Zeichenketten besitzen Problem, dass die
+Laengen von Speicherbereichen nicht beachtet werden.
Dadurch kommt es schnell zu Pufferüberlaeufen und Zugriffen auf nicht
allozierte Speicherbereiche.
Dadurch koennen Angreifer eigenen Programmcode einschleusen und ausführen
@@ -127,8 +124,7 @@ Zur Laufzeit werden diese hoeheren Rechte dann nicht mehr benoetigt.
Somit geben diese Prozesse nach ihrer Initialisierung diese Rechte wieder ab
und arbeiten mit normalen Benutzer-Rechten weiter.
-//TODO: einfachster Fall: Gibt es kompliziertere?
-Im einfachsten Fall startet ein Daemon mit Root-Rechten.
+In der Praxis wird also z.B. ein Daemon mit Root-Rechten gestartet.
Dieser alloziert benötigte Ressourcen, wie Sockets mit Well-Known-Ports oder
einen Filedeskriptoren auf eine Datei.
Im folgenden gibt der Daemon die Root-Rechte ab, in dem eine andere effektive
@@ -202,8 +198,7 @@ viele mehr anbieten, ist die Gefahr einer Sicherheitslücke sehr hoch.
Sollte einer dieser Dienste über eine Sicherheitslücke von einem Angreifer
übernommen werden, so koennte dieser ebenfalls die anderen Dienste und deren
Daten manipulieren.
-//TODO: künstlich? Besser virtuell?
-Um dies zu vermeiden koennen diese Dienste in künstlichen Umgebungen
+Um dies zu vermeiden koennen diese Dienste in virtuellen Verzeichnisumgebungen
voneinander getrennt werden.
Eine Variante dafür ist der System-Call +chroot(2)+.
Dieser System-Call wechselt für einen Prozess und dessen Kind-Prozesse das
@@ -223,8 +218,7 @@ da es definierte Wege gibt, ein chroot wieder zu verlassen.
Das Konzept von ``Jails'', wie etwa im FreeBSD-Betriebssystem verwendet,
sind dafür ausgelegt, verschiedene Prozesse sicher voneinander zu trennen.
Bei den ``Jails'' werden die System-Calls des eingeschlossenen Prozesses
-explizit gefiltert, um die Beeinflussung von anderen Prozessen zu verhindern.
-//FIXME: Warum explizit? Werden andere Dinge implizit gefiltert?
+gefiltert, um die Beeinflussung von anderen Prozessen zu verhindern.
Um verschiedene Prozesse voneinander zu trennen, kann auch die
UNIX-Rechte-Verwaltung verwendet werden.
@@ -256,7 +250,6 @@ UNIX-Domain-Sockets sind an Dateien gebundene Verbindungen,
mit den gewöhnlichen Berechtigungsparametern, durch die sich über die
systeminterne Benutzer- und Rechteverwaltung der Zugriff auf die Verbindung
steuern lässt.
-//FIXME: geeignet?
Wird doch eine Netzwerkkommunikation benoetigt, kann über die geeignet Wahl
der IP-Adresse die Erreichbarkeit kontrolliert werden.
Für die Kommunikation von Diensten innerhalb einer Broadcast-Domain sollen