Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Kioptrix
- 암호해독
- 해킹
- SQL Injection
- Samba
- 권한상승
- web hacking
- 취약점 스캔
- 스캐닝
- 스캔
- 취약점
- Hacking
- Metasploit
- 내부침투
- 시스템 해킹
- 해킹도구
- 취약점분석
- root권한
- 해킹툴
- load of sqlinjection
- 모의해킹
- smb
- 메타스플로잇
- CTF
- sql
- 침투테스트
- 칼리리눅스
- Los
- SQLINJECTION
- 포트스캔
Archives
- Today
- Total
감자 텃밭
orc 본문
해당 계정으로 접속 후 ls -l로 파일 및 디렉터리를 확인 후 wolfman.c파일을 확인하여 소스코드를 확인
음.. 이전문제와 동일하게 인자 값은 하나 이상 48번째에 \xbf가 있어야 하며 strcpy를 사용한다
하지만 이문제에서는 buffer hunter 즉 memset를 사용하여 버퍼의 값을 초기화한다.
즉 버퍼에 쉘 코드를 삽입하여도 초기화가 된다는 것이다... 흠
그렇다면 버퍼에 값이 사라져도 argv [1]의 값은 존재하니 argv[1]의 값을 쓰거나 ret뒤에 값을 써도 된다.
나는 ret뒤쪽에 있는 값을 쓰기로 했다.
즉 buffer [40]+sfp [4]+set [4]+[shell code]로 payload를 작성하면 된다.
각종 권한 문제로 인해 /tmp에서 작업을 했다.
ret 뒤쪽의 shellcode의 주소를 알아내기 위해 cp를 통해 해당 파일을 /tmp로 옮긴 후
해당 코드로 프로그램을 실행하여 core dump를 확인하여 주소를 알아낼 것이다.
아래를 보면 주소를 알아낼 수 있다. 버퍼에 저 된 값에 대한 주소도 있지만 버퍼 헌터를 만나면 사라지고
ret주소도 알 수 있다. 나는 ret뒤쪽의 값인 0 xffffc50을 사용하면 된다.
그럼 이제 payload를 작성해보자
성공적으로 쉘을 획득하고 패스워드를 알아낼 수 있었다!!!