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

Par pitanja o buffer overflowima

[es] :: Security :: Par pitanja o buffer overflowima

[ Pregleda: 1913 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

incus
student

Član broj: 230875
Poruke: 3
..142.113-dsl.net.metronet.hr.



Profil

icon Par pitanja o buffer overflowima26.08.2009. u 15:54 - pre 178 meseci
Ok, neki ljudi ce reci da sam nestrpljiv, drugi da zasto postam istu temu dva puta u razlicite (ali srodne) podforume, ali dolje slijedi copy-paste moje poruke sa Security coding podforuma, jer mi se cini da je ovaj podforum posjeceniji (iz kojeg razloga ne znam, ali to mi se cini). Ako netko ima odgovor na postavljeno pitanje/pitanja, neka odgovori na temu u SC podforumu, a ova tema nek se onda obrise za kakvih mjesec-dva dana (mislim, tko sam ja da govorim moderatorima sto i kako, ali ako je moguce da se to tako nekako odigra, bilo bi super).

Pozdrav svima, da se kratko predstavim, ja sam incus i drago mi je sto sam tu.

A sad, par pitanja vezanih za ovu "popularnu" temu.

Naime, citam trenutno knjigu The art of exploitation i cesto se nadjem frustriran pojedinim problemima, ne zato sto ih ne razumijem nego zato sto na kernelu 2.6 vise ne rade. Takodjer, vecina tekstova koje uspijem pronaci su jako stari i osim bazicne ideje nemaju vise neku konkretnu primjenu (tj od kernela 2.6 bar vise nemaju). Npr. primjeri iz knjige TAoE (2. izdanje) rade na liveCD-u koji dodje s knjigom, no svi ti primjeri u knjizi rade pod pretpostavkom da stack pocinje od jedne fiksne adrese, sto ja primjecujem vise nije slucaj. Druga stvar je da se prolog main funkcije malo promijenio (uz pretpostavku da je iskljucen stack protector u gccu) pa tako umjesto da imam :

push %ebp
mov %esp, %ebp
. . .

ja imam:

lea 0x4(%esp), %ecx
and 0xfffffff0, %esp
pushl -0x4(%ecx)
push %ebp
mov %esp, %ebp
push %ecx

zahvaljujuci cemu stack vise ne izgleda kao

[varijable][SFP][EIP]

nego

[varijable][PSP][SFP][EIP][slucajno smece zbog poravnanja stack pointera]["pravi" EIP]

zbog cega ja vise ne mogu prepisati sve sa return adresom, koju usput ne mogu "pogoditi" jer nisam vidoviti milan, jer bi se na taj nacin prepisao i PSP (ja sam ga nazvao previous stack pointer, ne znam kak se zove tocno) koji bi me bacio tko zna gdje (ocita mjesta su ili code segment ukoliko je return adresa prema nekoj instrukciji (sto bas i nije nekaj korisno) ili negdje na stack gdje bi bio shellcode) i probao popati EIP koji bi zapravo bila neka instrukcija ili shellcode.
naravno, environment varijable takodjer ne rade kad stack ne pocinje od neke fiksne adrese. mislim, to je moje opazanje, mozda sam u krivu?
"naprednije" tehnike poput ret-into-libc i slicno jos nisam dotakao, ali planiram uskoro.

a tek kad bi jos ukljucio i stack-protector ili nesto tomu slicno, pa jos na to dodje i non-executable stack ....

recite ljudi, ima li tko kakav prijedlog kako nastaviti dalje? ne mogu se stalno igrati na zastarjelom kernelu i u nadi da ce netko napisati SUID program sa strcpy funkcijom. prije 10ak godina je sve bilo ljepse, ali taj luksuz vise ne postoji... sto sad?

Hvala!
 
Odgovor na temu

EArthquake

Član broj: 20684
Poruke: 884
*.ns.ac.yu.



+67 Profil

icon Re: Par pitanja o buffer overflowima27.08.2009. u 15:09 - pre 178 meseci
gomila stvari se promenilo , gcc optimizacije , pa imas drugaciji function prolog
ASLR pa ti se non stop menja base adresa steka i biblioteka i sl ...

za sve to postoji resenje , doduse ne uvek tako prosto , i tako genericno kao sto je bilo pre 10 godina , ali idalej se moze ...

imas dosta tekstova , nisam sad za svojim racunarom i zurim , pa ne mogu da ti napravim listu , ali sam siguran da sam vec u nekoj slicnoj temi ili ovde ili
na security coding vec postavio linkove ...

baci pogled na phearless , u par tekstova ima linkova kad drugim , pogledaj phrack ,
i obavezno pogledaj stealthov no nx tekst on doduse ne daje odgovor na tvoja ppitanja , ali ce ti predociti kako funkcionisu baprednije tehnike ....
http://www.suse.de/~krahmer/no-nx.pdf

pogledaj i po milw0rmu za tekstove sa slicnom tematikom , zaobilazzenje ASLRa i sl fore ....

inace, danas je stanje takvo da ni za jednu vrstu overflowa nemas genericnu metodu za eksploitovanje , vec se prilagodjavas aplikaciji i sistemu koji pokusavas da eksploitujes ...

pozdrav,
ea

 
Odgovor na temu

incus
student

Član broj: 230875
Poruke: 3
..142.151-dsl.net.metronet.hr.



Profil

icon Re: Par pitanja o buffer overflowima27.08.2009. u 22:54 - pre 178 meseci
Super, hvala ti puno na smjernicama. Bacam se uskoro na citanje tekstova, malo me smeta cinjenica da novi glibc+gcc rade takve spacke, pa mi se cini da cu mozda instalirati i neki stariji gcc, cisto da krenem onako, od nule bas. Ali bas su fino usrali :)

Hvala jos jednom, cim nadjem jos pitanja, a bit ce ih, osvanut ce ovdje :)
 
Odgovor na temu

jorganwd
Muris Kurgaš
/dev/null

Član broj: 65537
Poruke: 779

Sajt: www.remote-exploit.org


+34 Profil

icon Re: Par pitanja o buffer overflowima28.08.2009. u 07:24 - pre 178 meseci
Citat:
incus: Ali bas su fino usrali :)


Nisu bas. Bez obzira sto je lakse bilo prije 10 godina i naci i napisati exploit za odredjeni vuln, danas opet imamo mnogo veci procenat ranjivosti a s tim i exploita. Naravno, taktika pen testinga se promijenila od tada (citaj: danas je sve to kompleksnije) a sve to mijenja kompletnu security scenu i prilagodjava se jedno drugom. Trka nece stati a hakeri su uvijek ispred :)
 
Odgovor na temu

EArthquake

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



+67 Profil

icon Re: Par pitanja o buffer overflowima29.08.2009. u 15:59 - pre 178 meseci
kako to mislis sve vise ranjivosti ?

naravno , ima mnogo vise softvera samim tim i vise ranjivost , ali sve to u nekim levim stvarima uglavnom

glavne stvari koje "pokrecu" internet (apache, ssh , iis proftpd , sendmail i sl ) su gotovo ociscene od bagova

doduse , paznja se okrenula ka klijentskim aplikacijama

ali opet, nebih se slozio da ima vise ranjivosti , svest o dobrim i sigurnom programiranju se prosirila
i danas retko koji programer ne zna da ne treba da koristi strcpy recimo i sl
(to bar sto se c/c++-a tice... web rpogramiranje je sasvim druga prica :)) )

po meni ono sto danas u mnogome olaksava stvari jesu napredne alatke koje su razvijene
napredni fuzzeri , traceri, debuggeri i sl ...
 
Odgovor na temu

incus
student

Član broj: 230875
Poruke: 3
...141.38-dsl.net.metronet.hr.



Profil

icon Re: Par pitanja o buffer overflowima01.09.2009. u 01:27 - pre 178 meseci
Primjer s mog fakulteta - na predmetu "Programiranje i programsko inzenjerstvo" nas uce kao osnove programiranja, konkretno u C-u, ali nitko ne spominje da treba raditi bound checking nego samo citaj sa scanf/gets/read/fscanf .., pisi sa printf/puts/write/fprintf, kopiraj s strcpy i sl. O buffer overflowima ima rijeci tek na predmetu "Mrezno programiranje" koji je (meni) prekiduci semestar. Covjek bi pomislio da ce se uciti remote exploitanje ili tako nesto ako se vec dotice tema sigurnosti a tamo se radi neke crckarije koje se na 10 slajdova doticu texta Aleph1-a. Cudi me da im nije palo na pamet napraviti predmet posvecen sigurnosti. Moje misljenje je da s fakulteta na nasim prostorima mahom izlaze programeri koji ne razlikuju do's and don't's svojeg zanimanja, a to je zalosno. S druge strane, nitko nema volje im to pokazati. A s trece strane, i da ima, pitanje je tko bi od studenata bio zainteresiran, tako i tako svi zele proci a ne steci znanje. Sa stranim sveucilistima to nije slucaj, jer postoji praksa sigurnog programiranja koja je vjestina kao i samo programiranje.

Hvala vam jos jednom na odgovorima!
 
Odgovor na temu

[es] :: Security :: Par pitanja o buffer overflowima

[ Pregleda: 1913 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

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