33번은 문제가 10개나 됩니다..



1번




소스를 확인하시면 GET으로 "hehe" 값이 전송되면 <a>태그가 활성화 됩니다.

URL 뒷 부분에 ?get=hehe 를 전송하면 해결!



2번



이번에는 POST로 "hehe"와 "hehe2"의 값을 보내면 됩니다.



간단하게 개발자 모드에서 form태그를 통해서 해당 값을 보낼 수 있습니다.




3번


$_SERVER[REMOTE_ADDR]에는 현재 자신의 IP주소가 기록되어 있습니다. (외부로 나가는 IP)

GET의 "myip"라는 이름으로 전송하면 성공하게 됩니다.

(IP주소는 webhacking.kr 사이트에서도 확인 가능)



4번



현재 시간을 md5()로 암호화하여 전송을 하면 됩니다.

hint로 현재 시간을 알려주어서 해당 값을 제시간에 맞게 전송하면 해결됩니다. (타이밍..중요)



하지만 타이밍 맞추기 쉽지 않기 때문에 python을 이용해서 문제를 해결했습니다.

시간을 +1한 이유는 서버에 시간과 제 PC의 시간에 차이가 있기 때문입니다.


해당 URL로 바로 이동을 하지는 못하나 res.text로 소스를 가져오기 때문에 URL을 알아낼 수 있습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
import requests
import time
import hashlib
 
url="http://webhacking.kr/challenge/bonus/bonus-6/l4.php?password="
cookies= {'PHPSESSID':'YourSesseionValue'}
 
time_ = str(round(time.time()+1)).encode('utf-8')
time_md5 = hashlib.md5(time_).hexdigest()
payload = url+time_md5
 
res = requests.get(payload, url, cookies=cookies)
print(res.text)
cs




5번


GET/POST/COOKIE를 모두 필요로 합니다.

cookie값은 개발자 도구에서 "imcookie"값을 생성해주면 됩니다.


GET과 POST동시에 보내려면 form태그를 post방식으로 설정하고 action 옵션에 GET요청을 하듯이 작성해 주면 됩니다.



6번




쿠키 값에 자신의 IP를 md5한 값을 넣고 POST로 Agent값을 md5하여 전송하면 됩니다.



친절하게 HINT로 AGENT 값을 알려줬습니다^^




7번


IP의 주소에 '.'을 없애고 GET으로 IP=IP를 요구합니다.

EX) 10.10.10.10

?10.10.10.10=10101010



8번


단순히 GET으로 ?addr=127.0.0.1 만해주면 성공하게 됩니다.



9번


chr()함수는 ascii code값을 문자로 바꿔주는 함수입니다.

97~122는 a~z의 값의 ascii code 값이므로 ace...이런 식으로 홀수 자리의 알파벳만 ans에 보내주면 됩니다.



10번


자신의 ip를 가지고 for문을 돌면서 i값을 ord($i)한 값으로 바꿔줍니다.

ord()는 문자의 ASCII CODE값을 나타냅니다.


여기서 하나의 의문이 생길 수 있습니다.

만약 $ip='10.10.10.10'이면 strlen($ip)의 값은 11입니다.

그렇다면 for문을 총 12번 수행할 것이라고 생각할 수 있는데 for문 안을 잘 보면 $ip값이 수정되는 것을 볼 수 있습니다.

$ip의 값이 수정됨에 따라서 strlen($ip)의 값도 변경되기 때문에 for문은 11번만 수행하지 않고 그때그때 길이를 재서 확인하게 됩니다.

이점을 주의해서 문제를 푸셔야 합니다.


물론 php online compiler를 통해서 간단하게 추출해 낼 수 있습니다.

$ip값과 $answer값을 얻었으면 URL을 통해 해당 문서에 접근할 수 있습니다.



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

[webhacking.kr] prob 38  (0) 2018.12.06
[webhacking.kr] prob 34  (0) 2018.12.06
[webhacking.kr] prob 32  (0) 2018.12.05
[webhacking.kr] prob 27  (0) 2018.12.05
[webhacking.kr] prob 26  (0) 2018.12.05

+ Recent posts