목록전체 글 (166)
Pwnstar
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
좀 까다로운 힙 문제였다. 까나리와 NX bit 그리고 Full relro가 걸려있다. malloc_hook이나 free_hook을 덮으면 된다. main void __fastcall __noreturn main(__int64 a1, char **a2, char **a3) { signed int v3; // [rsp+Ch] [rbp-4h] setbuf(stdout, 0LL); setbuf(stdin, 0LL); setbuf(stderr, 0LL); sub_401211(); printf("%s", "To get started, first tell us how big your notebook will be: "); size = input_size(); table = malloc(8 * size); memse..
child heap 문제 풀면서 얻은 지식 덕분에 좀 쉽게 풀 수 있었던 문제였다. 보호기법은 다 걸려있음. 보통 힙 문제에서 Full relro 걸려있으면 malloc hook이나 free hook을 덮어서 익스하게 된다. 흔한 힙 문제들과 같이 malloc, edit, free, print 등을 할 수 있다. int add() { int result; // eax signed int v1; // [rsp+Ch] [rbp-4h] puts(&byte_FF6); result = smooth(&byte_FF6); v1 = result; while ( v1 >= 0 && v1
hackctf의 childheap문제를 풀던 중 libc leak을 할 방법을 찾다가 처음 보는 방법이 있어서 자세히 공부를 해 보려고 한다. IO_FILE 구조체의 구조부터 한번 살펴보자 code.woboq.org/userspace/glibc/libio/bits/types/struct_FILE.h.html struct_FILE.h source code [glibc/libio/bits/types/struct_FILE.h] - Woboq Code Browser 106#define __putc_unlocked_body(_ch, _fp) \ code.woboq.org 여기에 잘 나와있는데, 구조체 중 보아야할 곳은 두 개이다. struct _IO_FILE { int _flags; /* High-order wo..
너무 오랬동안 문제를 안풀어서 오랜만에 워게임 문제도 풀 겸해서 핵시텦 포너블 남은 문제 중 하나를 풀어봤는데, 역시 너무 오랜만에 그것도 힙 문제를 풀어서 그런지 라업 도움을 좀 받았다. 라업 보고 보길 잘했다는 생각이 든게, libc 릭을 할 방법을 도저히 못찾아서 라업을 본거였는데 이거는 한달 잡아도 못풀었을듯 새로운 방법을 알게되서 좋았다. 문제는 상당히 심플하다. 메뉴엔 malloc과 free 딱 두가지만 존재하고, double free bug가 발생하고 fastbin dup 취약점이 터지는 걸 알 수 있다. 요 문제는 상당히 자세히 설명해 놓은 분들이 많아서 자세한 설명이 필요하신 분들은 맨 아래에 적어놓을테니 그 곳에서 보는 것을 추천한다. exploit 시나리오 1. 0x80만큼의 mall..