반응형
문제
https://xss-game.appspot.com/level6
문제풀이
소스 코드 확인 시, # 뒤에 전달된 값을 script 태그의 src로 설정한다.
이 때, 전달된 값이 https:// 문자열로 시작할 때 필터링 된다. 이는 HTTPS, Https 등으로 우회가 가능하다.
외부 서버에서 악성 스크립트 생성 후 실행하려고 했는데, 스크립트 코드가 실행되지 않았다.
힌트의 4번의 링크를 접속해보면 foo 함수를 호출하는 것을 확인할 수 있는데, foo 대신 alert를 전송하면 alert 함수가 실행된다.
https://www.google.com/jsapi->https://www.gstatic.com/charts/loader.js
이를 참고하여 alert 함수를 실행할 수 있다.
또 다른 풀이가 있는데, 서버를 사용하지 않고 data url schema를 사용하여 풀 수 있다.
data:[자료타입],[데이터] 형식으로 입력하여 실행할 수 있다.
반응형
'write-up(web) > misc' 카테고리의 다른 글
[suninatas] WEB 2 (0) | 2023.10.26 |
---|---|
[suninatas] WEB 1 (1) | 2023.10.26 |
[xss-game] Level 5: Breaking protocol (0) | 2023.01.21 |
[xss-game] Level 4: Context matters (0) | 2023.01.21 |
[xss-game] Level 3: That sinking feeling... (0) | 2023.01.21 |