2023 코드게이트 미스크 문제이다.
따로 문제 파일들은 제공해주지 않았다.
burp suite로 해당 사이트에 들어가면서 분석을 하다가 login.py라는 파일을 발견하였다.
파일은 id값이 codegate 이고 resultstring을 거꾸로 돌린 값을 입력하면 로그인이 되도록 구현되어 있다. 해당 resultstring은 data.js 파일에 있었다. 이 파일을 console에 업로드 한 뒤 resultString을 찍어보면 다음과 같이 나온다.
즉 id는 “codegate” 비밀번호는 check1p2p3p4p5p6p을 거꾸로 한 “p6p5p4p3p2p1kcehc”를 입력하면 로그인이 된다.
로그인을 하면 다음과 같은 화면이 출력된다.
이번에도 script 파일들이 있기 때문에 하나씩 열어보았다.
그러다가 notes.py라는 파일에서 수상한 부분이 발견되었다.
이 부분에서 반복문을 돌리는데 enc2_value에 연산을 한 뒤에 i 값이 5일 때 tmp 디렉토리에 enc2_value의 값을 find it 문자열과 함께 추가하는 것을 알 수 있다. 즉 6번째 연산과정의 결과를 보기 위해서 로컬로 파일들을 다운한 뒤에 로컬에서 연산을 돌려주었다.
그리고 i값이 5가 될 때 해당 값을 보고싶기 때문에 content에 find it 문자열을 더하는 부분아래에 alert(enc2_value)를 포함시켰다.
로컬에서 접속하면 해당 결과가 나오므로 flag 포맷에 넣으면 flag는
codegate2023{RmpTptInlhpiklcighhiSncQimPkqlgighniklxi} 이다.
'CTF > 2023 Codegate Junior Division' 카테고리의 다른 글
cryptGenius - Crypto (0) | 2023.06.26 |
---|---|
Librarian - Pwnable (0) | 2023.06.26 |
vspace - Reversing (0) | 2023.06.26 |