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 |
Tags
- 취약점 스캔
- 해킹
- Kioptrix
- 내부침투
- 스캐닝
- 취약점분석
- 모의해킹
- 침투테스트
- 취약점
- web hacking
- 칼리리눅스
- CTF
- 스캔
- sql
- 해킹도구
- 메타스플로잇
- Metasploit
- Samba
- SQLINJECTION
- 포트스캔
- root권한
- 암호해독
- smb
- Los
- Hacking
- 권한상승
- 시스템 해킹
- load of sqlinjection
- SQL Injection
- 해킹툴
Archives
- Today
- Total
감자 텃밭
cobolt 본문
cobolt로 접속 후 ls-l을 확인 후 goblic 실행파일과 goblic.c파일을 확인하였다 그 후. c파일을 열어 프로그램을 소스코드를 확인하였다
해당 소스코드는 16바이트의 버퍼가있고 gets함수를 이용하여 입력값을 검증하지 않고 계속해서 입력받으며
printf를 사용하여 화면에 출력하는 프로그램이다. buffer가 16바이트이므로 쉘 코드는 들어가지 않을 거 같다.
그럼 이전 문제와 동일하게 환경변수를 이용해서 풀어나갈 수 있을 거 같다.
일단 진행을 위해 tmp디렉토리로 프로그램을 이동 후 작업을 해나갔다.
해당 파일을 gdb로 확인하였을 때 dummy값은 없는 거 같다. 그럼 바로 환경변수를 만들어보았다
환경변수의 주소값을 얻기 위해 프로그램을 작성하였다. (저기 /n이 아니라 \n이이다!! 오타가 났다!! ㅎㅎ..)
해당 환경변수의 주소는 0xbffffe3e라는것을 알게 되었으니 이제 payload를 작성하러 가자!!... 했지만 뭔지 모르게 실행이 되지 않았다...
tmp에서 환경변수와 주소를 찾은 프로그램을 만들어서 오류가 생기는 거 같아 삭제하고 cobolt에서 다시 삽질.. 해서 실행시켰더니 쉘을 획득할 수 있었다.!!!
공격코드는 버퍼(16)+sfp(4)의 크기만큼 dummy로 채운 후 ret(4) 부분에 환경변수의 주소를 삽입하여 쉘 코드를 실행하도록 하였다.