PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hinweise zu aktuellen Lücken im Linux Kernel



Tomek
15.07.06, 14:07
Die zwei kürzlich entdeckten Sicherheitslücken im Linux Kernel sorgen momentan für etwas Wirbel:
http://www.securityfocus.com/bid/18874
http://www.securityfocus.com/bid/18992Beide Lücken ermöglichen unter Umständen lokal angemeldeten Benutzern das Erlangen von root-Rechten. Die erste Lücke wurde im Linux Kernel 2.6.16.24 (http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.16.24) und 2.6.17.4 (http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.17.4) geschlossen, die zweite im Linux Kernel 2.6.16.25 (http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.16.25) und 2.6.17.5 (http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.17.5). Für die erste Lücke haben bereits die meisten Distributoren einen aktualisierten Linux Kernel zum Update zur Verfügung gestellt.

Wer nicht auf ein Kernel Update warten will oder keinen neuen Kernel installieren will, der kann folgende Workarounds einsetzen, die das Ausnutzen der Lücken verhindern.
Das Erstellen von Coredumps deaktivieren. Überprüfen kann man dies mit ulimit:

$ ulimit -c
0
Das Dateisystem /proc mit folgenden Option neu mounten:

mount -o remount,noexec,nosuid /procKorrigiert mich bitte, falls ich mich irre. :)

-hanky-
15.07.06, 14:26
Warum bindet man eigentlich /proc nicht standardmäßig mit diesen Optionen ein? Fällt mir gerade so nebenher auf, bringt das irgendwelche Nachteile?

-hanky-

Cerox
19.07.06, 09:26
Hi,

prinzipiell brauchen Programme wie ps, top, free, mount etc. ja nur Lesezugriff auf das /proc Verzeichnis.

Allerdings kann man das Kernel-Verhalten doch verändern, indem man gewisse Dateien in /proc anpasst.

Ein Beispiel, was mir dazu konkret einfällt, sind Netzwerkeinstellungen:

Routing aktiviere ich z.B. so:
echo "1" > /proc/sys/net/ipv4/ip_forward

Hier ein Auszug aus meinem Paketfilter:


#TCP Syncookies aktivieren
echo "1" > /proc/sys/net/ipv4/tcp_syncookies

#RST bei vollem Buffer senden
echo "1" > /proc/sys/net/ipv4/tcp_abort_on_overflow

#TCP FIN,ACK Timeout
echo "30" > /proc/sys/net/ipv4/tcp_fin_timeout

#Verbindungsaufbau nach 3 SYN-Anfragen unterbrechen
echo "3" > /proc/sys/net/ipv4/tcp_syn_retries

#Keine Redirection
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects

#Kein Source-Routing
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route

#ICMP Broadcasts ignorieren
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

Kann man solche Einstellungen nicht anders vornehmen?

Ansonsten müsste man das /proc Filesystem prinzipiell zuerst rw mounten, dann die Einstellungen anpassen und anschließend ro remounten.

Kann man das im laufenden Betrieb überhaupt remounten?

edit: ^^ Hab da gerade total was verwechselt; sry löscht den Post bitte einfach.

HEMIcuda
19.07.06, 09:57
Cerox: Wer hat denn hier den Vorschlag gemacht, /proc ro zu mounten? Und wenn Du Dir mal ueber die Natur von /proc Gedanken machst, wirst Du auch feststellen, dass ro keine veritable Loesung ist.
Der Vorschlag von Tomek ist ein ganz anderer.

'cuda

Cerox
19.07.06, 10:23
Hast du mein edit nicht gelesen?

Ich war etwas in Gedanken, hatte mich noch ein bisschen über /proc informiert und dann gepostet ohne noch genau zu wissen, worum es ging^^

Zehn Minuten später ist mir dann aufgefallen, das ist totalen Müll gelabert habe und dass es ja um noexec und nosuid geht.

Nebenbei ne Frage:

Welche Dateien sind denn innerhalb von /proc mit einem SUID-Bit gesetzt (kann jetzt nicht nachgucken) und ist es schlimm, wenn dieses entfernt wird, wodurch man das /proc Filesystem ja immer so mounten könnte?

HEMIcuda
19.07.06, 10:25
Haette schwoeren koennen, dass das edit vorhin noch nicht da war... nun ja.

'cuda

Cerox
19.07.06, 10:50
Tja, nützt nichts^^


Geändert von Cerox (Heute um 09:39 Uhr).

Dein Post: Heute 10:57