4번문제 페이지에 들어가면 문자열과 Password 입력 칸이 있다.

저 문자열을 해석하여 나온 값을 Password에 넣으면 되는 것 같다.


YzQwMzNiZmY5NGI1NjdhMTkwZTMzZmFhNTUxZjQxMWNhZWY0NDRmMg== 

이 문자열의 끝에 '='가 있는 것을 보니 base64로 디코딩 해야 할 것 같다.


https://www.base64decode.org/

이 홈페이지에서 저 문자열을 넣어 디코딩을 하면 c4033bff94b567a190e33faa551f411caef444f2 라는 문자열이 나온다.

Password에 디코딩한 문자열을 입력해 보았지만 문제는 풀리지 않았다.


c4033bff94b567a190e33faa551f411caef444f2 문자열은 영소문자+숫자의 문자가 40개로 이루어진 문자열이므로 SHA1 알고리즘으로 암호화 된 것 같다.


https://hashtoolkit.com/

이 홈페이지에서 c4033bff94b567a190e33faa551f411caef444f2 를 해독하면 a94a8fe5ccb19ba61c4c0873d391e987982fbbd3가 나오고
a94a8fe5ccb19ba61c4c0873d391e987982fbbd3를 한번더 해독하면 'test' 라는 문자열이 나온다.

test라는 문자열을 Password에 입력하면 문제가 해결된다.


'Security & Hacking > Wargame' 카테고리의 다른 글

[SuNiNaTaS] Forensic 15  (0) 2019.01.19
[SuNiNaTaS] Forensic 14  (0) 2019.01.13
[webhacking.kr] Challenge 14  (0) 2018.12.14
[webhacking.kr] Challenge1  (0) 2018.12.12
[webhacking.kr] Challenge 5  (0) 2018.11.24

소스 코드를 보면

script에 indexOf()라는 함수를 사용한다. 그리고 바로 밑 줄을 보면 이 함수 값의 *30을 한 값을 저 텍스트 박스에 넣으면 되는것 같다.

indexOf() 함수는 괄호 안에 있는 문자열의 위치의 값을 반환한다.

".kr"이라는 문자열이 있는 곳은 이 페이지의 url 주소 이다.

이 페이지의 url 주소는 http://webhacking.kr/challenge/javascript/js1.html 이므로

.kr의 위치는 첫 위치를 0부터 세기 때문에 17번째에 있다.

17 * 30 = 510 이므로 510을 넣어보면 


260100이라는 password값을 알려준다. 


이 패스워드 값을 AUTH에 넣어주면 문제가 해결된다!



'Security & Hacking > Wargame' 카테고리의 다른 글

[SuNiNaTaS] Forensic 15  (0) 2019.01.19
[SuNiNaTaS] Forensic 14  (0) 2019.01.13
[webhacking.kr] Challenge 4  (0) 2018.12.28
[webhacking.kr] Challenge1  (0) 2018.12.12
[webhacking.kr] Challenge 5  (0) 2018.11.24

+ Recent posts