<<< CHALLENGE 23 >>>
이번 문제는 XSS(크로스 사이트 스크립트) 문제이다.
XSS는 위와 같이 설명이 되어있는데 쉽게 말해서
게시판에 악성 스크립트가 담긴 글을 올려서 그 글을 읽는 사용자에게 악성코드가 심어지도록 하는 해킹기법이다.
따라서 글, 메일, 그림 등을 열람하기 위하여 사용자들의 흥미를 유발시키기 때문에 사회공학적 해킹기법으로 분류된다.
23번 문제는 이처럼 스크립트 문을 올릴 수 있는지를 테스트하는 문제이다.
최종적으로 <script>alert(1);</script>를 올리면 되므로
해당 문장을 넣고 제출을 해보았다.
위와 같이 뜨는 것으로 보아서 GET 방식으로 넘겨주고 있고
어떤 문자 혹은 문자열이 필터링된다는 것을 알 수 있다.
이것 저것 넣어본 결과 아래와 같이 필터링된다는 것을 알 수 있다.
또한 script와 alert의 부분 문자열인 sc나 al같은 경우도 필터링된다.
하지만 각 문자들은 필터링이 되지 않는다.
즉, 문자들을 연결시켜 해당 문자열을 만들어주면 되는 것이다!
이를 위해 URL 인코딩에 대해 알아보았다.
문자와 문자 사이에 아무것도 존재하면 안되므로 NULL이 URL로 어떻게 나타나지는지 알아보았다.
%00으로 나타내어 진다는 것을 Get!!
test로 alert의 al을 해보았는데 잘 된다.
<s%00c%00r%00i%00p%00t>a%00l%00e%00r%00t(1);</s%00c%00r%00i%00p%00t>
code 부분에 이렇게 적고 실행시켜보았다.
유후!!
'Solve Problem' 카테고리의 다른 글
[HackThisSite] Basic Mission 1 (0) | 2017.01.07 |
---|---|
[webhacking.kr] 38번 문제 (0) | 2015.07.06 |
[webhacking.kr] 20번 문제 (0) | 2015.07.06 |
[webhacking.kr] 7번 문제 (0) | 2015.07.06 |
[webhacking.kr] 49번 문제 (0) | 2015.06.29 |