웹사이트에 접속한 모습은 위와 같다.

아마 이전 문제인 'Smuggling'과 비슷한 방식으로 풀이하는 문제인듯.

문제 파일을 다운받아 열어봤다.

 

 

 

index.php

이 index.php 코드에서 취약점이 발생하는데, 

10번째 라인을 보면 '$$'라는 문자가 쓰인 걸 볼 수 있다. 

$$는 php의 가변변수 선언 시 사용되는 구문인데, 여기서 13번째 라인의 ($_SESSION['include_path'])를 덮으면 플래그를 획득할 수 있을 것으로 보인다.

config.php

그런데 smuggling 문제와 비슷하게, 이 문제에서 역시 필터링되고 있는 문자들이 있다.

여기서는 /, _, SESSION이 필터링되고 있기 때문에 URL encoding을 사용해 우회가 필요하다.

 

이번에도 역시 변조를 위한 사이트 (https://dencode.com/)를 이용했다.

근데 URL encoding으로 변조가 잘 안 되어서...

이유를 모르겠지만 ㅜㅜ 속는 셈 치고 HEX String으로 변조를 도전했다. 

위 내용을 바탕으로 변조를 완료한 url은 다음과 같다. 

http://web.h4ckingga.me:10013?%5f%53ESSION[include%5fpath]=%2fflag

 

 

URL을 그대로 입력해 엔터키를 누르면,

/를 제외한 문자들은 변조 이전의 형태로 URL창에 나타난다.

이건 왜인지 모르겠다...

어쨌든 플래그를 획득하는 데 성공했다.

+ Recent posts