문제 설명 https://webhacking.kr/challenge/js-1/ Challenge 14 webhacking.kr 링크로 들어가면 14번 문제를 확인할 수 있다. 소스코드를 보러 가야겠다 ^_^ 소스코드 ① 패스워드를 입력하고 check 버튼을 클릭하면 ck함수가 호출된다. ② ck함수는 현재 주소에서 (.kr의 인덱스값 * 30)한 결과를 ul에 대입하고 ③ 패스워드값이 ul(.kr의 인덱스값 * 30)과 같으면 주소를 이동하면서 문제가 풀림을 알 수 있다. 콘솔창으로 ul 값을 확인하고 패스워드값으로 입력하면 끝!! 해결 콘솔창을 통해 ul값이 540임을 확인했다. 여기서 check 버튼 누르면 진짜 최종 끝 이제 패스워드로 540을 입력하면 14번 문제가 풀린다!
보안
문제 설명 https://webhacking.kr/challenge/code-3/ Challenge 12 webhacking.kr 링크로 들어가면 12번 문제를 확인할 수 있다. 문제를 파악하기 위해 소스코드를 확인해보았다. 소스코드 script 코드가 엄청 길다!! 또 스크립트 속의 코드를 자세히 보면 "처음부터 끝까지 이모티콘으로 작성" 되어 있다는 특징이 있었다. 이를 통해 스크립트 속 문장을 이모티콘으로 인코딩했음을 짐작할 수 있었다. 이모티콘으로 인코딩하는 것을 aaencode 방식으로 인코딩 했다고 말한다. 따라서 aaencode 방식으로 디코딩하여 암호화 하기 전 식을 알아내야 한다. 해결 aaencode 방식으로 디코딩 해서 암호화 하기 전의 식을 알아내면 이런 결과가 나온..
문제 설명 https://webhacking.kr/challenge/js-4/ Challenge 17 webhacking.kr 링크로 들어가면 17번 문제를 확인할 수 있다. 문제만 보면 전혀 모르겠다 ^^ 소스코드 패스워드를 입력하고 check 버튼을 클릭하면 sub함수가 호출되는 구조이다. 핵심은 script 내용이다. 긴 unlock값이 있고 밑에 sub함수가 정의되어 있는데 function sub(){ if(login.pw.value==unlock) { location.href="?"+unlock/10; } else { alert("Wrong"); } } 입력한 패스워드 값 = unlock → 현재주소+?unlock/10으로 이동 ① 패스워드 값으로 unlock값을 입력하면 원하..