Heap(5)
-
HactCTF - 풍수지리설
보호되어 있는 글입니다.
2021.07.24 -
HackCTF - ChildHeap
보호되어 있는 글입니다.
2021.07.02 -
rctf - rnote
문제를 확인해보면 전형적인 힙문제같다, 1.생성 2.삭제 3.출력 기능이 있다. ida로 메인 코드를 확인해보면 add 에서 for ( i = 0; i malloc_hook 3. malloc hook ovewrite payload 는 아래와 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 from pwn import * r = process("./RNote") e = ELF("./RNote") context.log_leve..
2021.01.27 -
pwnable.tw - hacknote
처음으로 도전하는 pwanble.tw 문제이다. pwanble.kr에 비해서 약간의 난의도가 있다는 개인적인 의견에 따라 다른 사이트들의 문제를 많이 접하고 접하기로 했었다. 문제를 실행시켜보면 전형적인 heap문제답게 생성, 삭제, 보기 이렇게 주어진다. ida로 내부에 취약점에 대해서 살펴보면 메인에서 add, delete, show를 확인할 수 있고(내가 함수명 바꿔줌) 이 문제의 핵심이라고 할 수 있는 add 부분에서 heap_print함수가 중요한데, 이따 이 함수를 활용해소 libc leak을 할것이다. (uaf) free하는 부분을 보면 2번 free가 이루어지는데, 2번째 heap free --> 1번째 heap free순서로 이루어진다. 즉 1번 malloc할때 2번 나눠서 malloc ..
2020.10.08 -
pwnable.kr - uaf
UAF문제입니다.heap영역에서 일어나는 취약점입니다.사이버가디언즈수업에서 멘토님꼐서 알려주신문제라 처음 접해보는 취약점이지만 조금쉽게 풀어볼 수 있었습니다. 자세한 설명은 생략하고 필요한 부분만 설명해보겠습니다.일단 메인이 실행되게끔 약 main+100에bp를 하나 잡고, add+8이라는 분기문 이실행되기 직전에 bp를 하나 더 추가해줍니다.그리고 use라는 함수를 사용하기위해 입력해주고 실행합니다. 그후 rax의 값을 보고 그 값을 추적해보면 give_shell함수로 들어가있습니다. 또한 이에다 +8한 값은 introduce의 함수값입니다.그러면 처음에 그값대신에 +8을 한값이 give_shell이 되게끔 0x401568을 넣어주면 될 것 같습니다. 이런식으로 ex하면? (grin)
2018.09.10