CTF/웹해킹

[angstromCTF] shortcircuit - 웹해킹 / Javascript

SecurityMan 2023. 5. 17. 11:00

 

아주 간단한 웹해킹 문제이다.

 

문제페이지 주소만 주어진다.

 

반응형

 

 

문제페이지에 접속하면

 

이렇게 username, password 를 입력하는 칸이 있다.

 

 

F12를 눌러 개발자도구를 열어

 

자바스크립트 코드를 보면

 

username 에는 admin 이 들어가야하고,

 

password 에 들어간 값이 

 

chunk, swap 연산을 거쳐 

 

7e08250c4aaa9ed206fd7c9e398e2}actf{cl1ent_s1de_sucks_544e67e6317199e454f4d2bdb04d9e419ccc7f12024523398ee02fe7517fffa9251

 

이런 결과값이 나와야 한다.

 

결과값을 자세히 보면

 

actf{} 가 보이고,

 

함수 이름이 swap 인걸로 보아

 

뭔가 입력값을 잘라서 순서를 바꿔놓은것 처럼 보였다.

 

 

개발자도구의 콘솔 탭에서 실험을 해봤다.

 

첫번째 줄을 입력값으로 넣어서

 

swap(chunk(입력값)) 을 실행해봤는데

 

결과가 두번째 줄 같이 나왔다.

 

결과를 보니 입력값을 30글자씩 잘라서 배치를 바꾸는건데,

 

분리된 각 조각들이 저런 규칙으로 재배치되고 있었다.

 

배치되는 위치가 변경되지는 않는다.

 

 

알아낸 사실을 기반으로

 

문제에서 요구한는 출력값(둘째줄)이 나오려면

 

어떻게 입력(첫째줄)을 줘야하는지 역으로 알아냈다.

 

 

콘솔탭에서 검증해보니

 

올바르게 출력이 나왔다.

 

 

알아낸 입력값을 비밀번호로 입력하면 로그인이 된다.

 

문제의 플래그는 비밀번호를 그대로 제출하면 됐다.

반응형