Web/Wargame
[Dreamhack] funjs
와븨
2022. 11. 16. 23:08
문제 사이트로 들어가보니 Find FLAG 입력창의 위치가 계속 바뀌고 있었다.
틀린 플래그를 입력하니 NOP! 이라는 문구가 나타난다.
개발자 도구를 확인하니 NOP!은 이미지임을 알 수 있었다.
=> 스크립트 활용
for (var i = 0x0; i < flag[_0x374fd6(0x17c)]; i++) {
if (flag[_0x374fd6(0x176)](i) == operator[i % operator[_0x374fd6(0x17c)]](_0x4949[i], _0x42931[i])) {} else {
text2img(_0x374fd6(0x185));
return;
}
}
개발자 도구 Element head 부분의 마지막 for문을 보면, _0x374fd6(0x17c)가 0x17c가 아닐 경우 리턴을 하고 있음을 알 수 있다.
즉, length가 36이 아닐 경우 리턴하고 있다.
콘솔창에 Element head의 main 함수를 입력하고 실행한다.
operator 값과 input을 같게 만드는 for문을 작성한 뒤 실행하면 플래그를 찾을 수 있다.
참고 블로그
https://not4dog.tistory.com/32
[CTF] Dreamhack funjs 문제 Write-up
문제) 입력 폼에 데이터를 입력하여 맞으면 플래그, 틀리면 NOP !을 출력하는 HTML 페이지입니다. main 함수를 분석하여 올바른 입력 값을 찾아보세요 ! (해당 문제는 Dreamhack CTF Season 1 Round #4에 출제
not4dog.tistory.com