问题标签 [input-sanitization]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 应该在输入时对 html 进行清理吗?
这个问题已经在这里问过很多次了,大多数人都同意原始 HTML 输入应该存储在数据库中,并在输出时转义。但是,我认为我的情况可能略有不同。
用户可以输入一些标签(em、strong、span 等)但其他标签被删除(脚本、样式、元等)所以我正在做的是获取原始 HTML,并将其发送bleach.clean
到剥离(不是逃避)所有不安全的标签。对我来说,这更像是验证/清理而不是转义内容以供显示。特别是因为无论我以何种格式提供数据(HTML、JSON 或任何其他格式),我都会剥离不安全的标签。
我是否仍然应该在输出时对其进行消毒,或者在这种情况下最好在输入时进行处理?
奖金问题:
如果这是这种情况的正确方法,那么在 django 中实现它的最佳方法是什么?表单级验证还是模型级验证?
javascript - 删除不需要的字符的最佳方法
我有一个要清理的 HTML 输入。我希望用户输入除某些字符之外的所有内容。我不知道这些字符是什么,但用户通过复制和粘贴以某种方式输入它们。Sublime Text 将它们显示为 STX、SOH 等。我不知道你是否能看到它们,但它们在这里:“”。我不想列出我接受的每个字符,也无法列出这些 STX、SOH 字符。我不能使用 A-Za-z,因为我还希望用户输入像“ç”这样的字符。
我怎样才能轻松实现这一目标?
这是我在这里找到的 -unfinished- 代码的一部分:
非常感谢您提前
xss - 从输入文本中删除标签时的 XSS
如果从文本中删除所有标签,是否可以执行 XSS 攻击?标签表示匹配模式“<...>”(正则表达式:)的所有内容/<.*?>/g
。
php - 如何正确清理html帖子以保存在mysql中
我正在尝试创建一个博客系统,我想将博客文章数据保存到 mysql 但很少混淆如何清理或清理数据这里是我尝试过的
现在,当我通过 ajax 发布博客数据时,它看起来像
然后我清理帖子数据并回显它
然后这是我得到的回应
我想知道为什么我在响应中得到这些 \r\n 我怎样才能摆脱它们,这是清理 html 帖子的最佳方式
注意:我想将数据保存为 mysql 中的 html
我已经有一个正则表达式,可以找到样式和脚本标签并删除它,我也尝试删除条形斜杠并尝试添加 strip_tags 但我仍然得到 \r\n
python - 证明一个函数没有正确的输入验证
问题:
我有这个人为的示例功能:
它采用单词列表并动态构造正则表达式模式,而无需正确转义列表中的单词。
使用示例:
问题:
如何测试此函数以证明没有正确的正则表达式转义或输入清理?
换句话说,words
我应该提供列表中的哪些项目来“破坏”这个功能?
我尝试了几个“邪恶”的正则表达式来模拟灾难性的回溯并强制函数像(x+x+)+y
or一样挂起(a+)+
,但函数只是False
立即返回并且没有任何问题的迹象。
wordpress - 我将如何正确清理 wordpress 插件输入字段?
这是我的 wordpress 插件代码。我将如何根据此代码正确消毒
php - 我是否正确实施输入清理?
我已经为这个问题剥离了这段代码。
我的用户将通过表单输入他们的运输详细信息,我已尝试对输入进行清理。就成功发布数据而言,一切都按预期工作。我的问题更多是关于良好的 php 实践。
我已经用谷歌搜索了,据我了解,该filter_var()
函数将删除任何 HTML 标签,以便只为基于文本的输入留下一个字符串,为输入留下一个整数address_zip
。
这是过滤掉不需要的输入的正确方法和/或是否有进一步的措施来考虑安全用户输入?
如何测试filter_var()
功能?
我应该简单地发布类似的东西<h1>Hello World</h1>
吗?
这是对输入清理的充分测试吗?
您的帮助总是值得赞赏的。
谢谢大家
萌
mysql - MySQL HTML 清理
我有一个将数据保存到 MySQL 数据库的网站
我应该在将 HTML 插入 MySQL 或在我的网站上显示它时转义它吗?
理想情况下,我想将原始 HTML 输入到我的数据库中,并在每次从中提取时进行清理。这样做有什么危险吗?
示例 html:<h1>test</h1>
reactjs - ReactJS 中的输入清理
我正在使用 ReactJS 开发一个简单的聊天应用程序。有人可以帮我清理输入。只有一个输入文本框可以发送聊天消息。怎么消毒?。
根据文档 HTML 默认转义 html。够了吗。。我是否需要添加任何其他消毒方法。如果是,请让我知道该怎么做?
mask - Chronoforms 6 数据掩码选项
在 Chronoforms6 上,有一个选项可以为文本字段提供数据屏蔽。我在 Entry 参数中使用了以下条目:
数据输入掩码='掩码':'*{1,30}'
我还需要允许空格和 - 字符。以上仅允许使用字母数字。
关于如何做到这一点的任何提示?