보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
Summary Unsorted bin attack ROP Analysis login변수의 값이 있으면 rop를 할 수 있다. Exploit Unsorted bin attack으로 login변수에 값을 넣어줄 수 있다. Unsorted bin attack condition 공격자에 의해 Unsorted chunk를 생성 할 수 있어야 합니다. 공격자에 의해 Free chunk 영역에 값을 저장 할 수 있어야 합니다. 공격자에 의해 Free chunk 와 동일한 크기의 Heap 영역을 할당 할 수 있어야 합니다. exploit flow 2개의 Unsorted chunk 할당 첫 번째 free bk 를 타겟-16(64비트 기준)으로 overwrite free 청크 사이즈만큼 다시 할당. 공격 대상 영역에 ma..
Summary Thread Local Storage(TLS) 리눅스는 x86: gs, x86_64: fs 레지스터로 TLS를 관리한다. TLS란 쓰레드를 관리하기 위한 전역변수이며 해당 변수의 0번 째 인덱스에는 TCB(Thread Control Block)의 주소가 저장된다. TCB는 해당 쓰레드를 관리하기 위한 구조체. typedef struct { void *tcb; /* Pointer to the TCB. Not necessarily the thread descriptor used by libpthread. */ dtv_t *dtv; void *self; /* Pointer to the thread descriptor. */ int multiple_threads; int gscope_flag; u..
Summary 1byte overflow UAF로 풀었는데 dup으로 풀 수 있을듯. Analysis puts("[A]llocate Buffer"); puts("[F]ree Buffer"); puts("[B]anner"); puts("[E]xit"); return printf(">> "); 기능은 크게 2개로 나뉜다. Allocate chunk1(32) 할당. buffer에 입력을 받고 len(buffer)만큼 chunk2(mysize) 할당. ( len(buffer)가 16 이상일 경우, 길이가 16 미만이라면 chunk2를 할당하지 않고 chunk1에 기록.) input_buf_len 15: struct chunk1 { int *chunk2 = malloc(buf_len); int dummy; int..
- heap
- fastbin
- overflow
- TLS
- HackCTF
- srop
- glibc
- pwnable.tw
- exit
- pwnable
- oob
- pwable
- 본선가고싶다
- rt_sigreturn
- stack reusing
- tcache
- 해킹
- shellcoding
- codegate
- FSB
- fsop
- ebp change
- SQLi
- hacking
- fastbindup
- Total
- Today
- Yesterday