exploit
-
[Exploit] Bof-serverCTF write_up/Timisoara CTF 2019. 9. 19. 23:41
소스코드를 한번 확인해 보겠습니다. gets()함수에서 취약점이 발생합니다. 그러면 한번 실행해 보겠습니다. 스택 주소를 얻을 수 있고, 입력이 가능한 구조 입니다. IDA로 넣어야 하는 데이터의 크기를 알아보겠습니다. 크기는 256 할당 되어 있습니다. SFP와 RET의 크기를 확인해 보겠습니다. SFP : 8 // RET : 8 입니다. 일단 저희는 stack address를 받기 때문에 이를 이용해서 문제를 해결 해야 합니다. [shellcode] + "\x90"*(256 + 8 - shellcode의 길이) + RET에 들어갈 stack address값 을 전달해 주면 될 것 같습니다. shellcode는 24byte를 사용합니다. => "\x50\x48\x31\xd2\x48\x31\xf6\x48..