2016-11-16 6 views
3

나는 다음과 같은 이미지로 MustacheJS 템플릿이 있습니다.MustacheJS-Snippen은 XSS 공격으로부터 안전합니까?</p> <pre><code><div class="thumbnail" style='background-image: url({{avatar}});'></div> </code></pre> <p><code>{{avatar}}</code> 변수를 확인하지 않고 사용자 입력에서 채워집니다, 사용자는 원하는대로 입력 할 수 있습니다

안전한가요? 아니면 누군가가 악의적 인 입력을하고 이것을 통해 XSS를 실행할 수 있습니까?

+2

아니요 안전하지 않습니다. 입력 내용의 유효성을 검증하고 위생 처리해야합니다. –

+0

정확한 코드를 확인해야합니다. – Feathercrown

+0

@RoryMcCrossan 자바 스크립트 실행을위한 입력 값을 제공 할 수 있습니까? 답장을 보내 주셔서 감사합니다! – Tream

답변

0

스타일 XSS는 최신 브라우저에서 더 이상 작동하지 않습니다 (IE11/Edge, 최근 Chrome 또는 Firefox는 CSS에서 JS를 실행하지 않습니다).

브라우저 버전에 따라 다르지만 실제로는 좋지는 않지만 실제로 작동하는 공격이 나오기는 쉽지 않습니다. (그리고 나는 거기에 문구가있는 것에 매우주의했습니다. 아마도 가능하지 않습니다. 최근 브라우저에서 이것을 악용). 너의 코멘트에서 시범을 보였으므로 Mustache html은 자동으로 몇몇 문자를 인코딩한다.

IE는 X-UA-Compatible으로 호환 모드로 전환 할 수 있습니다.이 경우 IE는 해당 버전의 취약점과 함께 선택한 버전과 정확히 일치하지만 HTML 인코딩 때문에 악용 될 수 없습니다.