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

Malo problema oko novih linux exploita i memorijske organizacije...

[es] :: Security Coding :: Malo problema oko novih linux exploita i memorijske organizacije...

[ Pregleda: 4030 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

LiquidBrain

Član broj: 33502
Poruke: 28
*.041net.co.yu.

Sajt: www.sdwifi.co.sr


Profil

icon Malo problema oko novih linux exploita i memorijske organizacije...04.02.2006. u 21:06 - pre 221 meseci
Pozdrav ljudi...

Dakle ovako Jel ima bwe negde na net-u neki fin tutorijal o stack overflow eksploatisanju koji obradjuje novi gcc kompajler i nove linux kernele. Poshto sve shto sam nashao objashnjava stare kernela tipa 2.4.x. a to mi trenutno nishta ne znaci. znam assembler ali za windows, jebaga ali nemam vremena da ucim za linux (posao, shkola, ZENA... ). Dakle konkretno malo se bunim oko
inicijalizacije programa, poshto u starijim kernelima nije postojao dodatni kod na samom pocetku
programa (kada se disassembluje). tako da ne mogu da pratim bash tutorijale i shta se deshava pri izvrshenju... jebaga glup sam...

konkretno...

Dump of assembler code for function main:
Code:

0x08048427 <main+0>:    push   %ebp
0x08048428 <main+1>:    mov    %esp,%ebp
0x0804842a <main+3>:    sub    $0x8,%esp
0x0804842d <main+6>:    and    $0xfffffff0,%esp
0x08048430 <main+9>:    mov    $0x0,%eax
0x08048435 <main+14>:   add    $0xf,%eax
0x08048438 <main+17>:   add    $0xf,%eax
0x0804843b <main+20>:   shr    $0x4,%eax
0x0804843e <main+23>:   shl    $0x4,%eax
0x08048441 <main+26>:   sub    %eax,%esp
0x08048443 <main+28>:   call   0x80483fc <lame>
0x08048448 <main+33>:   mov    $0x0,%eax
0x0804844d <main+38>:   leave
0x0804844e <main+39>:   ret

Nije mi jasno shta bwe radi ovaj deo koda pre poziva "lame" funkcije. To jest sledece:
Code:

0x08048427 <main+0>:    push   %ebp
0x08048428 <main+1>:    mov    %esp,%ebp
0x0804842a <main+3>:    sub    $0x8,%esp
0x0804842d <main+6>:    and    $0xfffffff0,%esp
0x08048430 <main+9>:    mov    $0x0,%eax
0x08048435 <main+14>:   add    $0xf,%eax
0x08048438 <main+17>:   add    $0xf,%eax
0x0804843b <main+20>:   shr    $0x4,%eax
0x0804843e <main+23>:   shl    $0x4,%eax
0x08048441 <main+26>:   sub    %eax,%esp

Ako ima neki tutorijal shta ovo znaci bio bi od velike pomoci... ako nema... onda moze li iko da mi objasni...

Unapred Hvala... pozzz!

[Ovu poruku je menjao LiquidBrain dana 05.02.2006. u 19:28 GMT+1]
You don't want to learn, then stick this keyboard in your ass!
 
Odgovor na temu

fearless

Član broj: 74584
Poruke: 156
212.62.59.*

Sajt: www.phearless.org


Profil

icon Re: Malo problema oko novih linux exploita i memorijske organizacije...05.02.2006. u 01:31 - pre 221 meseci
Ovo:
Code:
0x08048427 <main+0>: push %ebp
0x08048428 <main+1>: mov %esp,%ebp
0x0804842a <main+3>: sub $0x8,%esp
0x0804842d <main+6>: and $0xfffffff0,%esp
0x08048430 <main+9>: mov $0x0,%eax

0x08048441 <main+26>: sub %eax,%esp

je standardno na pocetku svake f-je, stvaranje novog stack frame, to ti nije nista novo, a:

Code:
0x08048435 <main+14>: add $0xf,%eax
0x08048438 <main+17>: add $0xf,%eax
0x0804843b <main+20>: shr $0x4,%eax
0x0804843e <main+23>: shl $0x4,%eax

vidim prvi put ;)

Ja imam malo stariji gcc, tacnije 3.3.4 ;)

Citat:
sve shto sam nashao objashnjava stare kernela tipa 2.4.x

Ne diraj mi 2.4.x ;p


[Ovu poruku je menjao fearless dana 05.02.2006. u 02:37 GMT+1]
Phearless - Serbian/Croatian Security Magazine: www.phearless.org
 
Odgovor na temu

LiquidBrain

Član broj: 33502
Poruke: 28
*.041net.co.yu.

Sajt: www.sdwifi.co.sr


Profil

icon Re: Malo problema oko novih linux exploita i memorijske organizacije...05.02.2006. u 05:02 - pre 221 meseci
mislim i ja imam istu verziju gcc-a 3.3.4 Ali i ja prvi put vidim to...

konkretno platforma je SuSE linux 9.2 sa kernelom 2.6.8, tako da znam da je pocetak postavljanje stack frame-a, ali mi nije jasan deo posle.... da, da, znam da za exploatisanje on nije ni vazan, ali bwe mene interesuje kako i zashto to radi :lol:

ae pozdrav

You don't want to learn, then stick this keyboard in your ass!
 
Odgovor na temu

glupi

Član broj: 836
Poruke: 199
*.dsl.iskon.hr.



Profil

icon Re: Malo problema oko novih linux exploita i memorijske organizacije...05.02.2006. u 09:06 - pre 221 meseci
Code:
0x08048435 <main+14>: add $0xf,%eax
0x08048438 <main+17>: add $0xf,%eax
0x0804843b <main+20>: shr $0x4,%eax
0x0804843e <main+23>: shl $0x4,%eax

Alociraj 16 bajtova na stacku. Zasto tocno ovo treba ne znam, vjerovatno neke interne gcc stvari posto ovo ne izgleda kao prostor za parametre lame funkciji. Daj cjeli kod lame-a da vidimo, mozda i je prostor za parametra, ili pogle u gcc dokumentaciji (mozda padding?).
 
Odgovor na temu

LiquidBrain

Član broj: 33502
Poruke: 28
*.041net.co.yu.

Sajt: www.sdwifi.co.sr


Profil

icon Re: Malo problema oko novih linux exploita i memorijske organizacije...05.02.2006. u 18:26 - pre 221 meseci
evo ceo source code programa:
Code:

void lame (void) {
        char small[30];
        gets (small);
        printf("%s\n", small);
}
main() {
        lame ();
        return 0;
}


a ovo je disassemblovana lame funkcija:
Code:

0x080483fc <lame+0>:    push   %ebp
0x080483fd <lame+1>:    mov    %esp,%ebp
0x080483ff <lame+3>:    sub    $0x28,%esp
0x08048402 <lame+6>:    sub    $0xc,%esp
0x08048405 <lame+9>:    lea    0xffffffd8(%ebp),%eax
0x08048408 <lame+12>:   push   %eax
0x08048409 <lame+13>:   call   0x8048310 <_init+40>
0x0804840e <lame+18>:   add    $0x10,%esp
0x08048411 <lame+21>:   sub    $0x8,%esp
0x08048414 <lame+24>:   lea    0xffffffd8(%ebp),%eax
0x08048417 <lame+27>:   push   %eax
0x08048418 <lame+28>:   push   $0x8048568
0x0804841d <lame+33>:   call   0x8048330 <_init+72>
0x08048422 <lame+38>:   add    $0x10,%esp
0x08048425 <lame+41>:   leave
0x08048426 <lame+42>:   ret


a stvarno ne znam kakav bi padding tu trebao da alocira kompajler. Mislim ovo je stvarno glup program sa ociglednim stack overflow problemom. i naravno nije uopshte teshko da se exploatishe
ali bwe jebem mu mater, shto dodaje taj usrani deo koda....

Grrrrr

poz.
You don't want to learn, then stick this keyboard in your ass!
 
Odgovor na temu

[es] :: Security Coding :: Malo problema oko novih linux exploita i memorijske organizacije...

[ Pregleda: 4030 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

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