100分 内容区的XSS和HTML入侵解决方案;

WBOY
풀어 주다: 2016-06-23 13:31:16
원래의
1065명이 탐색했습니다.

前台提交内容:
一般通过百度UE 或 kind 编辑器;
这些编辑器会自动转义视图区的一些标签; 提交带标签的HTML字符串;
为了保持一致性,后台不能再次进行转义,而直接入库;
非法用户可以直接POST一段SCRIPT+HTML的代码,不经过JS;

这样会造成XSS攻击;

XSS: script  这个好解决,转义

 和<script>即可; <br /> <br /> 但是HTML就麻烦了: <br /> 1.过滤position: 先去掉定位,把:转义; 定位完全可以重新定义页面; <br /> 2.过滤iframe frameset head ; 防止跳转; <br /> <br /> 这些就够了吗? 感觉还是不完善, 又不能全部转义; <br /> 假设用户利用DOM节点来扰乱页面呢? <br /> <br /> <p class="aaa"> <br /> 提交了这段代码,而正常的脚本JS中有对.aaa节点的操作,如 复制,引用等等. 这样该事件取得的值将会产生意外; <br /> <br /> 3.还要过滤 clss="" id="" name=""; <br /> 如果JS中有自定义的属性, 那需要用正则删除所有属性; <br /> <br /> 4.... <br /> <br /> <br /> 我想知道你们如何处理的? 我感觉很乱,想找个规范的解决方案; <br /> <br /> <br /> <p> <br /> <h2>回复讨论(解决方案) <p class="sougouAnswer"> 所以允许用户富文本编辑的系统都采用 ubb 或 bccode 编码格式 <br /> 而在线 html 编辑器仅限于管理群使用 </script>
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿