fedora 원정대 core3 dark_eyes -> hell_fire
hell_fire.c
sfp를 복사해 두었다가 원상복귀 시키고 fgets로 받은 문자를 strcpy하는 과정에서 스택을 조작할 수 있다. tcp 7777로 remote환경이다.
다른사람들의 라이트업을 참고해보니 do_system으로 eip를 이동시켜서 쉘을 얻는 것을 볼 수 있었다. do_system이 무엇일까..
system 함수에서 do_system을 호출하는 것을 볼 수 있었다.
system 함수는
#include <stdlib.h>
int system(const char *string)
이고 /bin/sh -c string을 호출하여 string명령어를 실행하고 fork()와 execve()의 조합으로 실행된다.
do_system함수를 까보면 함수의 밑부분에 sigaction(), sigprocmask()를 호출하고 execve()함수를 호출 하는 것을 볼 수 있다. eip를 sigaction쪽으로 이동시키면 쉘을 얻을 수 있는데 지식이 부족해서 왜 그런지 알수가 없다. execve가 실행되서 얻는것같은데 모르겠다
??
(python -c 'print "A"*268 + "\x7f\x07\x75\x00"';cat) | nc localhost 7777
Categories
- programming (17)
- security (46)
- study (22)
- system (35)
Recent 7 Days Popular Posts
-
puts@plt + 0에 puts@plt + 6의 주소가 들어있어서 호출되면 puts@plt+6의 코드가 실행 puts@plt + 11 에서 점프하면 pushl, jmp로 분기된다. pushl로 GOT+4의 주소를 스택에 넣고 GOT+8의 주소로...
-
Bigbof.c source code Stack Frame Redhat 6.2 vuln : stack overflow vuln func : strcpy() 24byte shellcode exploit code : ...
-
bof redhat 원정대 gate -> gremlin /home/gate 디렉터리에 들어가보면 gremlin, gremlin.c 파일이 있다. strcpy함수가 보인다. argv[1]을 buffer로 복사하는데 길이를 체...
-
METASPLOIT 사용법 Metasploit 은 펄스크립트를 사용하는 침투테스트도구이다 . 1. METASPLOIT 경로 metasploit 은 Kali Linux 에 기본적으로 설치되어 있다 . Kali 기준으로 경로는...
-
fedora 원정대 core 3 hell_fire -> evil_wizard evil_wizard.c hint 를 보면 GOT overwritting이 써있다. GOT overwritting 공격을 시도하여 쉘을 얻을 수 있다. ...



0 개의 댓글:
댓글 쓰기