본문 바로가기

Wargame/Lord Of Buffer overflow

[LOB] 2번 gremlin -> cobolt














login : gremlin
password : hello bof world



로그인 후 vi cobolt.c로 소스코드를 확인한다.








1번 문제처럼 풀기엔 버퍼의 크기가 작다. 


그래서 환경 변수로 풀어주면 된다.











위와 같이 SHELL 이라는 환경 변수에 쉘코드 주소를 넣어준다.







env 명령어로 환경변수 SHELL이 생긴 걸 알 수 있다.






환경변수의 주소를 알기 위한 코드를 C언어로 작성해보았다.






환경변수의 주소는 위와 같다.






그래서 위와 같이 버퍼와 SFP를 NOP으로 채워주고 RET 주소에 환경변수 주소를 넣어주면 문제 해결

 

'Wargame > Lord Of Buffer overflow' 카테고리의 다른 글

[LOB] 6번 wolfman -> darkelf  (0) 2017.11.07
[LOB] 5번 orc -> wolfman  (0) 2017.11.07
[LOB] 4번 goblin -> orc  (0) 2017.11.07
[LOB] 3번 cobolt -> goblin  (0) 2017.11.02
[LOB] 1번 gremlin  (0) 2017.10.15