다음 URL에 들어가면 문제를 풀 수 있는 사이트가 나온다. 대충 봤을때는 PASSWORD를 알아내 인증을 하면 될 것 같다. 코드를 보니 크게 눈에 띄는 건 없다. 그냥 보여지는 것 처럼 패스워드 값 넣으면 전송하는 로직이 끝이다. 일단 key값과 관련된 js 파일 하나가 보인다. 코드를 확인해봤다. 일반적인 json 전송코드인데 key값을 날릴 때 debug라는 파라미터가 주석처리되어 있는게 보인다. 아무거나치고 날려보자. js 파일에서 주석처리된 debug 파라미터 없이 전송되고 있다. 응답값을 보면 별다른 특징은 보이지 않는다.
첫 번째 문자로 A가 입력됬을 때 눈에띄게 시간이 오래 걸린게 보인다. 여기서 서버가 요청한 키 값을 한글자씩 비교해서 정답인지 확인하는 로직이라고 생각했고 그럼 정답과 가까워질 수록 시간이 점점 오래 걸리게 될 거라고 생각했다. 이를 토대로 brute forcing 하는 코드를 짜서 돌려봤다. 잘 나온당. |
'CTF > Writeup' 카테고리의 다른 글
Secuinside 2013 PE time Write up (0) | 2018.01.20 |
---|---|
Hack.lu CTF 2015: Module Loader Write up (0) | 2018.01.20 |
Hack.lu CTF 2014: ImageUpload Write up (0) | 2018.01.20 |
Hack.lu CTF 2014: Killy The Bit Write up (0) | 2018.01.20 |
Hack.lu CTF 2013: Robots Exclusion Committee write up (0) | 2018.01.20 |