Skeleton
-
[LOB] skeleton > golemWargame/Lord of Buffer Overflow 2021. 7. 14. 09:51
[LOB] skeleton > golem 24번째 줄이 이번 문제에 핵심같다. stack destoryer 말 그대로 스택을 파괴시킨다. 쉘 코드를 사용할 위치를 찾아야하는데 LD_PRELOAD를 이용하면 된다. LD_PRELOAD에 환경변수를 설정하면 프로세스가 실행 중 라이브러리를 불러올 때 설정한 라이브러리를 먼저 불러온다. ( 공유 라이브러리영역에 존재 ) 이렇게 -fPIC과 -shared 옵션으로 공유라이브러리로 컴파일하고 환경변수에 등록해준다. 그리고 gdb로 환경변수로 등록한 쉘 코드의 위치를 찾아주면 된다. golem / cup of coffee
-
[LOB] vampire > skeletonWargame/Lord of Buffer Overflow 2021. 7. 13. 14:05
[LOB] vampire > skeleton argv를 다 초기화한다. gdb로 쓸만한 곳이 있는지 확인해보자. 이렇게 메모리 끝 부분에 파일 실행 경로가 남아있다. 파일명을 쉘코드로 바꿔주면 될 것 같다. 이렇게 파일명을 바꿔주고 core파일을 통해 주소를 찾아보자. 적당히 0xbfffffb0 쯤으로 잡으면 될 것 같다. ㅇ 이제 링크를 걸고 exploit 해보자. ㅅ 성공적으로 쉘이 실행되었다. skeleton / shellcoder