Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 시스템
- 웹해킹
- XSS
- WarGame
- 소프트웨어보안
- 웹
- 네트워크보안
- dreamhack
- 워게임
- 해킹
- CodeEngn
- network
- Web
- reversing
- 네트워크
- 시스템해킹
- System
- webhacking
- hacking
- 순서도
- bee-box
- 리버싱
- Webhaking
- TCP
- 알고리즘
- ftz
- 모의해킹
- 드림핵
- 소프트웨어
- 비박스
Archives
- Today
- Total
Without a Break
[Dreamhack] funjs 본문



문제 사이트로 들어가보니 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
'Web > Wargame' 카테고리의 다른 글
[Dreamhack] error based sql injection (0) | 2022.11.22 |
---|---|
[Dreamhack] blind sql injection advanced (0) | 2022.11.17 |
[Dreamhack] login-1 (0) | 2022.11.16 |
[Dreamhack] session (0) | 2022.11.16 |
[Dreamhack] simple-ssti (0) | 2022.11.12 |