케이쉴드 주니어/웹 해킹

Webhacking.kr old 14번 -1분 정리-

노란배추잎 2025. 4. 7. 19:08

입력창과 check 버튼이 있다. 

 

 

 

입력창에 숫자나 입력을 해보았다. alert 창에 wrong문자가 출력이 되는 것을 확인할 수 있다.

 

 

 

음... 개발자 도구를 열어서 코드를 확인해 보자 

 

 

입력창 데이터를 입력후 chek 버튼을 누르게 되면 ck()라는 함수가 실행이 된다. ck() 함수에 관한 자세한 로직은 function ck()에서 확인이 가능하다. 

 

코드분석 전에  먼저 document.URL indexOF()에 대해서 자세하게 알아보자 document.URL를 통해서 현재 페이지의 주소를 가져올 수 있고. indexOF() 함수는 indexOF안에 문자가 문자열의 몇 번째에 있는지 알 수 있게 된다.

 

document.URL을 콘솔창에 실행을 해보면 "https://webhacking.kr/challenge/js-1/?291600"  주소가 나오는 것을 확인할 수 있고 indexOf(.kr)은 .kr문자가 문자열에 몇 번째 위치하고 있는지 할 수 있다. 콘솔창을 열어 확인해 보면 18 번째임을 확인가능하다.

 

 

따라서 최종적으로 18 x 30 540의 수가 ul의 값에 들어가게 되는 것을 확인할 수 있다.

 

if(ul == pw.inpurt_pwd.value) 코드를 보면 알 수 있듯이  ul 변수의 과입력창의 입력하는 값이 같게 되면 if 문에 걸려 if 문에 걸려있는 로직이 실행이 되게 된다. ul의 값을 우리가 540 임을 알고 있으므로 입력창에 540이라는 수를 입력을 하게 되면 된다.