Defense - Dfa(100 pts)
Dfa 문제는 1개의 취약점을 가진 소스를 던져준다. 이 소스에서 취약점을 발견하여 패치 한 후 서버로 패치된 소스를 넘기면 플래그를 얻을 수 있다. 일반적으로 스택이나 힙에서 발생하는 취약점의 경우 길이에 관련된 경우가 많기 때문에 node를 추가하거나 삭제하는 부분에서의 길이 검증 루틴에서 취약점이 발생할 것이라 생각하고 add_node 함수 부분에서 linebuf 변수의 길이를 0x100에서 0x1000으로 늘려주었다. 그리고 아래와 같은 페이로드를 작성하여 플래그를 획득할 수 있었다.
#coding: utf-8 |
payload.py
FLAG : SCTF{simple patch tutorial}
'CTF > Samsung CTF 2017' 카테고리의 다른 글
[SCTF 2017] Attack - Letter to me(300 pts) (0) | 2017.07.24 |
---|---|
[SCTF 2017] Coding - Buildingblocks(250 pts) (0) | 2017.07.24 |
[SCTF 2017] Reversing - Easyhaskell(200 pts) (0) | 2017.07.24 |
[SCTF 2017] Attack - Readflag(100 pts) (1) | 2017.07.24 |