33-1번

소스코드를 확인하면 get방식으로 'hehe'를 보내면 되는거 같다.

그래서 get방식으로 “hehe”를 보내면 Wrong이 Next로 변하게 된다.
33-2번

이번에는 post방식으로 hehe와 hehe2를 보내야하는데 post방식은 get방식처럼 url에서 보낼수 없기 때문에 postman을 이용해 post 방식으로 보내준다.

그후 33.php를 웹사이트주소에서 6/뒤에 붙여넣어 https://webhacking.kr/challenge/bonus-6/33.php
를 입력하면 문제가 풀리고 다음문제로 넘어가게된다.
33-3번

Get 방식으로 나의 아이피주소를 보내는 것이니까 33-1번문제와 비슷한 방식으로 하면된다.
https://webhacking.kr/challenge/bonus-6/33.php?myip=211.36.142.229입력
33-4번

hint인 시간을 이용해 문제를 푸는 것인데 get방식을 이용해 password에 md5방식으로 암호화된 hint를 알맞은 시간에 넣는 문제이다!
33-5번

Get방식으로 imget을 post방식으로 impost를 cookie를 이름 imcookie로 만들면된다.


Get방식과 post방식으로 보내야하니까 오른쪽 사진과 같이 개발자도구 환경에서 코드를 조금 수정한다. 그럼 정답~~
33-6번


사진과 같이 test라는이름인 쿠키에 값을내 ip를md5로 암호화한 값을 집어 넣는다.
그 후 ‘kk’에는 힌트 뒤에 있는 나의 프로세서 정보를 md5로 암호화해 넣어준다.
faa19a42c7164fdbf07446c13ece784c 이것이 인코딩 한 값이다.
이 값을 ‘kk’인 곳에 대입하면 다음 문제로 넘어 갈 수 있다.
33-7번

If문 안의 코드를 보면 str_replace함수 때문에 .이 공백으로 치환되게 된다. 그 후 내 ip값을 서로 같다를 이용해 get방식으로 보내주면 문제가 풀리게 된다.
33-8번

코드를 보면 addr == 127.0.0.1dl 되면 문제가 풀린다. 그래서 이걸 get방식으로 보내주면 웹사이트주소 뒤에 php?addr=127.0.0.1을 입력하면 다음과 같이 next가 나온다.

33-9번

이 문제도 get방식으로 ana==answer를 보내면 되는것인데 여기서 answer은 97~122까지 2씩 증가하면서 for문을 도는 아스키코드들의 집합이다. 그래서 97, 99, 101….121이런식으로 나오는 모든 아스키코드 문자들의 값을 웹사이트 뒤에 php?ans=acegikmoqsuwy를 입력하면 답이 풀린다.
33-10번

<hr>
Challenge 33-10<br>
<a href=forfor.txt>view-source</a>
<hr>
<?php
$ip = $_SERVER['REMOTE_ADDR'];// ip호출하는 함수를 이용
for($i=0;$i<=strlen($ip);$i++) $ip=str_replace($i,ord($i),$ip);//str_replace함수를 이용해 for문과함꼐 지속적으로 치환을 하고
$ip=str_replace(".","",$ip);
$ip=substr($ip,0,10);
$answer = $ip*2;
$answer = $ip/2;
$answer = str_replace(".","",$answer);
$f=fopen("answerip/{$answer}_{$ip}.php","w");
fwrite($f,"<?php include \"../../../config.php\"; solve(33); unlink(__FILE__); ?>");
fclose($f);
?>
소스코드 분석 -> 내 ip를 이용해 ip를 치환하고 그 과정을 Php테스터에 넣어서 아래와 같은 값을 얻는다.
<?php
$ip = “211.36.142.224”;
for($i=0;$i<=strlen($ip);$i++) $ip=str_replace($i,ord($i),$ip);
$ip=str_replace(".","",$ip);
$ip=substr($ip,0,10);
$answer = $ip*2;
$answer = $ip/2;
$answer = str_replace(".","",$answer);
echo “answer ip/{$answer}_{$ip}”;를 php테스터에 넣고 돌리면answerip/27577553775_5515510755이 값이 나오는데 이 후에 answerip/27577553775_5515510755.php를 웹사이트 마지막에 입력하면 문제가 풀린다.
고찰: 33번 문제를 계속 풀다 보니까 get방식으로 사이트에 보내는것, post방식으로 사이트에 보내는것을 어떻게 하는지 알게 되었다. 또한 php테스터롸 같은 툴들을 어떻게 사용하는지 알게 되었고 마지막 33-10번 문제 같은 경우에는 다른 문제들은 get이나 post방식으로 서버와의 통신을 하여 문제를 푸는 방식이지만 10번은 주소를 이용해 문제를 푼다는 것에 많은 시간이 걸리고 솔직히 올바른 방법보다는 야매?로 푼 거 같다... 인내심이 많이 필요한 문제이다.
'Security > Web2 Hacking' 카테고리의 다른 글
| [WebHacking] suninatas 18번 (0) | 2022.04.21 |
|---|---|
| [WebHacking] webhacking.kr 32번 문제 풀이 (0) | 2022.04.21 |
| [WebHacking] webhacking.kr 24번 문제 풀이 (0) | 2022.04.21 |
| [WebHacking] webhacking.kr 17번 문제 풀이 (0) | 2022.04.21 |
| [WebHacking] webhacking.kr 6번 문제 풀이 (0) | 2022.04.21 |