Eine der ersten Hürden, die sich stellt, wenn man eine Sicherheitsüberprüfung der Debian-Distribution durchführen will, ist zu entscheiden, welches Paket für eine Untersuchung in Frage kommt.
Im Optimalfall sollten alle Pakete überprüft werden. Aufgrund der immensen Größe des Archives ist es aber vonnöten Prioritäten zu setzen.
Einige wenige Rahmenbedingungen, die ein Paket für eine Überprüfung in Frage kommen lassen, sind:
Vielgenutzten Paketen sollte generell eine höhere Priorität zugesprochen werden, da ein Problem in diesen eine größere Anzahl von Benutzern betreffen würde.
Der Debian-Popularitäts-Wettbewerb enthält einen aktuellen Überblick über die populärsten Pakete unter den Teilnehmern der freiwilligen Umfrage.
Für detaillierte Informationen werfen Sie insbesondere einen Blick auf die nach Stimmen sortierte Paketliste.
Die nach Stimmen (by vote
) sortierte Liste reiht die Paketen danach auf,
wie häufig sie von den Teilnehmern der Umfrage verwendet werden.
Ist ein Paket sicherheitskritisch, insbesondere wenn es die oben genannten Kriterien erfüllt, und wird dazu noch häufig verwendet, ist es definitiv ein guter Kandidat, um einer Sicherheitsüberprüfung unterzogen zu werden.
Mit setuid und setgid versehene Dateien sind generell Kandidaten für eine Sicherheitsüberprüfung, da ein Kompromittieren dieser Rechte einem lokalen Benutzer Zugang zu Berechtigungen verschaffen könnte, die er im Normalfall nicht hätte.
Um diese Suche zu vereinfachen existiert eine durchsuchbare Liste aller mit setuid- und setgid-Rechten versehenen Dateien, die in der derzeitigen stabilen Version enthalten sind:
Wenn es darum geht die entsprechenden Dateien auszuwählen, ist es wichtig zu beachten, dass einige mehr und andere weniger sicherheitskritisch sind. Mit setuid(root) versehene Binärdateien sollten anderen gegenüber (z.B. mit setgid(games) oder setgid(bugs) versehenen) bevorzugt werden.
Netzwerk-Servern gilt es ebenfalls viel Beachtung zu schenken, wenn es darum geht eine Sicherheitsüberprüfung vorzunehmen. Eine Sicherheitslücke kann hier dazu führen, dass Systeme durch Fernzugriff kompromittiert werden können.
Kompromittierungen aufgrund von Fernzugriffen sind in der Regel verhängnisvoller als lokale.
Online-Skripte – insbesondere CGI-Skripte – bewegen sich in der selben Klasse wie Netzwerk-Server. Selbst wenn der eingesetzte Webserver keine Sicherheitslücken aufweist, ist sicherzustellen, dass auch die von ihm bereitgestellten Skripte sicher sind.
Ein Fehler in einem Skript, das über Netz abrufbar ist, ist mindestens genauso gefährlich wie ein Server der auf Verbindungen wartet – beide können zur Kompromittierung eines Systems führen.
Auch wenn es wenige dieser Art gibt, ist es dennoch wichtig einen Blick auf die in Paketen enthaltenen automatisierten Skripte und dergleichen zu werfen.
Viele unterstützende Prozesse werden per Voreinstellung als root ausgeführt, wie zum Beispiel die Rotation von Logfiles.
Erfolgreiches Ausnutzen einer Symlink-Attacke kann zu einer lokalen Kompromittierung führen.