문제로 들어가봅시다 :D
문제로 들어가보니 입력란만 덩그러니 있습니다!
일단 소스코드도 볼까요 ㅎㅎㅎ?
소스코드 보니 무언가가 있네요 :D
해석해보면 다음과 같습니다!
var ul=document.URL | ul 변수에 URL을 저장 |
ul=ul.indexOf(".kr") | ul 변수에 ".kr" 문자열이 있는 위치를 ul 변수에 저장 |
ul=ul*30; | ul 변수에 30을 곱한 후 다시 저장 |
if(ul==pw.input_pwd.value) {location.href ~ } | ul 변수와 입력값이 같으면 location.href 로 이동 |
else { alert("Wrong"); } | 틀리면 Wrong 문자열의 경고 메세지 출력 |
indexOf 함수는 해당 문자열의 위치를 저장합니다 :D
(자세한 사항은 밑의 사이트에서 공부하시길 바랍니다!)
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf
String.prototype.indexOf()
indexOf() 메서드는 호출한 String 객체에서 주어진 값과 일치하는 첫 번째 인덱스를 반환합니다. 일치하는 값이 없으면 -1을 반환합니다.
developer.mozilla.org
ul 변수에는 "https://webhacking.kr/challenge/js-1/" 이 들어있죠!
".kr"은 위의 문자열에서 19번째 위치에 해당되있는게 보이실 겁니다 ㅎㅎㅎ
그럼 19가 저장이 될까요?
indexOf는 첫 위치를 0으로 인식하기때문에 18이 저장이 됩니다!
그럼 18*30 = 540 이겠죠 ㅎㅎㅎ?
540을 입력해볼까요 :D ?
쨘! 쉽죠 :D
해킹문제라고 하기엔.. 음 뭔가 아쉽네요 ㅎㅎㅎㅎ
이만 14번 문제 풀이였습니다 :D
'CTF > Webhacking.kr' 카테고리의 다른 글
Old - 18 (score:100) (0) | 2020.02.12 |
---|---|
Old - 17 (score:100) (0) | 2020.02.10 |
Old - 16 (score:100) (0) | 2020.02.09 |
Old - 06 (score:100) (0) | 2020.02.03 |
Old - 15 (score 50) (0) | 2020.01.31 |