[HackCTF] (Pwnable) pzshell 풀이
pzshell 위 쉘코드 + 내가입력한 opcode 8byte 를 붙여 xor 부터 실행시켜준다. 필터링하는 키워드는 \x0f\x05 이다. ezshell과 다른 점은, rdx 를 초기화하지 않고, si 에 0xdef1 을 넣어준다는 것 이다. 쉘코드+2 으로 점프하므로, rdx 에는 xor rbp,rbp 의 주소부터 저장되어있다. 그래서, xchg ? 으로 si 와 rdx 를 바꾼 뒤, read syscall 으로 쉘코드를 새로 입력받는다. 이 때. syscall 을 필터링하지 않으므로 자유롭게 사용할 수 있다. 또한 seccomp 설정에서, fork, vfork, clone, creat, ptrace, prctl, execve, execveat 가 필터링되어 있으므로, ORW 를 사용해 문제를 풀어야..
2021. 10. 6.