Today Mini Learned :

기록하는 습관 들이기

ACTIVITY/WEBHACKING.KR (2017)

14/16/12

얌챠 2017. 9. 25. 14:33

03) 14번문제

 

문제를 들어가면 간단한 입력창 하나만 뜬다.

 

 

페이지 소스에서 scipt부분을 보면

function ck()

{

var ul=document.URL;

ul=ul.indexOf(".kr");

ul=ul*30;

if(ul==pw.input_pwd.value) { alert("Password is "+ul*pw.input_pwd.value); }

else { alert("Wrong"); }

}

이렇게 되어있는데 모르는 부분이 많아서 한줄한줄 찾아보았다.

 

 

var ul=document.URL; - ul이라는 변수에 페이지 주소를 입력하고 

ul=ul.indexOf(".kr"); - 페이지 주소가 들어가있는 ul에서 .kr이 앞에서 몇번째글자인지를 구해서 ul에 들어가고

ul=ul*30; -  30을 곱한다.

 

 

그것을 창에 넣어주면

http://webhacking.kr/challenge/javascript/js1.html

17*30=510

 

패스워드가 260100으로 나온다.

이것을 auth에 입력하면 문제가 풀린다.

 

-----------------------------------------------------------------------------------------------------------

04) 16번문제

 

들어가면 큰 노란색 별과 작은 노란색 별이 뜬다. 그냥 아무 키나 입력하면 랜덤 색깔의 작은 별이 옆으로 쭉 생긴다.

 

역시 모르는 코드가 많아 찾아보았다.

윗부분에 onkeypress=mv(event.keyCode) 가 있어서 키코드에 대해서 알아보았다.

그리고 아랫쪽을 보니 cd(키코드)가 124일때 (124인걸 입력했을 때) 무언가 창이 뜨면서 옮겨가는 것 같았다.

 

구글링해보니 |키가 124의 키코드를 가지고 있었고 이것을 입력하니까 키가 떴다.

 

-----------------------------------------------------------------------------------------------------------

05) 12번문제

 

문제를 들어가면

javascript challenge

라고 뜬다.

 

 

이 역시 코드가 무엇을 의미하는지 몰라 찾아보았다.
eval이 worktimefun이라는 자바스크립트를 실행하는 코드라고 한다. 그리고

String.fromCharCode부분을 보니 이게 괄호안의 글자를 아스키 코드로 변환하라는 뜻이었고 콘솔창에 넣으니까 이것을 변환한 글자가 코드로 나왔다.


코드를 보니 ck가 해석한거랑 일치할 시 패스워드를 띄운다는 뜻인데 코드를 살짝 수정해서 콘솔창에 넣으면 이것을 그냥 해석한 결과가 나온다.


{alert("Password is "+ck.replace("=",""));}

 

이부분이 해석한 부분에서 =를 빈공간으로 대체한것이 결과라고 뜨는 알림창인데 결과에서 그냥 직접 넣으면된다.

'ACTIVITY > WEBHACKING.KR (2017)' 카테고리의 다른 글

38/47/52  (0) 2017.11.18
24/26/42  (0) 2017.11.05
1/4/6  (0) 2017.10.23
10/20/54  (0) 2017.10.16
Register/15/17  (0) 2017.09.18