티스토리 뷰




이번 포스팅은 webhacking.kr 워게임 사이트 Challenge 4번 문제를 풀어보도록 하겠습니다.

Challenge를 풀어가는 순서는 번호 순이 아닌 점수 분배가 낮은 문제들부터 풀어나갈 예정입니다.


Challenge 4번을 푼 환경은 Windows 10, Chrome 그리고 추가로 필요한 웹 사이트를 이용하였습니다.


이번 포스팅에서 다룰 Challenge 4번은 아래의 접근 방법과 기초 개념을 필요로 합니다.


1. Encode - Base 64 이해

2. Hash - SHA-1 이해



이제 Challenge 4번을 본격적으로 풀어보도록 하겠습니다.



4번 문제 사이트로 입장하면 보이는 화면입니다.


회색 박스 내 알 수 없는 문자가 나열되어 있고, 아래는 Password를 입력하는 입력 텍스트박스와 제출 버튼만 존재합니다.


문자 나열의 가장 끝을 보면 "==" 으로 끝나는 것을 볼 수 있습니다. 이를 미루어 보아 Base64로 인코딩 되어 패딩이 추가되었음을 추측할 수 있습니다.



Base 64 Encoding에 대해 궁금하신 분들은 아래 포스팅을 참고해주세요.




Base 64로 인코딩 되었음을 추측하였으므로 인코딩된 문자열을 디코딩해보도록 하겠습니다.


webhacking.kr에도 자체적으로 제공하는 Base 64 인코더, 디코더가 있지만 저는 아래 사이트를 이용하였습니다.

(URL·Base 64·Hex Endoding/Decoding site - https://ostermiller.org/calc/encode.html)



4번 문제에서 주어진 문자열을 텍스트 박스 내에 넣고 Base 64로 Decode 하는 버튼을 눌러줍니다.



디코딩을 시키면 위 사진처럼 결과를 받을 수 있습니다.


Base 64 로 디코딩 한 결과를 보면 여전히 이해할 수 없는 문자의 나열이지만, 이 문자들이 40자이며 16진수로 이루어져 있는 것은 알 수 있습니다.


이를 통해 40자이며 16진수(2^4)인, 40 x 4 = 160bit 의 해시 함수임을 짐작할 수 있습니다.



(출처 : https://ko.wikipedia.org/wiki/암호화_해시_함수)


위의 해시 함수의 종류에서 160bit인 해시 함수는 RIPEMD-160, SHA-0, SHA-1이 존재하는데, 이 중에서 먼저 SHA-1으로 해독을 진행합니다.


아래 사이트를 이용해 SHA-1 해시 함수를 해독할 수 있습니다.

(SHA-1 Decryption site - https://www.hashkiller.co.uk/sha1-decrypter.aspx)




왼쪽 텍스트 박스에 해독할 문자열을 넣고 아래의 캡차를 입력해주면 우측의 텍스트 박스에서 해독 결과를 보여줍니다.


한 번 해독을 해보았으나 이전과 같이 16진수로 이루어진 40자의 문자열이 도출되었습니다.



같은 방식으로 좌측 텍스트 박스에 해독된 문자열을 넣고 한 번 더 해독을 진행해보겠습니다.



동일한 방식으로 해독을 진행하였더니 우측 텍스트 박스에서 영어 단어인 SHA-1 해독 결과를 볼 수 있었습니다.



해당 단어를 문제 사이트의 Password 란에 입력해 보겠습니다.



Password를 입력하고 제출 버튼을 눌러줍니다.




정답을 입력하여 Challenge 4번에 대해서 150점을 획득하였습니다.




Challenge 페이지로 돌아가면 4번 문제의 Score 150 을 획득하였음을 확인할 수 있습니다.



이번 포스팅 봐주셔서 감사합니다.


다음 포스팅에서 봐요 :)


공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
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 29 30
글 보관함