In the beginning the Internet was a bunch of smart users with dumb terminals. Now...
More than meets the eye
There is no I in TEAM... but there is ME
system specs
Verwijderd
Een quote van dat artikel:
2.2.25 is niet vatbaar en voor 2.4.20 is er op die page een patch te verkrijgen.The Linux 2.2 and Linux 2.4 kernels have a flaw in ptrace. This hole allows
local users to obtain full privileges. Remote exploitation of this hole is
not possible. Linux 2.5 is not believed to be vulnerable.
Linux 2.2.25 has been released to correct Linux 2.2. It contains no other
changes. The bug fixes that would have been in 2.2.5pre1 will now appear in
2.2.26pre1. The patch will apply directly to most older 2.2 releases.
A patch for Linux 2.4.20/Linux 2.4.21pre is attached. The patch also
subtly changes the PR_SET_DUMPABLE prctl. We believe this is neccessary and
that it will not affect any software. The functionality change is specific
to unusual debugging situations.
We would like to thank Andrzej Szombierski who found the problem, and
wrote an initial patch. Seth Arnold cleaned up the 2.2 change. Arjan van
de Ven and Ben LaHaise identified additional problems with the original
fix.
Alan
[ Voor 4% gewijzigd door Oceria op 18-03-2003 17:53 . Reden: te laat :) ]
Oceria doesn't know where this repeatbutton -repeatbutton is...
[ Voor 5% gewijzigd door MikeN op 18-03-2003 18:11 . Reden: :+ ]
Ruik ik daar sarcasme? Die mensen developen in hun vrije tijd hoor... Wees blij trouwens, het kan erger.MikeN schreef op 18 March 2003 @ 17:56:
Wederom een lek waarbij de afhandeling ge-wel-dig gaat. Nog geen officiele patch of kernelupdate voor 2.4. Alleen redhat heeft nieuwe rpm's klaar. Het gaat weer lekker.
Mwah. Die mensen developen in hun vrije tijd iets waarop heel veel internet servers draaien etc. De afhandeling zou IMHO dan wel wat beter kunnen. Bij andere sec. leaks is het vaak zo dat alle distributies etc. de kans krijgen om nieuwe pakketjes te maken voordat het lek openbaar wordt gemaakt. Dat lijkt hier niet echt het geval geweest te zijn.JJJ schreef op 18 March 2003 @ 18:01:
[...]
Ruik ik daar sarcasme? Die mensen developen in hun vrije tijd hoor... Wees blij trouwens, het kan erger.
Verwijderd
MikeN schreef op 18 maart 2003 @ 17:56:
Wederom een lek waarbij de afhandeling ge-wel-dig gaat. Nog geen officiele patch of kernelupdate voor 2.4. Alleen redhat heeft nieuwe rpm's klaar. Het gaat weer lekker.
Wehehehe, moet je eens tegen de heren van Microsoft bijvoorbeeld zeggen. Toevallig kwam ik van de week nog bij een vriend een bug tegen die bekend was. Wordt er doodleuk voor enorm lange tijd gezegd dat het verstandig is caching van hdd's maar volledig uit te zetten of een scsi-systeem te komen, voordat men met een update komt.
Nu heeft het weinig nut, om zo'n vergelijking te gaan trekken, maar wat ik wil zeggen is dat de *nix community normaliter erg snel met bugfixes komt
Eerst beter je huiswerk doen : Alan Cox heeft allang een breed een patch gepost.MikeN schreef op 18 March 2003 @ 17:56:
Wederom een lek waarbij de afhandeling ge-wel-dig gaat. Nog geen officiele patch of kernelupdate voor 2.4. Alleen redhat heeft nieuwe rpm's klaar. Het gaat weer lekker.
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0127
Okokigmar schreef op 18 March 2003 @ 18:07:
[...]
Eerst beter je huiswerk doen : Alan Cox heeft allang een breed een patch gepost.
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0127
Mja, en als je de vergelijking met MS gaat trekken, dan torent de open source community er natuurlijk ver bovenuit.
Maar toch vind ik het niet leuk dat ik nog geen DSA binnen heb ;p
Alsof daar altijd tijd voor is. Als de bug algemeeen bekend wordt, bijvoorbeeld door de ontdekker en niet door de maintainers, dan moet je zo snel mogelijk met een patch komen, dan ga je niet wachten met de advisory tot alle vendors nieuwe pakjes hebben..MikeN schreef op 18 March 2003 @ 17:56:
Wederom een lek waarbij de afhandeling ge-wel-dig gaat. Nog geen officiele patch of kernelupdate voor 2.4. Alleen redhat heeft nieuwe rpm's klaar. Het gaat weer lekker.
Het hangt natuurlijk af van het disclosure-path van de ontdekker hoe ordelijk het gaat.
Uiteraard, en ik zeg ook helemaal niet dat het de maintainers te verwijten is. Maar als het aan de ontdekker ligt blijft het evengoed jammer dat het zo gaatblaataaps schreef op 18 March 2003 @ 18:11:
[...]
Alsof daar altijd tijd voor is. Als de bug algemeeen bekend wordt, bijvoorbeeld door de ontdekker en niet door de maintainers, dan moet je zo snel mogelijk met een patch komen, dan ga je niet wachten met de advisory tot alle vendors nieuwe pakjes hebben..
Het hangt natuurlijk af van het disclosure-path van de ontdekker hoe ordelijk het gaat.
Verwijderd
Dat is apart. Ik heb niets gehad en op security.debian.org kan ik ook geen DSA vinden.Verwijderd schreef op 18 March 2003 @ 19:17:
Ik kreeg anders vanmorgen via de Debian Security mailing list netjes een bericht binnen over deze exploit.
Verwijderd
De goede afhandeling zou zijn dat de ontdekker van de bug even nadenkt en bedenkt dat het een redelijk high risk bugje is, en dus de kernel maintainers en de verschillende linux distro-makers op de hoogte stelt, die de tijd geeft om allemaal een nieuw pakketje te maken en dat die pakketjes op hetzelfde tijdstip naar buiten worden gebracht.Verwijderd schreef op 18 maart 2003 @ 20:48:
Vanmiddag kreeg ik van RedHat een soortgelijk mailtje, inclusief nieuwe kernel RPMs. Ik vind de afhandeling vrij goed. Nog diezelfde dag nieuwe RPMs voor mijn distro. Kan niet beter, toch?
Beelzebubu, stoor jepje eens op een van de wel bekende kanalen
[ Voor 31% gewijzigd door jep op 18-03-2003 23:14 ]
Dus 2.4.20 is secure?The kernel module loader in Linux kernel 2.2.x before 2.2.25, and 2.4.x before 2.4.20
Of toch niet?The Linux 2.2 and Linux 2.4 kernels have a flaw in ptrace.
Wat ruist er door het struikgewas
Verwijderd
microsoft is naar mijn id het tegenovergestelde... maar ja genoeg over billie boy met zijn pruts os.
linux voor mij all the way patches zijn echt snel en goed niet dat er weer 65.000 andere bugs van komen
Verwijderd
Nee. De enige verantwoordelijke is de linux kernel dev groep. Die heeft direct een patch uitgebracht. Daarmee is de kous officieel gezien direct af. Net zoals slechts de Apache Foundation verantwoordelijk is voor apache, en niet de duizenden distro's die apache packagen (die wil je allemaal sync'en? Succes!). Datzelfde geldt dus ook voor de linux kernel devvers.MikeN schreef op 18 March 2003 @ 20:52:
De goede afhandeling zou zijn dat de ontdekker van de bug even nadenkt en bedenkt dat het een redelijk high risk bugje is, en dus de kernel maintainers en de verschillende linux distro-makers op de hoogte stelt, die de tijd geeft om allemaal een nieuw pakketje te maken en dat die pakketjes op hetzelfde tijdstip naar buiten worden gebracht.
De linux kernel dev groep post een anouncement van de fix, en direct daarna gooien distro makers een nieuwe versie op hun download site. Klaar toch? Dat sync'en tussen allemaal third party groepen is een onmogelijke opgave die je niet kunt vragen.
patrick volkerding op slashdot, lees al z'n posts (hij corrigeert zichzelf nog), en zorg dat je weet of je kmod nodig hebt.
Whenever you find that you are on the side of the majority, it is time to reform.
Hoef ik die redhat dozen op school ook niet te patchen: die draaien een RPM versie van de debian pakketten die ik gebouwd had uit kernel-source-2.4.20
* _JGC_ wacht tot er meer bekend is over de exploit
Alle kernels hebben hier last van (behalve kernels die al gepatched zijn en 2.5)._JGC_ schreef op 19 March 2003 @ 09:55:
Blijkbaar hebben debian kernels hier geen last van, ik kon op kernel-source-2.4.20 die patch iig niet apply'en, een heleboel reverse patches.
Hoef ik die redhat dozen op school ook niet te patchen: die draaien een RPM versie van de debian pakketten die ik gebouwd had uit kernel-source-2.4.20
* _JGC_ wacht tot er meer bekend is over de exploit
Voor de duidelijkheid, dit is een local root exploit en als je geen module support in je kernel hebt ben je niet vulnerable.
Exploit is hier te vinden en de patch voor 2.4.20 hier. Voor 2.2 users is 2.2.25 released.
Gewoon de kernel van ftp.kernel.org
Hij loopt onder andere vast omdat hij een bestand niet kan vinden in de map linux/arch/um/
die hele map um heb ik niet... Zou die kernel gepatched zijn, of is het een universele kernel die iets meer architecturen ondersteund dan de standaard kernel?
***** Excellent cron job. Will run again.
http://www.hardrock.org/k...linux-2.4.20-ptrace.patch
Deze patched goed tegen de vanilla 2.4.20 kernel
***** Excellent cron job. Will run again.
Verwijderd
Toch handig tegen kiddies als je een obscure kernel versie draait
Schijnt dat het ook te exploiten is via hotplug support enabled.
Heel irritant is dat als je dat uitvoert op je server en je opeens ziet dat je gewoon root kunt worden als gewone user
Wat ruist er door het struikgewas
De uptime van de server die ik admin is 74 dagen, heb er nog kernel 2.4.19 draaien, maar ik treur er echt niet om dat ik die uptime nu kwijt ben
***** Excellent cron job. Will run again.
1
2
3
| bserver:~/misc$ ./ptrace-exploit [-] Fatal error: Unknown error 125 Killed |
Kernel 2.2.23 met 103 dagen uptime.
If it ain't broken it doesn't have enough features
Apache: vreemd ... draai je patches op 2.2.23 zoals grsecurity of heb je je filesystem op nosuid gemount ofzo? Dat programma zet namelijk ook meteen een suid bit op zichzelf geloof ik.
Wat ruist er door het struikgewas
Mijn excuses, ik had over dat linkje van 4 letters heen gekeken.Cybje schreef op 19 March 2003 @ 22:38:
MikeN: Als je even de topic door had gelezen had je gezien dat GrimLord had neergeplant dat-ie hier staat: http://isec.pl/cliph/isec-ptrace-kmod-exploit.c
Ik heb hem uitgetest, maar zelfde fout als Apache hier. 2.4.20 met grsec.
Wat ruist er door het struikgewas
bartcopp@debian:~$ ./isec
[-] Unable to attach: Operation not permitted
Killed
bartcopp@debian:~$ ./isec
[+] Attached to 3987
[+] Waiting for signal
[+] Signal caught
[+] Shellcode placed at 0x4000d67d
[+] Now wait for suid shell...
sh-2.05b# whoami
root
In ieder geval is een exploited bak snel te herkennen (als je goed kijkt iig
bartcopp 3985 0.0 0.0 1180 248 pts/2 S 00:33 0:00 ./isec
bartcopp 3986 0.0 0.0 0 0 pts/2 Z 00:33 0:00 [isec] <defunct>
root 3988 0.0 0.5 2320 1348 pts/2 S 00:33 0:00 /bin/sh
Copyright Auteur heeft Tweakers.net BV geen exclusieve licentie op bovenstaande post verleend. Voorafgaande en uitdrukkelijke schriftelijke toestemming van Tweakers.net BV is dus niet noodzakelijk voor het vermenigvuldigen van bovenstaande post
Verwijderd
$ ./a.out
[+] Attached to 9793
[+] Waiting for signal
[+] Signal caught
[+] Shellcode placed at 0x4000da2d
[-] Unable to write shellcode: Input/output error
Killed
$ ./a.out
[-] Unable to attach: Operation not permitted
Killed
Verwijderd
echter de ptrace die ik al had gecompiled werkt wel nog steeds gewoon en iemand anders hoeft alleen op een vuln bak die code te compilen te uploaden via ftp en uitvoeren maar... het enige verschil zit hem in dat de 2.2 code niet werkt met de 2.4 code meer mensen hier ervaring mee?
Ik heb hem gisteren bij mij uitgevoerd, en ik was root. Nu heb ik mijn kernel geupgrade en een reboot gedaan, maar als ik dat script start ben ik nog steeds gelijk root.
admin@chaos:~$ ./isec-ptrace-kmod-exploit
root@chaos:~# whoami
root
root@chaos:~#
Hij zet je shell SUID root ofzo, maar heb nooit echt zo uitgezocht hoe dat werkt en hoe je dat ongedaan maakt
Edit: LOL timing
[ Voor 3% gewijzigd door AlBundy op 20-03-2003 08:26 ]
***** Excellent cron job. Will run again.
Het programmaatje wat je hebt gecompiled heeft user en group root.
1
| -rwsr-sr-x 1 root root 9041 Mar 19 18:25 isec-ptrace-kmod-exploit* |
Als je hem gewoon even chown'ed naar de juiste gebruiker en de suid en sgid bits uitzet is het opgelost.
1
| -rwxr-xr-x 1 admin staff 9041 Mar 19 18:25 isec-ptrace-kmod-exploit* |
admin@chaos:~$ ./isec-ptrace-kmod-exploit
[-] Unable to attach: Operation not permitted
Killed
admin@chaos:~$
***** Excellent cron job. Will run again.
VangenopBetaalwater.nl Het platform om ervaringen over betaalwater in Frankrijk te delen met andere karpervissers zodat iedereen kan vangen op betaalwater!
dat zal ook wel kloppen, want die exploit werkt niet op mijn machines (waar ik altijd kmod uit heb staan)
Heeft sinds kort zijn wachtwoord weer terug gevonden!
Als je Grsecurity gebruikte met de juiste opties ben je niet vulnerable, althans voor deze exploit. Grsecurity heeft een nieuwe versie uitgebracht omdat 't mogelijk is (theoretisch) om met een andere exploit wel vulnerable te zijn.MikeN schreef op 20 maart 2003 @ 14:24:
Een met Grsecurity gepatchte kernel zou ook gewoon vulnerable moeten zijn. In ieder geval hebben de mensen van Grsecurity de patch gemerged en een nieuwe versie uitgebracht.
Ah, bedankt voor de infoGrimLord schreef op 20 March 2003 @ 14:39:
[...]
Als je Grsecurity gebruikte met de juiste opties ben je niet vulnerable, althans voor deze exploit. Grsecurity heeft een nieuwe versie uitgebracht omdat 't mogelijk is (theoretisch) om met een andere exploit wel vulnerable te zijn.
Ach, nieuwe kernel kan ook geen kwaad eh
Verwijderd
1
2
3
4
| [-] Fatal error: Operation canceled Killed monnik@exci monnik $ uname -sr Linux 2.4.19-gentoo-r10 |
maarja, was toch al van plan te updaten naar 2.4.20
[ Voor 25% gewijzigd door Verwijderd op 20-03-2003 14:55 ]
Verwijderd
lost het (tot er een nieuwe kernel is) op, let wel op dat je dat opnieuw doet na het rebooten, of gewoon je machine up houden...
Beetje vage url's hardrock.org? zou maar oppassen om daar code weg te halen en te patchen zonder hem zelf te reviewen...
Hij kwam uit de mailinglist van kernel.org, redelijk betrouwbaar lijkt meVerwijderd schreef op 20 March 2003 @ 16:54:
Zoals al eerder gezegd dus: echo "jammerjoh" >/proc/sys/kernel/modprobe
lost het (tot er een nieuwe kernel is) op, let wel op dat je dat opnieuw doet na het rebooten, of gewoon je machine up houden...
Beetje vage url's hardrock.org? zou maar oppassen om daar code weg te halen en te patchen zonder hem zelf te reviewen...
http://www.spinics.net/lists/kernel/msg163309.html
Zoals ook te lezen is in die thread is de patch niet helemaal goed, omdat het bepaalde functionaliteit weghaalt die sommige programma's, zoals websaint, nodig hebben. Zie ook vanaf hier en verder.
[ Voor 29% gewijzigd door AlBundy op 20-03-2003 17:17 ]
***** Excellent cron job. Will run again.
Een vanilla 2.4.20 is ook vulnerable!
Overigens kun je (als je de patch niet vertrouwt, 2.4.21 wil afwachten, of whatever) ook op andere manieren deze exploit onbruikbaar maken. Ik quote van bugtraq:
Dit zijn natuurlijk geen duurzame oplossingen, maar wel mooie tijdelijke lapmiddelen. /proc/sys/kernel/modprobe aanpassen werkt hier heel goed.It's a local root vulnerability. It's exploitable only if:
1. the kernel is built with modules and kernel module loader enabled and
2. /proc/sys/kernel/modprobe contains the path to some valid executable and
3. ptrace() calls are not blocked
These conditions are met on most standard linux distros.
Ok now how it works:
When a process requests a feature which is in a module, the kernel spawns a child process, sets its euid and egid to 0 and calls execve("/sbin/modprobe") The problem is that before the euid change the child process can be attached to with ptrace(). Game over, the user can insert any code into a process which will be run with the superuser privileges.
Solutions/workarounds:
- patch the kernel
or
- disable kmod/modules
or
- install a ptrace-blocking module
or
- set /proc/sys/kernel/modprobe to /any/bogus/file
A word about 2.5. kernels - these are not vulnerable because the kernel thread spawning code has been rewritten so that the modprobe process is spawned from keventd, it never runs with non-root uid, so it can't be ptraced by any non-root user.
Sample exploit here (ix86-only):
http://august.v-lo.krakow.pl/~anszom/km3.c
Overigens is de exploit uit de quote een andere dan ik hierboven zag. Deze exploit werkt hier (2.4.19 en 2.4.20 bakken) prima (voor patchen of workarounds).
Oplossing: alle modules handmatig laden. Enige probleem met lm_sensors is dat je misschien niet weet welke modules er allemaal nodig zijn....
I don't kill flies, but I like to mess with their minds. I hold them above globes. They freak out and yell "Whooa, I'm *way* too high." -- Bruce Baum
Schrok gisteren wel ff toen er ineens een defunct process en een stel webmin processen op een van die server draaide. Dacht in eerste instantie dat dat kreng gehacked was. Bleek het een andere sysadmin te zijn die webmin had geinstalleerd (maar er niets mee kon omdat iptables helemaal dicht zit
If it ain't broken it doesn't have enough features
Jullie onderhouden je server wel heel gestructureerd geloof ik heBleek het een andere sysadmin te zijn die webmin had geinstalleerd (maar er niets mee kon omdat iptables helemaal dicht zit ).
Niks aan de hand met de huidige exploit, als iemand een variatie erop maakt ben jij nog steeds vulnerable. Upgraden naar de nieuwste Grsecurity dusJJJ schreef op 21 maart 2003 @ 19:23:
Ik heb hier 2.4.20 met grsec op High security settings en hier wordt het script gewoon gekilled. Niets aan de hand dus lijkt mij. (Ja, ik heb hem meerdere keren gerunned.)