<워게임_Webhacking_web_old-14>
https://webhacking.kr/challenge/js-1/

1. 접속하니 입력칸 하나와 check 버튼이 있었다.

2. 바로 페이지 소스코드를 확인해봤다.
입력칸에는 어떤 pw(비밀번호)를 입력해야하는 것 같다.
script 부분을 자세하게 살펴보자.
function ck() {
// 현재 문서의 URL을 가져온다.
var ul = document.URL;
// URL에서 ".kr" 문자열의 인덱스를 찾는다.
// 만약 ".kr"이 없으면 -1을 반환한다.
ul = ul.indexOf(".kr");
// 인덱스 값을 30배로 만든다.
// 만약 ".kr"이 없다면 ul은 -30이 된다.
ul = ul * 30;
// 폼에서 입력된 비밀번호와 계산된 ul 값을 비교한다.
// ul과 입력된 비밀번호가 같으면 조건이 참이다.
if (ul == pw.input_pwd.value) {
// 입력된 비밀번호가 맞으면 브라우저의 URL을 수정하여 페이지를 리다이렉트한다.
// 리다이렉트 URL은 "?"+(ul * 입력된 비밀번호)로 설정된다.
location.href = "?" + (ul * pw.input_pwd.value);
} else {
// 비밀번호가 틀린 경우 "Wrong"이라는 경고 메시지를 표시한다.
alert("Wrong");
}
// 기본 폼 제출 동작을 막기 위해 false를 반환한다.
return false;
}
결론 : 비밀번호 = URL에서 ".kr" 문자열의 인덱스를 찾아 그 인덱스 값에 30을 곱한 것

3. 콘솔창에 ".kr"의 인덱스 값을 찾기 위한 코드를 입력하였다.
Index of .kr : 18
따라서 pw = 18 * 30 = 540


4. 540을 입력했더니 풀렸다~!
해결 완!!👊🏻 쉽게 풀었다!
'SWUFORCE 워게임👊🏻' 카테고리의 다른 글
| [Webhacking] web ; old-16 (1) | 2024.09.24 |
|---|---|
| [Dreamhack] LEVEL 1 ; web ; simple_sqli_chatgpt (0) | 2024.09.24 |
| [Webhacking] web ; old-01 (0) | 2024.08.10 |
| [Dreamhack] Beginner ; web ; web-misconf-1 (0) | 2024.08.06 |
| [SuNiNaTaS] web ; 04 (0) | 2024.08.06 |