hackingcamp22 2

[HackingCamp CTF 2021 : pwn] vuln 풀이 (출제자 풀이)

문제 풀이 환경 : ubuntu 16.04 내가 낸 문제이다. 감사하게도 많은 분들이 풀어주셨다. (풀어주신 분들 감사합니다.) 주어진 파일은 문제 바이너리 파일 하나 뿐이다. libc를 일부러 주지 않았다. 예전에 문제를 풀다가 libc파일이 있어야 하는데 없어서 엄청 당황했던 적이 있었다. libc가 없어도 libc database나 우분투 버전이 주어지면 libc파일이 없어도 풀 수 있다는 것을 알려주고 싶었다. (도커 파일이 주어져도 됨) Analysis size를 입력받는다. vuln 함수는 누가봐도 취약점이 터지게 생겼다. 사실 이 문제는 integer overflow가 터지는 문제를 풀고 감명받아서 만들었다. (무슨 문제인지는 비밀이다.) 그 감명받았던 문제도 똑같이 인자 타입이 int로 넘..

CTF/Write UPs 2021.02.25

[HackingCamp CTF 2021 : pwn] Secure Test 풀이 (언인텐)

문제 풀이 환경 : ubuntu 20.04 이번 해캠CTF 때 나왔던 문제이다. 우리 팀장님이 내신 문제인데, 내가 힙을 잘 몰라서 인텐으로 못풀고 언인텐으로 풀었다. ... 크로스체킹 때 언인텐 발견 못해서 죄송할 따름이다. (사실 익스보고도 이해를 못해서 체킹도 못했었다) 이 문제를 풀면서 내가 가진 구버전 IDA로는 디컴이 잘 안되가지고 IDA를 7.5로 업그레이드 시켰다.ㅎㅎ 주어진 파일은 libc 파일, 문제 바이너리 파일, c코드 파일인데 깜빡하고(?) c코드 파일은 보지 않고 풀었다. Analysis 일단 바이너리를 실행시켜보면 이런 느낌이다. 각 메뉴를 실행하면 아래와 같은 함수가 실행된다. vuln() safe() clean() vuln()부터 살펴보자. 16번째 줄에서 read 함수로 ..

CTF/Write UPs 2021.02.24