Exploit für do_brk kernelbug?

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Dolly Buster
Beiträge: 7
Registriert: 06.12.2003 13:34:26

Exploit für do_brk kernelbug?

Beitrag von Dolly Buster » 06.12.2003 13:42:14

Hallo,

ich suche einen ausführbaren Exploit für den do_brk() kernelbug. Alles, was ich bisher gefunden habe, ist das hier

http://securityfocus.com/archive/1/3461 ... 03-12-05/0

aber das funktioniert nicht bei mir ausserdem versteh ich das nicht (ich glaub mein nasm von woody mag das nicht)

Hat jemand etwas ferti8g kompiliertes, dass vorhandene Systeme tetet?

DANKE!

Benutzeravatar
Operations
Beiträge: 179
Registriert: 13.10.2003 17:23:19

Beitrag von Operations » 06.12.2003 15:07:38

Hallo Dolly Buster,
... ich suche einen ausführbaren Exploit für den do_brk() kernelbug.
Die einfachere Variante wäre den Kernel 2.4.23 zu einzusetzen (auf Kernel 2.4.23 zu updaten) bzw. den gepatchten 2.4.18 aus den Security Updates, welcher schon den erforderlichen Patch enthält. Dann ist es auch nicht mehr notwendig das (fremde :wink:) System darauf zutesten.


MFG

Operations

Benutzeravatar
spiffi
Beiträge: 1128
Registriert: 09.08.2003 19:02:27

Beitrag von spiffi » 06.12.2003 15:39:39

Hm, hab den Exploit grad mal auf nem Woody durch den NASM gejagt. Assembliert einwandfrei.
Auf nem 2.4.23-xfs-grsec führt das Starten dieses Exploits jedoch zu nem segfault. Mit nem 2.4.22 hab ich's noch nicht ausprobiert, hab keine Lust meinen Router neu zu booten ;-)

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 07.12.2003 12:26:30

Auf nem 2.4.23-xfs-grsect das Starten dieses Exploits jedoch zu nem segfault.
Was für eine Überraschung, dass der Zugriff auf Kernelspeicher vom Userland aus unter GRSec zu einem SegFault führt... :-?

Frei nach dem Motto: Wenn ich mit *meinem* Fahrzeug (Marke Leopard 2) gegen einen Baum zu fahren versuche kippt irgendwie immer der Baum um...

SCNR ;-)

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Chimerer
Beiträge: 514
Registriert: 28.01.2002 16:10:44

Re: Exploit für do_brk kernelbug?

Beitrag von Chimerer » 07.12.2003 13:01:26

Dolly Buster hat geschrieben:aber das funktioniert nicht bei mir ausserdem versteh ich das nicht (ich glaub mein nasm von woody mag das nicht)
http://securityfocus.com/archive/1/3462 ... 03-12-05/2

Benutzeravatar
spiffi
Beiträge: 1128
Registriert: 09.08.2003 19:02:27

Beitrag von spiffi » 07.12.2003 15:59:11

pdreker hat geschrieben:
Auf nem 2.4.23-xfs-grsect das Starten dieses Exploits jedoch zu nem segfault.
Was für eine Überraschung, dass der Zugriff auf Kernelspeicher vom Userland aus unter GRSec zu einem SegFault führt... :-?
Nix für ungut Patrick, aber ich finde das schon verwunderlich, denn
a) hieß es das der 2.4.22 auch mit grsec exploitable sei, sprich der grsec-Patch nicht vor diesem Bug schützt.
b) wenn der grsec-Patch unerlaubte Zugriffe abfängt, dann wird das üblicherweise im syslog protokolliert. Das war hier nicht der Fall.

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 07.12.2003 17:13:26

Ja, habe ich mittlerweile auch herausgefunden, dass GRSec nicht vor dem Exploit schützt. Allerdings enthält GRSec ja auch PaX und evtl. stimmen da irgendwelche Parameter in dem Exploit nicht mehr, so dass er segfaulted. Immerhin ist das Assembler und man muss Dinge tun, die eigentlich nicht vorgesehen sind. Kann schonmal passieren, dass das nicht geht...

Die Ursache, das GRsec hier nicht greift, ist, dass man mit dem Exploit *direkten* Zugriff auf den Kernelspeicher bekommt. Man muss kein vorgegebenes Interface benutzen, wie z.B. /proc/kmem (Was von GRSec verhindert würde). Der Bug führt im Prinzip dazu, dass der Kernel denkt, dass der Kernelspeicher Teil des Prozesses ist, und damit werden *gar keine* Checks gemacht, bei denen das Problem auffallen könnte (Der Bug Fix implementiert übrigens genau diese Checks). Daher wird GRSec überhaupt nicht gefragt, und der Exploit funktioniert... :-( PaX randomisiert ja einiges im Adressraum, so dass der Exploit schlicht nicht mehr trivial funktioniert, aber grundsätzlich sollte er (mit eine paar Modifiaktionen...) gehen. Da es aber keinen Bufferoverflow gibt, kann PaX die Ausführung auch nicht verhindern... Der SegFault ist wohl eher Zufall...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Antworten