Pwnable/hackCTF
풍수지리설
Writeup File information Code Main int __cdecl __noreturn main(int argc, const char **argv, const char **envp) { char v3; // [esp+3h] [ebp-15h] int v4; // [esp+4h] [ebp-14h] size_t v5; // [esp+8h] [ebp-10h] unsigned int v6; // [esp+Ch] [ebp-Ch] v6 = __readgsdword(0x14u); setvbuf(stdin, 0, 2, 0); setvbuf(stdout, 0, 2, 0); alarm(0x3Cu); while ( 1 ) { puts("0: Add a Location"); puts("1: Delete a ..
HackCTF UAF
가장 처음 uaf를 풀었을 때와 다른 방법으로 풀어버렸다. 처음 heap에 접했을 때는 break point를 걸은 후 chunk 할당을 보면서 풀었지만 이번에는 이런 식으로 할당되겠다고 생각하면서 풀어보았다. Writeup File information Code Main int __cdecl __noreturn main(int argc, const char **argv, const char **envp) { int v3; // eax char buf; // [esp+8h] [ebp-10h] unsigned int v5; // [esp+Ch] [ebp-Ch] v5 = __readgsdword(0x14u); setvbuf(stdout, 0, 2, 0); setvbuf(stdin, 0, 2, 0); wh..
HackCTF Beginner_Heap
heap공부를 다시 시작할 겸 풀었던 문제들 write-up을 써보려 한다. 그중 가장 먼저 풀었던 hackctf beginner_heap writeup이다! Writeup File information Code Main void __fastcall __noreturn main(__int64 a1, char **a2, char **a3) { void *v3; // ST10_8 void *v4; // ST18_8 char s; // [rsp+20h] [rbp-1010h] unsigned __int64 v6; // [rsp+1028h] [rbp-8h] v6 = __readfsqword(0x28u); v3 = malloc(16uLL); *v3 = 1; *(v3 + 1) = malloc(8uLL); v4 =..