음 해당 문제를 보니 이번에는 stack, 코드영역 둘다 ret에 못 쓰고, 심지어 library를 사용해도 leave, ret를 만나면 나가리 되는 것 같다.

library함수중 leave, ret가 없는 함수를 찾거나 해야할 텐데... 고민하던중 이번에는 이전처럼 argv로 인자를 받지도 않고, gets가 아닌 fgets로 받는 것을 볼 수 있다.

보니 stdin에 입력받아 buffer에 씌우는 것 같은데 그럼 stdin주소를 보면 넣은 인자값이 있지 않을까 생각했다.

main+6부분이 stdin부분을 받는 것 같다. bp를 걸고 확인해 보니

저렇게 들어가 있다. 아마 아직 인자를 안받아서 텅 비어있는 듯 하다.

인자를 받으니 stdin에 공간이 생겼다.

확인해보니 0x40015000에 인자를 받아준다.

그럼 쉘코드를 저곳에 넣고 ret를 저 주소로 해주면 되지 않을까..?

성공~

'war game > LOB' 카테고리의 다른 글

mac OS LOB실행  (0) 2019.07.04
LOB-level20(remote BOF)  (0) 2019.07.04
LOB-level18(plt)  (0) 2019.07.03
LOB-level17(function calls)  (0) 2019.07.03
LOB-level16(fake ebp)  (0) 2019.07.03

+ Recent posts