아이슬리 과제

24-1 워게임2 webhacking.kr 33

송샘물 2024. 3. 13. 00:44

* 해당 문제는 단계별 문제를 전체적으로 해결해야 플래그를 얻을 수 있다.

 

33-1

소스코드를 확인해본다. 

get형식으로 hehe를 전달하면 next 링크를 보여주는 것 같다. 

 

url에 ?get=hehe 를 입력해서 next로 넘어간다. 

 

next가 뜬 것을 확인할 수 있다.


 

 

33-2

로 넘어간다. 

post 형식으로 post=hehe와 post2=hehe2를 동시에 전달할 수 있으면 next로 넘어갈 수 있을 것 같다. 

Burp Suite를 통해 post 형식으로 전달해준다. 

화면의 change request method를 통해 get 전송 방식을 post 방식으로 바꿔준다. 

 

맨 아래에 post=hehe&post2=hehe2 를 입력해준다. 

 

change body encording 눌러준 후 전송하면 next로 넘어갈 수 있다. 

 


33-3

get 방식으로 myip가 현재 사용자의 ip와 일치하면 next로 넘어갈 수 있는 것 같다. 

 

url에 ?myip=본인ip 을 전달해주면 next로 넘어갈 수 있다. 

https://www.myip.com/#google_vignette

 

Check your IP address | MyIP.com

For inquiries or feedback please get in touch at:

www.myip.com

 


 

33-4

hint : 1709969660

현재 시간과 md5 해싱한 값이 같으면 다음, 다르면 힌트로 현재시간을 알려준다. 

 

힌트에 있는 시간은 유닉스에서 시간을 표현하는 방법으로 1970년 1월 1일부터의 시간을 나타낸다. 

힌트에 적당한 숫자를 더한 후(+30초) 그 사이에 해시값 생성 사이트를 통해 해시값을 생성해 준다. 

30초 이후에 정확하게 get방식으로 url에 패스워드를 입력하면 4번 문제를 해결할 수 있다. 

 

 


 

33-5

버프스위트로 imget=1, impost=1, cookie : imcookie=1; 각각 입력해준다. 

(post 방식으로 변경 후 입력해준다.)

 

 


 

33-6

ip해싱, user_agent 해싱-> 틀리면 힌트로 user_agent를 보여준다. 

해싱 값을 Burp Suite를 통해서 전달해준다. 

 


 

33-7

ip주소 가져와서 .제거한 후 ip주소에 다시 넣어준다. 

ip 주소가 일치하면 next로 넘어갈 수 있다. (get방식 사용)

 

 

 


 

33-8

get방식으로 addr이 127.0.0.1과 일치하는지 체크 후 전달한다. 

 

 

 


 

33-9

아스키코드값97~122까지 반복문을 돈다. 해당 문자값을 answer 변수에 넣고 ans이 answer과 일치하는지 체크한다. 

a부터 2씩 더해서 문자를 완성한다. 

?ans=acegikmoqsuwy

 


 

33-10

사용자의 ip를 가져온다

아스키코드값으로 변환한다.

.를 제거한다

ip를 앞에서부터 10글자만 남긴다.

ip를 2곱하고 2로 나누어준다. 

answer에서 .를 제거한다

answerip 디렉토리 내에 생성할 파일의 이름을 결정한다. answer과 ip를 조합하여 생성한다.

"../../../config.php" 파일을 포함하고, "solve(33)" 함수를 호출하며, 생성된 파일을 삭제

 

사이트를 통해 해당 연산을 수행해준다. 

해결