javascript - 如何清理输入中的 JS 和 HTML?

标签 javascript html css sanitization

<分区>

我到处都找过了,但找不到一个简单的库或工具。

我想清理我网站上的评论。

目前,我可以通过评论注入(inject) HTML、CSS 和几乎任何我想要的东西。

<div id="commentsSection">
    <div class="submitCommentForm">
        <textarea id="commentsInput" required minlength="10" maxlength="150">
        </textarea>
        <div id="submitComment">SUBMIT</div>
    </div>
    <div id="commentsBox"></div>
</div>

什么是最好的方法?

最佳答案

因为可以禁用 JavaScript,所以卫生不是前端的操作;此任务应在后端执行。最佳实践说...

  • 验证输入(前端)
    • 在提交前确保数据符合您的预期
  • 净化输入(后端)
    • 在后端使用手段在不安全字符到达应用程序的存储层之前转义或删除不安全字符
  • 转义输出(后端)
    • 作为一项额外的安全措施,在输出之前,请务必转义来自第三方来源的任何内容

我们鼓励您验证前端的数据输入,通知用户在尝试提交无效数据时不允许使用某些字符。如果 JavaScript 随后被禁用,您的后端仍将知道如何处理格式错误的数据。

关于javascript - 如何清理输入中的 JS 和 HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44488156/

相关文章:

javascript - jquery如何获取特定元素

javascript - PHP 与 jQuery : how to do it in this case

javascript - JS 遍历对象并检查另一个对象是否包含其值

javascript - 具有滚动事件的嵌入式 PDF 查看器

css - Cols inside Cols bootstrap padding right left issue

javascript - 在执行奇怪的步骤序列之前,拆分器无法工作

javascript - Google API 请求收到不良结果

html - 垂直对齐多行突破

html - 如何使用 CSS 中的类删除继承的内容?

html - <pre> 标签中的额外空格