728x90
XSS GAME - LEVEL 4 |
xss game level4 풀이 포스팅입니다.
https://xss-game.appspot.com/level4
문제 접근
내가 메시지 박스에 입력을 주면, timer가 작동한다. 숫자 3을 입력하면 3초뒤에
time is up이라는 팝업 창이 뜬다.
프레임 코드를 살펴보았다.
이미지 태그에 onload 이벤트 핸들러가 사용되고, 내가 입력한 값은 startTimer 함수 안에 입력되었다.
즉 이미지가 로드되면 뒤에 startTimer 함수가 실행되게 되는 것인데
여기에 입력값을 잘 만들어서 팝업창을 띄워야한다.
sql injection에서 많이 사용하던 방법을 먼저 시도해보았다.
onload="startTimer('my input');" 여기서 input 값을 1');alert('hello 이렇게주면? onload="startTimer('1');alert('hello');" |
이렇게 하면 1초가 지났을때 alert 가 수행될 것 이다.
근데 안된다??? 모르겠어서 힌트를 보니
브라우저가 태그 속성을 읽을때 html 디코드를 먼저 수행한다고 한다.
프레임 코드를 살펴보니
싱글쿼터가 ' 이고 )까지는 들어갔는데 세미콜론이 삽입되지않았다. 따라서 세미콜론을 인코딩해서 넣어보았다.
https://heavenly-appear.tistory.com/176
세미콜론 대신 %3B를 넣어보자.
성공!
728x90
'개인 공부 > WEB' 카테고리의 다른 글
[웹해킹] XSS GAME - LEVEL 6 (0) | 2021.07.13 |
---|---|
[웹해킹] XSS GAME - LEVEL 5 (0) | 2021.07.13 |
[웹해킹] XSS GAME - LEVEL 3 (0) | 2021.07.13 |
[웹해킹] XSS GAME - LEVEL 2 (0) | 2021.07.13 |
[웹해킹] XSS GAME - LEVEL 1 (0) | 2021.07.13 |
댓글