HackCTF - Unexploitable #4
__int64 __fastcall main(__int64 a1, char **a2, char **a3) { char s[16]; // [rsp+0h] [rbp-10h] BYREF ((void (__fastcall *)(__int64, char **, char **))init_)(a1, a2, a3); fgets(s, 0x2C, stdin); return 0LL; } 다 풀려있었기에 shellcode를 의도한 문제라고 합리적의심을 할 수 있었다. 처음에 구상은 아래와 같이 했다 SFP를 BSS로 조작해서 shellcode 2번에 나누어서 삽입 shellcode가 있는 주소를 ret 해서 익스 진행 그런데 위와 같이 하다보니 레지스터가 꼬이는 상황이 발생했고, 적절하게 sub rsp, 0x20 을 해줘서 익..
2021.10.15