안녕하세요. 오늘은 webhacking 42번 문제를 풀어보겠습니다.

홈페이지로 들어가 webhacking 42번을 눌러주세요.

음 download버튼이 있습니다. 한번 눌러 봅시다.

test.txt는 위와 같이 뜨는군요.

test.zip은 위와 같이 접근거부 당했습니다.

자 이제 소스를 한 번 봅시다.

주석처리된 부분을 보시면 test.zip의 패스워드는 오로지 숫자만으로 되어있다는군요.

그렇다면 test.zip을 받을 필요가 있습니다. 그러면 어떻게 해야 할까요?

자 본페이지로 돌아가서 관리자도구를 열어 봅시다. 열어서 삼각형 버튼을 눌러 쭉 훑어보면

아래와 같은 화면이 나옵니다.

txt의 download 링크는 down값이 dGVzdC50eHQ= 인 주소로 하이퍼링크가 되구요.

zip의 download링크는 접근거부 창이 뜨는 주소로 하이퍼링크가 되어있네요.

그렇다면 여기서 궁금증이 하나 생기죠.

dGVzdC50eHQ=가 도대체 뭘까요?

딱 봐도 소문자 대문자 숫자가 섞인걸 보아 인코딩된 문구라는 것을 알 수 있습니다. 

게다가 문구 뒤에 =가 붙어있기 때문에 base64로 인코딩 된 것을 알 수 있습니다.

그렇다면 base64로 디코딩 해 봅시다.

위의 주소로 들어가시면 base64가 있습니다.

디코딩을 하니 test.txt가 나오는군요.

즉 정리하면 down 값에 파일이름을 base64로 인코딩한 값을 넣으면 그 파일의 주소로 이동하게 된다 라고 해석이 되겠네요.

우리는 test.zip의 주소로 이동해야 하므로 test.zip을 인코딩하여 down에 넣어봅시다.

dGVzdC56aXA=란 값이 나왔군요. 그렇다면 down에 넣어봅시다.

변수에 값을 넣을때는 아래와 같이 주소뒤에 ?를 붙이고 넣어야 합니다.

엔터를 칩시다.

그러면 test.zip이 다운되는 것이 보입니다. 한번 열어 봅시다.

readme.txt가 보이네요. 보기를 위해 압축을 풀어 줍시다.

암호를 입력하라는군요. 아까 소스창에 적힌 것을 보면 암호는 오로지 숫자만으로 되어있답니다. 그런데 숫자로만 되어있다 해도 몇글자인지 모르니까 이건 뭐 별 소용이 없습니다.

그래서 zip파일의 암호를 풀어주는 프로그램을 써봅시다.

여기선 azpr프로그램을 사용해 보겠습니다.

다운받아서 열어봅시다.

열어서 위와 같이 해주시면 됩니다. 따로 설명이 없어도 다들 아시겠죠?

Zip-file부분엔 test.zip넣어 주시고 비번은 온리 숫자이므로 all digits 체크해주시고 start버튼을 눌러주시면 끝입니다. 정말 간단하지요,

해독이 완료되었습니다. 뜬 창을 보면 total passwords가 있는데 이것은 패스워드를 찾기 위해 대입한 숫자구요. 진짜 패스워드는 빨간 박스안에 있는 패스워드입니다.

알집에 입력해서 풀어봅시다.

주소가 하나 나오는군요. 주소를 입력해 봅시다.

패스워드가 나왔습니다. 이제 이 패스워드를 인증해봅시다.

웹해킹 홈페이지의 auth에 들어가 패스워드를 입력해 주시면 됩니다.

Submit를 눌러주시면

이렇게 뜹니다.

네 이것으로 문제풀이를 마치겠습니다.


'Webhacking' 카테고리의 다른 글

webhacking - 60번 문제  (0) 2015.09.25
webhacking - 20번 문제  (0) 2015.09.25
webhacking - 58번 문제  (0) 2015.09.18
webhacking - 61번 문제  (0) 2015.08.07
webhacking - 49번 문제  (0) 2015.08.07
Posted by englishmath
,