½Ã½ºÅÛ ÇØÅ·

 1576, 1/79 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   ka0r1
   LOB °íºí¸° Ŭ¸®¾î Çß½À´Ï´Ù¸¸ ±Ã±ÝÇÑ°Ô Àֳ׿ä.

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=1941 [º¹»ç]


/*
        The Lord of the BOF : The Fellowship of the BOF
        - orc
        - egghunter
*/

#include <stdio.h>
#include <stdlib.h>

extern char **environ;

main(int argc, char *argv[])
{
        char buffer[40];
        int i;

        if(argc < 2){
                printf("argv error\n");
                exit(0);
        }

        // egghunter
        for(i=0; environ[i]; i++)
                memset(environ[i], 0, strlen(environ[i]));

        if(argv[1][47] != '\xbf')
        {
                printf("stack is still your friend.\n");
                exit(0);
        }

        strcpy(buffer, argv[1]);
        printf("%s\n", buffer);
}












(gdb) r `python -c 'print "A"*40+"BBBB"+"CCC"+"\xbf"+"\x90"*1000'`
Starting program: /home/goblin/tmp/orc `python -c 'print "A"*40+"BBBB"+"CCC"+"\xbf"+"\x90"*1000'`

Breakpoint 1, 0x80485c2 in main ()

(gdb) x/200x $esp
0xbffff6a4:        0xbffff6b0        0xbffff82c        0x00000017        0x41414141
0xbffff6b4:        0x41414141        0x41414141        0x41414141        0x41414141
0xbffff6c4:        0x41414141        0x41414141        0x41414141        0x41414141
0xbffff6d4:        0x41414141        0x42424242        0xbf434343        0x90909090
0xbffff6e4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff6f4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff704:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff714:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff724:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff734:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff744:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff754:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff764:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff774:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff784:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff794:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff7a4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff7b4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff7c4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff7d4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff7e4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff7f4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff804:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff814:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff824:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff834:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff844:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff854:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff864:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff874:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff884:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff894:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff8a4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff8b4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff8c4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff8d4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff8e4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff8f4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff904:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff914:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff924:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff934:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff944:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff954:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff964:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff974:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff984:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff994:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff9a4:        0x90909090        0x90909090        0x90909090        0x90909090
0xbffff9b4:        0x90909090        0x90909090        0x90909090        0x90909090
(gdb)  








¹Ø¿¡ °¨»çÇÏ°Ô ´äº¯ÇØÁֽŠkjs´Ô ¸»¾¸´ë·Î Äھ º¼·Á°í Çߴµ¥
ÄÚ¾îÆÄÀÏÀÌ »ý¼ºÀÌ ¾È µÇ¾î¼­...
±×·¡µµ ÀÏ´Ü Å¬¸®¾î´Â Çß½À´Ï´Ù.
±×·±µ¥ ±Ã±ÝÇÑ°Ç ¿Ö buf[40]»çÀÌ¿¡ ½©Äڵ带 ³Ö°í °ø°ÝÇÏ¸é ½©ÀÌ ¾È ¶ß´Â °É±î¿ä?
retµÚ¿¡ ¾ÆÁÖ~~ ³Î³ÎÇÏ°Ô NOP¸¦ 1000°³ ³Ö°í ±× »çÀÌ¿¡ ½©À» ³ÖÀ¸´Ï±ñ °ø°Ý¿¡ ¼º°øÇÏ¿´½À´Ï´Ù.
¾î¶»°Ô µÈ°ÅÁÒ?

  Hit : 2629     Date : 2018/09/23 04:01



    
±ºÀÎ ÄÚ¾îÆÄÀÏÀº ulimit -c unlimit À¸·Î »çÀÌÁî Á¦ÇÑÀ» Ç®¾îÁÖ½Ã¸é º¼ ¼ö ÀÖÀ»°Í °°½À´Ï´Ù. 2018/10/20  
±ºÀÎ r `python -c 'print "A"*40+"BBBB"+"CCC"+"\xbf"+"\x90"*1000'`

º»¹®¿¡ ÀûÇôÀÖ´Â ÆäÀ̷εå·Î´Â ½©ÀÌ ¾ÈµûÁú °Í °°Àºµ¥..

±×¸®°í buf[40] »çÀ̶ó¸é "A" ¹®ÀÚ¿­ÀÌ ÀÖ´Â À§Ä¡¸¦ ¶æÇÏ´Â °Í ÀԴϱî?
2018/10/20  
±ºÀÎ ¸Þ¸ð¸® »óÀÇ ÁÖ¼Ò°¡ Ç×»ó °íÁ¤µÈ °ÍÀÓÀº ¾Æ´Õ´Ï´Ù.
ƯÈ÷³ª argv[0]ÀÇ ±æÀÌ¿¡ µû¶ó¼­µµ ¸Þ¸ð¸® ÁÖ¼Ò °ªÀÌ ¹Ð¸®±â ¶§¹®¿¡ ±×·± °ÍÀ¸·Î À¯Ãߵ˴ϴÙ.
2018/10/20