본문 바로가기
Wargame/webhacking.kr

webhacking.kr 42번

by morae23 2019. 1. 29.

42번 문제를 열어보면 다음과 같은 화면을 볼 수 있다.

test.txt와 test.zip이 존재하는데, test.txt는 정상적으로 다운로드 되지만 test.zip의 경우 클릭하면 “Access Denied”가 출력되며 다운로드할 수 없다.

 




 



 

이 때, test.txt를 보면

“?down= “이후의 문자열이 base64로 인코딩 된 것으로 추정된다.

 

 





 

 

실제로 dGVzdC50eHQ= 을 디코딩하면 아래와 같이 test.txt가 나오는 것을 볼 수 있다.

 

 





 

 

따라서 test.zip을 base64로 인코딩하여

?down=[encoded "test.zip"]

과 같은 형태로 입력하면 다운받을 수 있을 것으로 추정된다.


test.zip을 인코딩하면 아래와 같다.

 

 





 

 

이렇게 입력하면 test.zip을 얻을 수 있다.

 





 


 




 

하지만 test.zip을 unzip하기 위해서는 패스워드가 필요하다.

이를 위해 kali에 기본적으로 내장되어 있는 fcrackzip을 이용하여 패스워드를 알아낼 수 있다.

 



 





 

 

위에서 index.php의 주석을 보면 패스워드가 모두 숫자로 이루어져있다는 힌트를 얻을 수 있다.

따라서 –c 옵션에 1을 지정하고 (aA1!: 중에서 숫자를 의미하는 1 입력)

-l 옵션을 이용하여 우선 길이를 10자로 제한해 준다.

그 뒤 –u 옵션을 주면 위와 같이 패스워드를 얻을 수 있다.

 


 




 

이렇게 얻은 패스워드로 unzip을 수행한 뒤,

readme.txt를 읽으면

http://webhacking.kr/challenge/web/web-20/good.html

을 얻을 수 있다.

 


 





 

위 페이지에 접속하면 플래그를 얻을 수 있다.

 


 



 

 



 



'Wargame > webhacking.kr' 카테고리의 다른 글

webhacking.kr 61번  (0) 2019.01.29
webhacking.kr 59번  (0) 2019.01.29
webhacking.kr 20번  (0) 2019.01.29
webhacking.kr 1번  (0) 2019.01.29
webhacking.kr 23번  (0) 2019.01.29

댓글