Kezdőoldal » Számítástechnika » Programozás » A következő feladatot kaptam...

A következő feladatot kaptam az Adatbiztonság témakörből: A printf utasítást a program 24 byte-on tárolja. A veremben a visszatérési címet közvetlenül a lokális változók követik. Mit ír ki a program?

Figyelt kérdés

void function()

{

int buffer[1];

buffer[2] += 0x18;

}


int main()

{

function();

printf("A\n");

printf("B\n");

printf("C\n");

return 0;

}


Előre is köszönöm a segítséget!



2015. máj. 6. 17:47
 1/6 A kérdező kommentje:
Puffer túlcsordulásos támadásról van szó.
2015. máj. 6. 17:52
 2/6 anonim ***** válasza:
41%
Mi akadályoz meg benne, hogy végiggondold/kipróbáld?
2015. máj. 6. 17:54
Hasznos számodra ez a válasz?
 3/6 iostream ***** válasza:
72%
Tök jó lenne tudni, hogy mekkora a pointer mérete (hány bites architektúrára fordítasz), mekkora az int mérete, illetve milyen optimalizálásokat fog a fordító végrehajtani.
2015. máj. 6. 17:55
Hasznos számodra ez a válasz?
 4/6 anonim ***** válasza:
77%
A válasz 32 biten, kiírja a b-t és a c-t. Az eip felülíródik a buffer+=0x18-nál. Ami nem mellesleg épp 24 byte-os növelést jelent. De ez önmagában kevés infó. Nem ártana tudni az optimalizációt, a fordító tipusát, valamint azt se van-e stack cookie,illetve a fordító meg az op. Rendszer használ-e aslr védelmet( address space layout randomization-t, mert ebben az esetben is felülíródik az eip, de az op. Tudja csak hogy eip+0x24 hova mutat, egy biztos ebben az esetben nem a printf-ekre fog.
2015. máj. 6. 20:13
Hasznos számodra ez a válasz?
 5/6 anonim ***** válasza:
77%
Pontosítok aslr esetén eip+0x18 szinte biztos hogy NOP utasításra fog mutatni, annak is második byte-jára, ami érvénytelen művelet lenne, mivel ez két byte-os utasítás, az op. rendszer dob egy exceptiont, és leállítja a program futását.Az hogy a printf-ek hol vannakazt csak az op. Rendszer tudja.
2015. máj. 7. 02:16
Hasznos számodra ez a válasz?
 6/6 A kérdező kommentje:
Köszönöm a válaszokat és a hozzászólásokat mindenkinek!
2015. máj. 8. 20:31

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!