自定义用户HTML输入安全性
Custom user HTML input safety
我正在创建一个php网站。其中一个特性是用户可以通过输入自定义html代码来编辑他们自己的页面。现在,您可以在文本区域中输入代码,并将其显示在div中。在未来,我计划为用户添加更多有用的工具。
我的问题是如何保护我的网站免受恶意代码。我知道Facebook有一个选项,把自定义的HTML页面标签,所以它可以安全地完成。目前,html是由一个php脚本显示回显到页面上,所以用户可以在<script>
标签中输入javascript。我不知道javascript和html的全部限制,但我知道嵌入到网站中的自定义javascript有可能把事情搞砸。
以下是我目前的想法:
从用户代码中删除所有javascript
- <
- 优点:容易/gh>缺点:用户不能用javascript做任何有趣的事情
限制javascript只在显示div
内执行- 优点:安全自定义javascript
- 缺点:可能不可能/非常困难
如果你正在使用php,一个很好的解决方案是使用HTMLPurifier。它有许多选项可以过滤掉不好的内容,作为副作用,它保证了格式良好的html输出。
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 可以't让我的if语句处理js中的html表单输入
- 名称输入的索引
- 如何编写HTML输入的JS内联
- 要求输入在数据列表中
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 让文本输入幻灯片显示输入时的新文本输入?然后向后滑动
- 如何将输入(type=text)从html表单传递到javascript函数
- 单击jquery清除输入值
- 而循环只设置php中输入字段中的第一个值
- 在输入字段中将最小金额设置为
- jQuery自定义验证比较多个输入的序列
- Sails.js:同时发布文本输入和一个文件
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 使用jquery在单击时在单元格中输入值
- Ajax文件加载和<输入>文件加载
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 自定义用户HTML输入安全性
- 数据验证和安全性:从用户输入到浏览器输出-PHP/MySQL/JavaScript