※ 작년 말 ~ 올해 초에 작성한 라이트업으로 사이트 개편 전의 문제가 섞여있습니다. ※
23번 문제에 들어가니 <script>alert(1);</alert> 명령을 실행시켜서 1이 출력되면 문제가 풀리는 것을 확인할 수 있다.
먼저 <script>alert(1);</alert>를 그대로 입력하니 ‘no hack’이 출력되었다.
어떤 상황에서 ‘no hack’이 출력되는지 확인하기 위해 여러 값을 입력해보았다. 일단 1212라는 숫자를 입력했더니 1212가 그대로 출력되었다.
그 다음으로는 아무 문자열이나 입력해보았더니 ‘no hack’이 출력되었다.
다음으로 0x를 입력했더니 그대로 출력이 되었다. 이것을 통해 연속된 문자열은 걸러지는 것을 확인할 수 있다.
예측한 대로 ‘a b’라고 공백을 주어서 입력하니 문자열이 그대로 출력되었다.
<> 역시 따로 필터링 되지 않고 출력되었다.
문제를 풀기 위해서 ‘<s c r i p t>a l e r t(1);</s c r i p t>’ 라고 공백을 두어서 입력했다. ‘no hack’이 출력되지는 않았지만 문제가 풀리지 않고 alert(1)에 줄이 그어져서 출력되었다.
주소창에서 %20을 %0a로 바꿔서 ’<s%0ac%0ar%0ai%0ap%0at>a%0al%0ae%0ar%0at(1);</s%
0ac%0ar%0ai%0ap%0at>’라고 입력했지만 여전히 문제가 해결되지 않았다.
검색을 해보니 이 문제의 경우 %00(null)을 사이에 넣어줘야 한대서 ‘<s%00c%00r%00i%00p%00
t>a%00l%00e%00r%00t(1);</s%00c%00r%00i%00p%00t>’라고 입력하니 문제가 풀렸다.
'CTF > 웹 해킹' 카테고리의 다른 글
webhacking.kr challenge 25 (0) | 2020.06.27 |
---|---|
webhacking.kr challenge 24 (0) | 2020.06.27 |
webhacking.kr challenge 20 (0) | 2020.06.26 |
webhacking.kr challenge 19 (0) | 2020.06.26 |
webhacking.kr challenge 18 (0) | 2020.06.26 |