목록전체 글 (11)
binee::
defcon ctf는 언제나 어려웠는데, 이번에도 어렵게 느껴졌다. 그렇게 꼬아놓지도 않았는데, 엄청 고생한 거 같다. baby-re는 최근에 애용하고 있는 z3를 잘 이용하면 풀 수 있는 문제이다. 풀고나서 보면 정말 간단한 문제이다. 총 13번의 입력을 받는다. 그리고 결과 값으로 wrong 또는 키값을 출력하는데, 키값을 출력하는 조건을 확인하는 CheckSolution함수가 IDA로 디 컴파일이 안 된다. 오류 메시지는 function frame is wrong이라고 뜬다. 그래서 graph view 모드로 확인해보니까 뭔가 엄청 길다... 그런데 핸드레이 못할 만큼 긴 것은 아닌 거 같아서 핸드레이로 풀려고 했는데. 중간에 쓰레기 값때문인 것으로 추측하고 해서 제거를 시도했다. 아래 처럼 쓰레기..
TU CTF 2016라고 처음 참가해보는 대회인데,개인적으로 실력에 알맞았던 대회였다.딱 대학교 동아리가 참가하기 좋은 난이도 였던 것 같다. CTF 준비하는 팀원들도 적당한 난이도에 재미를 느끼면서 풀었던 것 같다.배점이 큰 500점 2문제를 모두 풀어서 만족스러운 대회였다. 팀원들이 맘잡고 했으면 10위권 안에 들었을거 같은데,끝까지 하지 않았던 점이 아쉽다... 위에는 푼 문제들이고, 나는 pwn과 rev만 풀었다.pwn과 rev 문제 중에서 영양가 있는 문제만 풀이를 쓸 예정이다. 먼저 Wo0부터 문제 풀이를 할건데,Wo0는 총 3문제로 나뉘어져있다.동일 소스코드지만, 취약점이 발생하는 소스가 조금씩 다르다.점수가 올라 갈수록 exploit 하기 쉬운 취약점을 수정하여,다른 취약점을 활용해야하는 ..
낮은 스코어 답게 쉽게 풀었지만,환경변수 debug를 이용하지 않았으면 빨리 풀지 못 했을 거 같기도 하다.use after free 문제이다. Binary 분석 unix_time_formatter 바이너리를 확인 해보면 unix_time_formatter: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=5afd38988c61546c0035e236ce938af6181e85a6, stripped 64bit elf 파일이고 특이한 점은 없다. Program Logic 분석. 아래는 main함수의 hex-xay 결과다. 위 그림처..