이것도 ezshell 문제와 같이 쉘코딩 문제이다.
8바이트만 입력을 받는데 여기서 sandbox()는 세컴으로 execve, execveat 등을 막는다. 즉 쉘을 따는것이 불가능함로 ORW를 해야 한다.
하지만 8바이트만으로는 부족하므로, 8바이트 쉘코드로 read함수를 호출하도록 하여 입력을 많이 받으면 된다. ORW를 할 때 파일 이름을 모른다면 getdents 또는 getdents64 syscall을 이용하면 쉽게 알아낼 수 있다.
'CTF write-up > hackctf' 카테고리의 다른 글
[hackctf] adult_fsb (0) | 2020.01.13 |
---|---|
[hackctf] Unexploitable_4 (0) | 2020.01.13 |
[hackctf] wishlist (0) | 2020.01.12 |
Unexploitable_3 (0) | 2020.01.11 |
[hackctf] childheap (3) | 2019.11.29 |