본문 바로가기
Wargame Write-Up/Webhacking.kr

[Webhacking.kr] (Web) 14번 풀이 (old-14)

by snwo 2020. 4. 1.

빈화면에 입력폼하나있다.


아무거나 입력해봤더니 wrong 이 뜬다.


<html>
<head>
<title>Challenge 14</title>
<style type="text/css">
body { background:black; color:white; font-size:10pt; }
</style>
</head>
<body>
<br><br>
<form name=pw><input type=text name=input_pwd><input type=button value="check" onclick=ck()></form>
<script>
function ck(){
  var ul=document.URL;
  ul=ul.indexOf(".kr");
  ul=ul*30;
  if(ul==pw.input_pwd.value) { location.href="?"+ul*pw.input_pwd.value; }
  else { alert("Wrong"); }
}
</script>
</body>
</html>

이 문제페이지의 소스다. input_pwd 값을 입력받고, check를 누르면 ck()함수가 실행된다.


[ ck ]

 

문제페이지 url 을 가져와 .kr 의 index를 ul 에 저장한다. (18)

ul값에 30을 곱해서 저장한뒤, input_pwd 값과 같으면 ?(ul * input_pwd) 로 이동한다.

 

ul=18 * 30 = 540

input_pwd 는 540 이 되어야한다.

540일때 ?(ul*input_pwd) = ?291600 으로 이동한다.


[주의]

 

간단한 문제이지만, 이 문제에서는 button 을 눌러야 ck() 함수가 실행된다.

습관적으로 엔터를 누르면, input_pwd 값만 전달이되고 ck()함수는 실행되지않게된다.

버튼을 직접 눌러서 값을 전달하자.