메인함수의 모습이다

stage별로 나와 있다.



stage1 에서의 조건은 디코딩을 했을때의 문자열은 같은데


인코딩했을때의 문자열을 달라야 한다.


그래서 base64 충돌을 이용해서 stage1을 통과할수 있었다.



TjBfbTRuX2M0bDFfYWc0aW5fWTNzdDNyZDR5Oig=

TjBfbTRuX2M0bDFfYWc0aW5fWTNzdDNyZDR5Oii=

TjBfbTRuX2M0bDFfYWc0aW5fWTNzdDNyZDR5Oih=

TjBfbTRuX2M0bDFfYWc0aW5fWTNzdDNyZDR5Oij=




stage2 의 조건은 input을 2번받는데

input에서받는 두 문자열의 디코딩결과값은 같아야하는데

문자열의 길이는 달라야했다.


TjBfbTRuX2M0bDFfYWc0aW5fWTNzdDNyZDR5Oig==

TjBfbTRuX2M0bDFfYWc0aW5fWTNzdDNyZDR5Oig=


저 두 문장을 사용하여 stage2를 통과하게 되었다.



stage3에서는 팀원이 알려주었는데

엄청난 꿀팁이였던것같다.


head * 를 encode해서 입력하는것이다.


head명령어는 파일앞부분부터 확인하는 명령어입니다.


또 다른 방법으로는 커맨드인젝션으로 풀 수 있다고 한다.


커맨드인젝션을 공부해서 한번 stage3를 다시 풀어보겠다.




codegate서버가 닫혀서 플래그가 제대로 뜨지않았다.


다음에는 서버가 열려잇을때...


'Wargame - 고등학교 시절 가독성 주의 부탁드립니다.) > CTF' 카테고리의 다른 글

TamuCTF pwn1  (0) 2017.04.22
FIT-HACK CTF Connect 150  (0) 2017.04.14
EasyCTF  (0) 2017.03.22
EasyCTF Forensic - ManeEvent  (0) 2017.03.22
EasyCTF WEB - CookieBlog  (0) 2017.03.22