• Welcome to TUKE FÓRUM - Fórum pre študentov Technickej Univerzity v Košiciach.
 

BvPS

Started by radix, 20.09.2011, 21:55:13

« predchdzajce - alie »

drtic

V novsich verziach gcc je treba pridat do kompilacie dalsi prepinac -z execstack, cize prikaz bude vyzerat takto:

gcc -fno-stack-protector -z execstack stack.c -o stack

MackoZlesa

Quote from: drtic on  13.10.2011, 07:50:28
V novsich verziach gcc je treba pridat do kompilacie dalsi prepinac -z execstack, cize prikaz bude vyzerat takto:

gcc -fno-stack-protector -z execstack stack.c -o stack

:thumbs-up: vdaka drtic. skusal som predtym exestack, ale bez flagu -z. teraz mi uz nepise segmentation fault po vykonani ./exploit. Konecne sa mozem pustit do badfilu  ;D

jim-beam33

mohol by tu niekto napisat hlavnu pointu o co ide v tom zadani ? - lebo nejako som to vobec nepochopil co treba spravit...???  :buttrock:

MackoZlesa

Quote from: MackoZlesa on  14.10.2011, 05:29:30
Quote from: drtic on  13.10.2011, 07:50:28
V novsich verziach gcc je treba pridat do kompilacie dalsi prepinac -z execstack, cize prikaz bude vyzerat takto:

gcc -fno-stack-protector -z execstack stack.c -o stack

:thumbs-up: vdaka drtic. skusal som predtym exestack, ale bez flagu -z. teraz mi uz nepise segmentation fault po vykonani ./exploit. Konecne sa mozem pustit do badfilu  ;D

a zase my zacalo vypisovat segmentation fault, funguje to niekomu???

Dulus

Quote from: jim-beam33 on  14.10.2011, 17:02:11
mohol by tu niekto napisat hlavnu pointu o co ide v tom zadani ? - lebo nejako som to vobec nepochopil co treba spravit...???  :buttrock:
Len tak polopatisticky a snad spravne: potrebujes zasobnik naplnit takou hodnotou aby ti ten zasobnik pretiekol a "navratova" hodnota aby ti ukazovala tam kde mas ten svoj program ktory chces spustit v pamati..
Zivot je ako jazda na vytahu.Raz si hore,raz dole.

pinderko

pohol uz niekto s prvym zadanim. Mne tam vypisuje stale segmentation fault. Doplnal som uz daco aj do kodu ale stale je tam ta chyba. Moze byt, ze uz to aj mam urobene, len kvoli tejto chybe to neviem? ???

Dulus

#31
Quote from: pinderko on  20.10.2011, 03:34:06
pohol uz niekto s prvym zadanim. Mne tam vypisuje stale segmentation fault. Doplnal som uz daco aj do kodu ale stale je tam ta chyba. Moze byt, ze uz to aj mam urobene, len kvoli tejto chybe to neviem? ???
nie si sam kto ma seg fault, ono ten seg fault je tam vlastne spravne, lebo ty sa snazis pristupit ku adrese ktora nie je tvoja, otazkou je ci si sa dostal k tej pamati kam si chcel :)
Zivot je ako jazda na vytahu.Raz si hore,raz dole.

mctom

ľudia - tí, čo chodíte v pondelok na cviko o 10:50 - máte už všetci parťáka? lebo nejak som ostal sám a to bych nerad :D

dissipator

Exploit mam uspesne napisany, akurat moj shellcode nedava root (#) shell iba normal user ($). Ako root som na subor nastavil chmod 4755. Nevie nejaky linuxak v com moze byt problem ? To iste mi robi aj s ukazkovym call_shellcode.c

pinderko

Quote from: dissipator on  21.10.2011, 00:00:41
Exploit mam uspesne napisany, akurat moj shellcode nedava root (#) shell iba normal user ($). Ako root som na subor nastavil chmod 4755. Nevie nejaky linuxak v com moze byt problem ? To iste mi robi aj s ukazkovym call_shellcode.c
tebe chybu segmentation fault nevypisovalo? Daj nejake indicie ako sa cez to dostat  :angel:

markus

niekto kto uz odovzdaval u Cymbalaka ako to prebiehlao?

drtic

Quote from: dissipator on  21.10.2011, 00:00:41
Exploit mam uspesne napisany, akurat moj shellcode nedava root (#) shell iba normal user ($). Ako root som na subor nastavil chmod 4755. Nevie nejaky linuxak v com moze byt problem ? To iste mi robi aj s ukazkovym call_shellcode.c
Treba skontrolovat ci:
- vlastnik suboru stack je root
- zsh je nalinkovane do /bin/sh

dissipator

#37
zsh skontrolujem, vlastnikom root bol urcite, lebo som to kontroloval a daval "pre istotu" pred kontrolou este aj chown
dalej som to vsak uz nejak neriesil, kedze som system interruptom pridal setuid 0, tak sa konecne program "spamatal" a prehodil na roota aj s id 0

markus: ja som dnes meskal na cvicenie, kym som dosiel, tak uz nam zadanie odklepol. Akurat mal poznamku, ze tam chyba screen s root pravami - on tam bol, akurat spolu s vypisom Stack guardu.

pinderko: treba si uvedomit, ze ak chces presmerovat riadenie programu cez buffer overflow, tak nestaci zafloodovat pamat "niecim". Ten shellcode nema byt na mieste kde je return adresa. Ak si cital Smashing stack for profit and fun - dokument k labu, tak toto je ten "zlozitejsi" pripad, ktory je tam rieseny cez envinromental variable - ja som to riesil vsak inak. Na miesto return adresy musis vlozit hodnotu, ktora bude odkazovat na alebo pred shellcode (pred len mazximalne tolko kolko NOP instrukcii tam mas). Ved cela problematika BO spociva v najdeni tej adresy  ;D

stamperlik

Quote from: dissipator on  21.10.2011, 20:51:29
pinderko: treba si uvedomit, ze ak chces presmerovat riadenie programu cez buffer overflow, tak nestaci zafloodovat pamat "niecim". Ten shellcode nema byt na mieste kde je return adresa. Ak si cital Smashing stack for profit and fun - dokument k labu, tak toto je ten "zlozitejsi" pripad, ktory je tam rieseny cez envinromental variable - ja som to riesil vsak inak. Na miesto return adresy musis vlozit hodnotu, ktora bude odkazovat na alebo pred shellcode (pred len mazximalne tolko kolko NOP instrukcii tam mas). Ved cela problematika BO spociva v najdeni tej adresy  ;D

Takze si zmenil velkost buffra vo stack.c tak aby sa ti tam ten shellcode vosiel? Ides este dorabat cez tu enviromentalnu premennu alebo to odovzdas takto?
:ropebanana:

dissipator

#39
Stack.c nesmies nijak menit - co to je potom za "utok" ked si upravis cielovu aplikaciu pre svoje potreby ? Zdrojak stac. c mame na to, aby sme nedostali zavrat pri citani asembleru programu, na ktory utocime (aj ked v takom IDA Pro to vobec nevyzera hrozne) a aby sme mali moznost program prekladat s a bez Stack Guardu.

Nevidim dovod, preco by som mal menit funkcnost fungujuceho programu - cely "hacking" je o hladani cesticky pomedzi nepriestrelne steny. Bolo by divne, ak by vsetci nasli tu istu cestu (aj ked sa da ocakavat, ze 80% riesitelov pojde jednou cestou). Takto mam zaruku, ze pri hodnoteni zadania vidia, ze to nie je ziaden copy/paste. Sposoby riesenia navrhnute v spominanom dokumente nie su ani zdaleka jedine. Staci par minut hladat.

edit: zle som sa v skorsom prispevku vyjadril - stack.c nie je presne ta "zlozitejsia" situacia - stack.c totiz moze drzat obsah badfile v 2 poliach (uz ked toto nepomoze, tak treba este hodinu viac venovat citaniu google/bing: "stack buffer overflow tutorial")

MackoZlesa

Ked spravim stack overflow, tak dostanem: sh-3.2$
Ked do shellcodu doplnim setuid(0), tak dostanem: sh-3.2#.
Dostal niekto sh-3.2# aj bez doplnenia setuid, a ak ano, tak ako?

bludar

Ohľadom druhého zadania. Odkazy ani na DNS ani na TCP/IP nefungujú. Nemá to niekto uložené ? Alebo nevie niekto kedy to bude sprístupnené?

pinderko

Quote from: bludar on  31.10.2011, 19:10:30
Ohľadom druhého zadania. Odkazy ani na DNS ani na TCP/IP nefungujú. Nemá to niekto uložené ? Alebo nevie niekto kedy to bude sprístupnené?
hodil som to na forum mafo, ale nemam tcp/ip takze mas len dns

bludar

#43
Quote from: pinderko on  31.10.2011, 20:23:24
Quote from: bludar on  31.10.2011, 19:10:30
Ohľadom druhého zadania. Odkazy ani na DNS ani na TCP/IP nefungujú. Nemá to niekto uložené ? Alebo nevie niekto kedy to bude sprístupnené?
hodil som to na forum mafo, ale nemam tcp/ip takze mas len dns

Diky, to, čo si poslal je pravdepodobne Lab Description and Tasks, boli k  úlohe ešte nejaké Konfiguračné súbory DNS ( Zone files for DNS Setup)? ak áno mohol by si uploadnuť aj tie? Vopred ďakujem.

EDIT: Stránka už funguje

pinderko

tak ja mam len toto popripade mrkni na ich stranke:

http://www.cis.syr.edu/~wedu/seed/all_labs.html

bludar

Podarila sa uz niekomu posledna uloha v DNS? čo presne treba upravit v pacgen.c ?

Macro

Vie uz niekto ci bude cvicenie teraz v ponelok o 15:10?

Achilus13

DNS.....


nevie mi niekto napísať ako presne má vyzerať ten príkaz v netwag-u "105...." skúšal som všetko čo ma napadlo takže nejaké rady??

Squirrel_sK

Quote from: bludar on  06.11.2011, 22:45:11
Podarila sa uz niekomu posledna uloha v DNS? čo presne treba upravit v pacgen.c ?

treba vytvorit datovu cast paketu.. DNS reply.. take ake potrebujes.. bohuzial zatial mi to nefunguje.
Odkladanie robí ľahkú vec ťažkou a ťažkú vec nemožnou.

bludar

#49
Quote from: Squirrel_sK on  07.11.2011, 06:39:30
Quote from: bludar on  06.11.2011, 22:45:11
Podarila sa uz niekomu posledna uloha v DNS? čo presne treba upravit v pacgen.c ?

treba vytvorit datovu cast paketu.. DNS reply.. take ake potrebujes.. bohuzial zatial mi to nefunguje.
podarilo sa ? mne stale nie. ako spustas PING a pacgen ja mam nekonecny cyklus while pred ktorym je fork() takze mam 2 procesy, jeden robi ping a druhy spusta pacgen. nejak takto v podstate:

void  main(void)
{
     pid_t  pid;

     pid = fork();
     while(1) {
         if (pid == 0)
              ping();
         else
              packen();
     }
}

rozmyslam ci v tomto nieje chyba lebo vsetko ostatne sa mi zda byt ok.
Chcelo by to nejaky synchronizacny bod na konci aby sa obe procesy pockali pre dalsiu url, lebo teraz si skacu sem a tam. Okrem toho pre kazdy ping sa ma poslat niekolko odpovedi s roznym ID ja posielam stale len jednu...