[ DownBload @ 25.10.2004. 14:17 ] @
Nisam siguran koliko ima smisla pitati ovakve stvari na ovom forumu, no svejedno....
Radi se o remote stack overflowu. Mogu prepisati EBP i EIP, ali samo sa '!' i '@'
znakovima - znaci mogu uzrokovati buffer overflow. Exploitanje programa na nacin
da se EIP prepise nekom "korisnom" adresom nije moguce iz gore navedenog razloga.
Na pamet mi je palo da pokusam sa off-by-one i off-by-two exploitanjem tako da prepisem LSB od EBP-a
sa '!' i '@' znakovima, te pokusam pop-ati EIP sa memorijske adrese ciji sadrzaj mogu kontrolirati.
Problem je bas u tome da adresu sa koje se nakon off-by-one overflowa pop-a EIP ne mogu kontrolirati i
EIP ispadne neka glupost tipa 0x5c ili tak nesto.
Pokusao sam i sa djelomicnim prepisivanjem EIP-a, no moj GLIBC (stari 2.2.9) nema nista iskoristivo na adresama do kojih mogu doci '!' i '@' overflowom.
Sve me je strah pitati, dal' ima tko kakvu ideju? :-)

Radi se o jednom popularnom programu, a stvar je jos zasad privatna, pa cu ime izostaviti.


Pozdrav...
[ Krajisnik @ 25.10.2004. 15:02 ] @
Mozda da pitas na nekim drugim kvalifikovanijim forumima:
http://www.rootkit.com/boardm.php
ili da probas da ispunis vouch ovde: http://forum.c0replay.net i nadas se da te prime..
[ littleboy @ 25.10.2004. 15:22 ] @
Citat:
DownBload: Nisam siguran koliko ima smisla pitati ovakve stvari na ovom forumu, no svejedno....


Offtopic:
Trebo si pitati u defaced, tamo ti je masa hakera... ne bi stigao da procitas kolko bi kvalitetnih odgovora dobio.
[ DownBload @ 25.10.2004. 21:17 ] @
Citat:
Krajisnik: Mozda da pitas na nekim drugim kvalifikovanijim forumima:
http://www.rootkit.com/boardm.php
ili da probas da ispunis vouch ovde: http://forum.c0replay.net i nadas se da te prime..


Na coreplay sam dao request i rekao mi je netko da glasanje ide dobro, ali kasnije vise nisam
nista cuo od njih.

Citat:
littleboy: Offtopic:
Trebo si pitati u defaced, tamo ti je masa hakera... ne bi stigao da procitas kolko bi kvalitetnih odgovora dobio.


xexexexe .... znam ;-)
[ Krajisnik @ 25.10.2004. 23:08 ] @
Ako hoces, napisi ovde sta trebas na engleskom pa cu ja da napravim topic na c0replayu...
[ Vojislav Milunovic @ 28.11.2004. 13:46 ] @
Pa prepisi posledni byte EBP-a sacuvanog na stacku sa ! ili @ pa gledaj gde program skace posto se vrati iz tvoje prvobitne funkcije...
Na tu adresu gde 2gi ret pokazuje probaj da stavis kod svog shellcode-a...

Nesto tipa... [nooooooooooooooooooop][shellcode][&pocetak_stringa][@]
mislim malo je zajebano ovo iskoristiti ali sanse postoje... kad god postoji buffer overflow imas i mogucnost da zeznes kod... kako... e to ce ti trebati mnogo vremena... uzgred ako je rec o remote exploitu sanse da ovako nesto uspes su ti ravne 0... ali ko zna mozda te ipak ukenja pa ti uspe na nekoj host machine...
Uzgled pogledaj da li f-ja koja pravi buffer overflow stavlja NULL na kraj recimo
[buffer][ebp][eip] ->>>>>>>>[buffer @@@][@@@@][@eip] ili ako unese manje
[buffer][ebp][eip] ->>>>>>>>[@@@@@@@@@]@NULLffbf][eip] ako to radi ta fj-a onda bas nemas srece =) doduse program ce pasti svakako samo je pitanje kad...

doduse exploit ne bi bi bilo tesko napisati na local machini i za taj server progy ako trci na tvom kompu... uz pomoc dbg-a i dosta pakli cigara trebalo bi da dobijes valjano resenje...

Evo ti par konstruktivnih saveta --->
1. probaj da overwritujes poslednjii byte ebp-a sa @ ili !, prati gde program sakce posle toga... vskako da ce biti segmentation fault samo je pitanje gde...
2. Gledaj da li se na tu memorijsku adresu moze nesto upisati...
recimo : Program prvo uzima neke podatke od usera i obradjuje ih...
Zatim ti trazi da uneses buffer koji pravi overflow... tehnika bi recimo
ovde izgledala ovako
1. posaljes svoj shellcode na prvi imput izmedju ostalog u njemu je i adresa tvog shellcode-a recimo da to ovako ispadne [&shellcode][noooooooop][shellcode] ili kako vec, zatim posaljes buffer za overrun =>> AAAAAAAAAAAAAAA...AAAAA% ili ! prebrises ebp
3. Ako si shvatio sta sam hteo reci, mozda ti podje za rukom da napravis exploit... inace nemoj ocekivati da przo dodjes do tacnog resenja, ovo iziskuje dosta vremena i nerviranja...
4. Ako ne uspes iz prvog puta otvori gdb i trazi opet... dok ne uspes... resenje ce naici kad tad... =)

poz...
Nadam se da sam pomogao donekle sa ovim mojim postom =)
[ DownBload @ 02.12.2004. 18:34 ] @
To sta ti pricas je off-by-one i isprobao sam to (kao sto sam naveo u izvornom postu),
ali adresu na koju pokazuje ESP ne mogu kontrolirati (staviti adresu shellcoda).

BTW: Kako to da si ti (predator?) opet odlucio poceti sa securityem?
[ Vojislav Milunovic @ 02.12.2004. 20:33 ] @
ne bavim se, vec samo se secam starih stvari pa nastojim da pomognem ako nekako mogu =)
[ RooTeR @ 03.01.2005. 02:43 ] @
Ufff ufff, ne mojte me samo ubiti zbog onoga shto cu reci.
Znachi ovaj predlog je krajnje laichki i verovatno nichemu nece sluziti,
ali ajde ipak da probam : ako vec ne mozesh da promenish ret adresu na
adresu shellcoda, ti stavi shellcode na adresu na koju pokazuje ret.
poshto si rekao da mozesh da unosish samo ! i @, ti recimo napunish bafer
sa ! (neka je to 0xYZ, poshto ne znam koji je kod), i onda pochevshi od
adrese 0xYZYZYZYZ ti lepo upishesh svoj shellcode i gotovo. E sad, poshto ovo
definitivno nece raditi, molio bih da mi neko objasni zashto.
I da, prouchio sam aleph1-ov tekst, i shta se sad dalje preporuchuje?
[ RooTeR @ 03.01.2005. 10:56 ] @
E, skontao sam zashto ovo ne moze. nishta onda ...
[ Vojislav Milunovic @ 18.01.2005. 18:25 ] @
Citat:
Krajisnik: Mozda da pitas na nekim drugim kvalifikovanijim forumima:
http://www.rootkit.com/boardm.php
ili da probas da ispunis vouch ovde: http://forum.c0replay.net i nadas se da te prime..


Od ovog c0replay nema leba, evo registorvao sam i citam sve forume. Kodove koje sam stavio u Application Join su jedno 100 puta bolji od onih kojih oni pisu. Mislim da je sajt isuvise lame, i jebes koderski sajt koji nema sekciju za asm.
totalni debilizam samog sajta. Recim Inject DLL u C im stoji kao top tema, iako to uoposte nije tesko uraditi, onda neki lik pise kod koji pravipun k**** Threadova koji prave male fajlove i ubacuje u njih tekst kao da popuni hdd... Stvarno bezveze... i zalosno, koji sam se i k**** registrovao tamo...
[ Krajisnik @ 18.01.2005. 19:32 ] @
Yap, puko je skroz pre par meseci, posto su ga razorili unutrasnji sukobi izmdeju clanova... Jebiga, svi su bili u "prst u bulju" fazonu, i neko mora da pretera u tome kad tad, a ovde su svi preterali, pa je cak i Administrator Umek otisao sa foruma, i pre nego je otisao, ispraznio je sve threads sa kvalitetnim stivom, tako da su novi administratori morali vratiti neki sto godina star backup...
Inace, ovde je bilo puno zvucnih imena(ima i sad jos par), kao sto su
Umek(administrator o kome sam pricao, znao je dosta toga)
Ethics(nedavno je provalio u T-Mobile, culi ste sigurno)
Onda autor Agobot-a koji je, mora se priznati, odlicno uradjen program.. I onaj koji je uhapsen u Nemackoj, nije pravi..
Bio je tu i Muts sa whitehat.co.il jedno vreme pre sukoba...
Kompletna moderatorska ekipa sa ShadowCrew-a, koji nisu bas bili klinci.. Deck je valjda imao 45 godina, lol... Ko prati, zna...

Sad je c0replay postao totalno lamerski, slazem se.
whitehat.co.il je ranije bio odlican sajt, al sad ne znam vise, izbacili su me zbog inactivity-a.. Muka mi je vise da na svakom sajtu ovog tipa moram da se dokazujem, dajem moje private exploits, codes itd. samo da bi me primili, i onda godinu dana jos da se dokazujem da bih dobio pristup njihvoim semi-private programima... "Uzdaj se use i svoje kljuse"
[ Vojislav Milunovic @ 18.01.2005. 20:32 ] @
Ma ceo je sajt idijotski, totalno lame... ja reko da ima nešto korisno na njemu kad ono samo sam se zajebao...
[ DownBload @ 18.01.2005. 21:11 ] @
Definitivno s*****.
[ DownBload @ 28.02.2005. 12:35 ] @
Stvar je vec davno prosla, a zaboravio sam reci o kojoj ranjivosti se radi:
http://secunia.com/advisories/13149/

Pozdrav....