티스토리 뷰
이번 포스팅은 webhacking.kr 워게임 사이트 Challenge 14번 문제를 풀어보도록 하겠습니다.
Challenge를 풀어가는 순서는 번호 순이 아닌 점수 분배가 낮은 문제들부터 풀어나갈 예정입니다.
Challenge 14번을 푼 환경은 Windows 10, Chrome을 사용하였습니다.
이번 포스팅의 Challenge 14번 문제는 아래 접근 방법과 기초 개념을 필요로 합니다.
1. HTML/PHP 코드 이해
이제 Challenge 14번을 본격적으로 풀어보도록 하겠습니다.
14번 문제 사이트로 입장하면 보이는 화면입니다.
문제 페이지에는 입력을 받을 수 있는 텍스트 박스와 check 버튼만이 존재합니다.
먼저 14번 문제 페이지의 코드를 보도록 하겠습니다.
페이지 코드를 보면 function ck() 함수를 볼 수 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | var ul=document.URL #ul에 doucument.URL 값을 넣어줌, document.URL는 현재 URL을 의미 ul=ul.indexOf(".kr"); #indexOf() 함수를 사용하여 ".kr"이 시작하는 위치를 ul에 저장 ul=ul*30 #ul x 30 의 값을 ul에 저장 if(ul==pw.input_pwd.value) alert("Password is"+ul*pw.input_pwd.value); #ul 값과 pw.input_pwd.value 값 #즉 입력값이 같으면 "Password is [ul*pw.input_pwd.value]값" 이라는 키값을 알려주는 alert 창을 띄워줌 else alert("Wrong"); #ul과 입력값이 다를 때는 alert로 "Wrong" 을 띄워줌 | cs |
코드를 봤을 때, ul 값을 알아야한다는 것을 알 수 있습니다.
코드에서의 ul 값은 ".kr" 문자열이 시작하는 위치값으로, 아래 그림을 보시면 값을 알 수 있습니다.
문제 사이트의 url이 http://webhacking.kr/challenge/javascript/js1.html 로 시작하는 h를 0으로 시작하면 .kr의 문자열의 시작점은 17임을 알 수 있습니다.
코드의 16라인을 보시면 ul 값에 30을 곱하는데, ul은 17로 17x30=510 의 값을 도출할 수 있습니다.
도출된 510 을 14번 문제 페이지의 텍스트 박스에 넣어주고, check 버튼을 눌러주면 사진처럼 "Password is _________" 라는 alert 창이 뜨게 됩니다.
블러처리 된 패스워드 값을 webhacking.kr 의 Auth 에서 인증을 받아줍니다.
14번 문제에서 받은 패스워드 값을 Auth 페이지에서 Flag 인증을 해줍니다.
인증을 성공적으로 진행하면 Challenge 14 를 해결했다는 alert 창을 볼 수 있습니다.
Challenge 페이지로 돌아가면 14번 문제의 Score 100 을 획득하였음을 확인할 수 있습니다.
여기까지 봐주셔서 감사합니다.
다음 포스팅에서 봐요 :)
'Challenge > webhacking.kr' 카테고리의 다른 글
[webhacking.kr] Challenge 16번 문제 (1) | 2018.09.10 |
---|---|
[webhacking.kr] Challenge 15번 문제 (0) | 2018.09.05 |
[webhacking.kr] Challenge 6번 문제 (1) | 2018.09.04 |
[webhacking.kr] Challenge 4번 문제 (3) | 2018.08.22 |
[webhacking.kr] Challenge 1번 문제 (0) | 2018.07.07 |
- Total
- Today
- Yesterday
- 백준 코딩
- 백준 알고리즘
- webhacking
- 백준
- Ubuntu 18.04
- github
- 구글 애드센스 설치
- 구글 애드센스 후기
- tistory blog
- 우분투 18.04
- Python 언어
- ubuntu 18.04 LTS
- GIT
- ubuntu
- Google Adsense
- 구글 애드센스
- 구글
- 구글 애드센스 승인
- Git Bash
- C 언어
- 승인 후기
- C 코딩
- c
- 웹해킹
- python
- 우분투
- webhacking.kr
- Oldzombie
- python 코딩
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |