Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

linux 2.6.30 null ptr exploit

[es] :: Security :: linux 2.6.30 null ptr exploit

Strane: 1 2

[ Pregleda: 7642 | Odgovora: 27 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

EArthquake

Član broj: 20684
Poruke: 884
*.adsl.eunet.rs.



+67 Profil

icon linux 2.6.30 null ptr exploit17.07.2009. u 16:37 - pre 179 meseci
ovo bi trebalo u secuirty coding , ali tamo izgleda vise niko nista ne gleda pa ide ovde


uglavnom brace yourselves for some kernel exploit leetness

http://grsecurity.net/~spender/cheddar_bay.tgz

mnogo lepa stvar !!!

 
Odgovor na temu

Tyler Durden
Tyler Durden
Beograd

Član broj: 4312
Poruke: 3379
*.adsl.verat.net.



+1365 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 10:43 - pre 179 meseci
Napisi molim te malo vise o cemu se radi.
Beneath civilization's fragile crust, cold chaos churns...
 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 10:54 - pre 179 meseci
Da, bilo bi dobro da Aca malo pojasni o čemu se radi. Koliko sam skontao čitajući komentare koda, paradoksalno upravo uključen SELinux omogućava exploit! :-~ Postoji li neki konačan patch za ovo??
 
Odgovor na temu

combuster
Ivan Bulatovic
Kraljevo

Član broj: 151351
Poruke: 4563
93.86.111.*

Sajt: www.linuxsrbija.org


+104 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 12:07 - pre 179 meseci
Izgleda da su patch-ovali 2.6.29 ali ne i 2.6.30...

Citat:

TUN/TAP provides packet reception and transmission for user space programs.
It can be viewed as a simple Point-to-Point or Ethernet device, which
instead of receiving packets from a physical media, receives them from
user space program and instead of sending packets via physical media
writes them to the user space program.

When a program opens /dev/net/tun, driver creates and registers corresponding
net device tunX or tapX. After a program closed above devices, driver will
automatically delete tunXX or tapXX device and all routes corresponding to it.


Otvara dummy socket izgleda mi preko koga pomocu personality funkcije mapira odredjenu kolicinu memorije koja je inace zabranjena a u kojoj moze da trpa sta hoce... A ako je SELinux ukljucen onda preko pulse-a mapira memoriju...

Citat:

* STREAMS network API emulation (via the streams(4) loadable module, or by means of

device streams

in a kernel configuration file)
* Mappings between
.Fx and SVR4 ioctl(2) calls, or, where no such mappings exist, reverse-engineered implementations of the SVR4 calls.

The streams module provides limited System V Release 4 STREAMS interprocess communication ABI (application binary interface) compatibility for userland applications.

Internally, streams provides STREAMS handles by using socket creation kernel routines, and adding state-tracking information to the socket to permit manipulation by STREAMS emulation code in svr4(4). Hence, opening a stream device produces a result similar to what would be obtained by calling socket(2).

Applications should never use this interface directly: STREAMS emulation is only provided as a service to support ABI requirements in the SVR4 environment which svr4(4) needs to present to client binaries.


E kada to odradi onda verovatno koristi taj njegov mator exploit da dobije root...

Mada nije mi jasno sta mu znaci: "But which, thanks to gcc optimizations, becomes exploitable :)"
Jel to zbog kernel hack-a da gcc 4 uninline-uje funkcije koje su markirane kao inline?

Ispade da je fix izasao...

http://git.kernel.org/?p=linux...6d26d6efde842d1703ac7cfa9427b6

[Ovu poruku je menjao combuster dana 18.07.2009. u 13:19 GMT+1]
make love - !war
 
Odgovor na temu

Tyler Durden
Tyler Durden
Beograd

Član broj: 4312
Poruke: 3379
*.adsl.verat.net.



+1365 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 12:20 - pre 179 meseci
http://lwn.net/Articles/341773/

S tim što ja nisam uspio da pokrenem (nije htio da se kompajlira) ovaj exploit.
?
Beneath civilization's fragile crust, cold chaos churns...
 
Odgovor na temu

Tyler Durden
Tyler Durden
Beograd

Član broj: 4312
Poruke: 3379
*.adsl.verat.net.



+1365 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 12:24 - pre 179 meseci
Hm, postoji nekoliko preduslova da bi exploit mogao da se iskoristi.
http://www.h-online.com/securi...kernel-published--/news/113791
Beneath civilization's fragile crust, cold chaos churns...
 
Odgovor na temu

combuster
Ivan Bulatovic
Kraljevo

Član broj: 151351
Poruke: 4563
93.86.111.*

Sajt: www.linuxsrbija.org


+104 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 12:41 - pre 179 meseci
Jel ti radi sad?

./exploit.so
UNABLE TO MAP ZERO PAGE!

2.6.31-rc3, na njemu ne radi, odoh da boot-ujem u 2.6.30.1...

[Ovu poruku je menjao combuster dana 18.07.2009. u 13:52 GMT+1]
make love - !war
Prikačeni fajlovi
 
Odgovor na temu

Tyler Durden
Tyler Durden
Beograd

Član broj: 4312
Poruke: 3379
*.adsl.verat.net.



+1365 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 12:51 - pre 179 meseci
Radi, ali ne vredi zato što nemam instaliran pulseaudio na mašinama (na jednoj čak ni killall :) ).
Mada, to je beside the point. Rupa definitivno postoji.
Beneath civilization's fragile crust, cold chaos churns...
 
Odgovor na temu

combuster
Ivan Bulatovic
Kraljevo

Član broj: 151351
Poruke: 4563
93.86.111.*

Sajt: www.linuxsrbija.org


+104 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 12:53 - pre 179 meseci
Nemoj da pokreces shell skriptu i pwnkernel, pokreni kompajlirani exploit.c on bi trebalo da iskoristi bug ako cak i nema pulseaudio (preko personality funkcije)...


OMG!!!!! 2.6.30.1

./exploit.so
[+] MAPPED ZERO PAGE!
[+] Resolved tun_fops to 0xffffffffa078e100
[+] Resolved nf_unregister_hooks to 0xffffffff80495950
[+] Resolved commit_creds to 0xffffffff8025f460
[+] *0xffffffffa078e158 |= 1
[+] b00m!


Hm, ali tu stane, izgleda da what_we_do ne vraca case 3 (nemam selinux a ni apparmor) tako da expl0it tu stane, pokrenuo sam ga i sa gdb-om ista stvar... Jos se zaglupi pa ne mogu ni da ga ubijem sa kill...

cat /dev/net/tun daje cat: /dev/net/tun: File descriptor in bad state, sreca moja... :D



[Ovu poruku je menjao combuster dana 18.07.2009. u 14:41 GMT+1]
make love - !war
 
Odgovor na temu

EArthquake

Član broj: 20684
Poruke: 884
*.adsl.eunet.rs.



+67 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 16:00 - pre 179 meseci
cela prica oko eksploita je interesantna , problem je resen naravno i to vrlo lako

tako sto su zamenjena mesta dvema linijama

fora sa gcc optimizacijama je u sledecem:

na jednom mestu pokazivac je dereferenciran
a zatim se proverava da li je NULL

u normalnim okolnostima , samo dereferenciranje pokazivaca na NULL dovodi do kraha

optimizacija u gcc-u je dovela kompajler na sledeci zakljucak:

pokazivac je dereferenciran => pokazivac nije NULL
=> nepotrebna je provera da li je NULL

tako da u source kodu postoji provera, ali u samom kompajliranom kodu ne jer ju je gcc izbacio jer je zakljucio da je nepotrebna
sto je sasvim u redu

zamenivsi mesta linijama ( prvo provera da li je pokazivac NULL , pa zatim dereferenciranje ) resava problem i bug nestaje

dalje , fazon s eksploitom je sto linux kernel developeri smatraju da su NULL ptr deref bagovi unexploitable
pa ih klasifikuju kao DoS ranjivosti ,a spender se ovim exploitom trudi da ih ubedi u suprotno
u nekim slucajevima su NULL ptr deref bugovi exploitable cak i u userland aplikacijama
(mada to jeste malo redji slucaj)

dalje , covek je uspeo da arbitrarnom OR operacijom dodje do izvrsenja sopstvenog koda , to se ne vidja cesto ! :)

vise o null ptr deref bugovima u linux kernelu procitajte u nasem phearless-u
h4z4rd je pisao o tome pre godinu dana
http://www.phearless.org/i7/null_pointer_analiza.pdf

Bojan Zdrnja je napisao malo objasnjenje ovog eksploita
http://isc.sans.org/diary.html?storyid=6820


(napokon malo interesantnija diskusija na ovom forumu:))

poz
ea
 
Odgovor na temu

combuster
Ivan Bulatovic
Kraljevo

Član broj: 151351
Poruke: 4563
93.86.111.*

Sajt: www.linuxsrbija.org


+104 Profil

icon Re: linux 2.6.30 null ptr exploit18.07.2009. u 16:32 - pre 179 meseci
Pa jesi li probao da izvrsis explot, on krene da radi ali kada otvori /dev/net/tun tu zakoci tj pri izvrsavanju boom_goes_the_dynamite funkcije... Da li je moguce da su ispravili vec bug u tun drajveru ali da je ostao bug sa null pointer dereferenciranjem u 2.6.30.1 ?

edit:

Igrao sam se malo, nasao u cemu je bug, pa ko hoce da isproba nek izvoli...

Kod mene na 2.6.30.1 sad javlja:

Citat:

[+] MAPPED ZERO PAGE!
[+] Resolved tun_fops to 0xffffffffa078e100
[+] Resolved nf_unregister_hooks to 0xffffffff80495950
[+] Resolved commit_creds to 0xffffffff8025f460
[+] *0xffffffffa078e158 |= 1
[+] b00m!
[+] Disabled security of : nothing, what an insecure machine!
[+] Failed to get root :( Something's wrong. Maybe the kernel isn't vulnerable



[Ovu poruku je menjao combuster dana 18.07.2009. u 20:30 GMT+1]
make love - !war
Prikačeni fajlovi
 
Odgovor na temu

EArthquake

Član broj: 20684
Poruke: 884
*.adsl.eunet.rs.



+67 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 09:38 - pre 179 meseci
nisam ga testirao , nemam odgovarajuci kernel na ovoj masini
a bas me mrzelo da postavljam vm samo zbog toga ...

moguce je cak da taj bug nije ni otisao u release kernel
pa je tvoj vec patchovan ...
kao sto rekoh , poenta eksploita je da pokaze kernel dev-ovima da su null pointer dereference bugovi eksploitabilni ...

sam eksploit nije narocito koristan , bilo je mnogo mnogo korisnijih u zadnje vreme :)

ovaj je prosto state of the art :) pa sam ga zato i pomenuo ovde

btw , proverite velicinu u bajtovima onog chedat tgz-a , i velicinu u bajtovima neizmenjenog exploit.c
spender je totalni idiot !!! :)))


[Ovu poruku je menjao EArthquake dana 19.07.2009. u 10:57 GMT+1]
 
Odgovor na temu

combuster
Ivan Bulatovic
Kraljevo

Član broj: 151351
Poruke: 4563
93.86.6.*

Sajt: www.linuxsrbija.org


+104 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 10:02 - pre 179 meseci
On je uspeo da mapira zero page na 2.6.30.1 a da je patch-ovan kernel to nikako nije mogao da uradi, problem je samo sto nije uspeo da dobije root sa ovim:

Code:

if (commit_creds && init_cred) {
        /* hackish usage increment */
        *(volatile int *)(init_cred) += 1;
        commit_creds(init_cred);
        got_root = 1;


A na 2.6.31-rc4 nije ni uspeo da mapira zero page zbog onog fix-a koji su commit-ovali pre tek 6 dana...

Inace sama ideja jeste fantasticna i drago mi je da je lik uradio ovako nesto i sto je to objavio, ne bih voleo da dizem server na masini na kojoj je moguce ovako dobiti root privilegije. Mada je verovatnoca mala da bi uspeo da ovako nesto izvrsi na ciljnoj masini...

edit: lol, 12345 eleet :) kakav geek covece :)
make love - !war
 
Odgovor na temu

EArthquake

Član broj: 20684
Poruke: 884
*.adsl.eunet.rs.



+67 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 14:07 - pre 179 meseci
NULL inace ne mozes da mapiras tako lako iz userland-a
zato je i koristio pulseaudio , zato sto je suid bin , a dozvoljava ucitavanje dodatnih biblioteka ....
 
Odgovor na temu

Srđan Pavlović
Specijalna Edukacija i Rehabilitacija MNRO
Vojvodina, Bačka Palanka

Član broj: 139340
Poruke: 5571
93.86.225.*

Sajt: www.oligofrenolog.com


+382 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 16:41 - pre 179 meseci
Ah... sa novim kompajlerom mogu se javiti ovakve stvari,
ali ono, svaka cast ovom liku, sta on iskopa...

..a i komentari u kodu su mu zakon, bas me lepo nasmejao :)))
 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 16:44 - pre 179 meseci
Da, kako reče Aleksandar, to je više "proof of concept"...
BTW, stavih kernel 2.6.30, iskompajlira se ovo sve, a pri pokretanju exploit kaže "UNABLE TO OPEN THE DEVICE"
 
Odgovor na temu

combuster
Ivan Bulatovic
Kraljevo

Član broj: 151351
Poruke: 4563
93.86.6.*

Sajt: www.linuxsrbija.org


+104 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 16:59 - pre 179 meseci
Jel ti custom kernel ili je dosao uz distribuciju? Ako je custom mozda nisi setovao kao modul "Universal TUN/TAP device driver support"

Uglavnom javlja ti da ne moze da otvori /dev/net/tun... Super cuti, bitno je da ne radi, da radi zabrinuo bih se :)

Meni nece da mapira zero page preko /dev/net/tun, makar ne sa offsetom 0...
make love - !war
 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 17:02 - pre 179 meseci
Hehe, ubacio sam tun modul sa modprobe i sad works like a charm!
Prikačeni fajlovi
 
Odgovor na temu

combuster
Ivan Bulatovic
Kraljevo

Član broj: 151351
Poruke: 4563
93.86.6.*

Sajt: www.linuxsrbija.org


+104 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 17:15 - pre 179 meseci
Pa jel ti dobijas root privilegije po izvrsenju?
make love - !war
 
Odgovor na temu

maksvel

Član broj: 107376
Poruke: 2417

Jabber: maksvel
Sajt: maksvel.in.rs


+161 Profil

icon Re: linux 2.6.30 null ptr exploit19.07.2009. u 17:48 - pre 179 meseci
Naravno.

WAIIIIIIIIIITTTT....do you hear it?
You hear it! You do too! It's not just me! It's here, it's here I say!!
I must face this....
What's this? Something stirs within the beast's belly! Something unexpected....
# whoami
root
#

Svakako, pokrenuo sam exploit kao regularan korisnik...
 
Odgovor na temu

[es] :: Security :: linux 2.6.30 null ptr exploit

Strane: 1 2

[ Pregleda: 7642 | Odgovora: 27 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.