Bypass domain check protection with data: for XSS
<script src="data://www.trustdomain.hahwul.com, alert(45)"></script>
선행조건(Prerequisites)
선행 조건- 구문이 script src에 들어가는 경우(If the user input is in the script src)
- 앞단 프로토컬 제어가 가능해야함(Must be able to control the src protocol)
- Not CSP…
원리(How to?)
별다른건 아니고 script src의 데이터는 plain text의 javascript 코드가 들어가게 되는데, data 구문을 이용해서 코드를 넣어 실행할 수 있습니다.여기서 요점은 ://domain 포맷의 검증 로직을 data://domain 형태로 넣어서 우회하고 ,(comma) 로 앞의 도메인 부분을 인코딩인 것 처럼 속인 후 ,(comma)뒤에 payload를 두어 실행됩니다.
그러나 아쉽게도 CSP 때문에 유효타는 안나온 상태네요.. 잠도 안오는데 다시 하러가야지 :)
HAHWULSecurity engineer, Gopher and H4cker! |
잠 좀 주무세유
ReplyDelete헛 잘 자는데...
Delete