Profile

머리정리하는곳

c2w2m2

[Sunshine CTF 2018] Hexalicious

menu_input 함수에서 <=0xb 꼴로 필터링 하는데, 이때 0 이 필터링 되지 않는다.


그래서 0번 메뉴를 선택하게 되면, sscanf의 두번째 인자가, 처음에 입력하는 이름이 들어가게 된다.


이를 이용해서 format string attack을 진행해 주면 되는데, 일반적인 %n 을 쓰는것 보다,


%123123$d 꼴로 %d를 이용해 진행해 주면, 스택상 포인터 안에 임의쓰기가 가능해 진다.


이렇게 진행하는게 훨씬 편하다 (grin)~

 

그래서 data를 flag 주소로 바꾸고 8글자씩 읽어오면 덴다



'Pwnable' 카테고리의 다른 글

strncmp  (0) 2018.04.14
61byte reverse shellcode  (0) 2018.04.11
[SwampCTF 2018]  (0) 2018.04.01
[Securients 2018]  (0) 2018.03.26
[angstrom2018] hellcode  (0) 2018.03.22