Webhacking.kr 23번 문제 풀이
Webhacking.kr 23번 문제 풀이
23번 문제의 메인화면이다.
"너의 미션은 <script>alert(1);</scirpt> 구문을 삽입 하는 것이다" 라고 되어있다.
아마 위에 사진의 폼에 스크립트 구문을 삽입하여 제출하면 되는 모양이다.
아무래도 <script>alert(1);</script> 구문중 특정 부분에서 필터링이 걸리는 모양이다.
어떤 부분에서 필터링이 걸리는지 하나하나 값을 넣어 확인해 보자.
<> :가능
</ :가능
</>:가능
문자열을 2개이상 연결해 적으면 무조건 필터링 당함. 즉, script 문자 사용 불가
이정도의 결과를 유추했다.
그리고 여러가지 테스트를 하던도중 위 사진처럼 폼에 html 구문을 넣으면 자동으로 현재 페이지 코드에 삽입이 된다는 점을 알았다.
위 사진을 보면 알다시피 코드가 그대로 현재 페이지 코드에 삽입되어 동작한다.
그리고 form 태그를 확인해보면 code 변수를 통해 url에 get방식으로 전송이 가능하다.
현재 문자열을 2개이상 연결하면 필터링을 당하게된다. 그렇다면 get방식으로 code 변수에 값을 넣어 서버측에 전달이 가능하다면 s%00c%00r%00i%00p$00t%00 이런식으로 %00(null바이트) 를 전달하면 어떻게 될까?
최종 페이로드 : <s%00c%00r%00i%00p%00t>a%00l%00e%00r%00t(1);</s%00c%00r%00i%00p%00t>
<script>alert(1);</script> 구문이 삽입 되었고 문제가 해결됬다.
200 Point Get :D
'Web Hacking > Web Hacking.kr' 카테고리의 다른 글
Webhacking.kr 25번 문제 풀이 (0) | 2017.07.10 |
---|---|
Webhacking.kr 24번 문제 풀이 (0) | 2017.07.10 |
Webhacking.kr 21번 문제 풀이 (2) | 2017.07.10 |
Webhacking.kr 20번 문제 풀이 (0) | 2017.07.07 |
Webhacking.kr 18번 문제 풀이 (0) | 2017.07.06 |