问题标签 [html-sanitizing]
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.
javascript - 如何通过分析 JavaScript & HTML 来检测 HTTP 请求?
我想知道我们是否可以对 JavaScript 代码进行一些分析,以检测包含这些 JS 的网页是否会向其他域发送 HTTP 请求。
例如,有人将他们的静态网页文件放在我的网络服务器(域 A)中,我不希望他们的文件向其他站点(例如域 B)发送 HTTP 请求。
他们有一些方法可以做到这一点:
使用 img 标签:
<img src=“http://domain.b.com/statics”>
使用脚本标签。
使用表单标签。
使用 iframe 标签。
此外,我们还可以使用 JS 来生成 HTTP 请求,例如:
Javascript 可以被混淆,上面的 javascript 可以被压缩为:
html - 如何捕获 ngSanitize 错误并将 html 显示为转义文本
我们正在使用 AngularJS 尝试将用户输入的内容显示为 HTML。大多数情况下,用户输入我们使用 ng-bind-html 正确显示的有效/安全数据。有时他们会输入无效的 HTML,我仍希望将其显示为原始文本。
如果我使用 ng-bind-html 尝试显示无效的 HTML,我会收到此错误:
我不想使用 trustAsHtml,因为我不信任我们的消毒剂,并希望确保我们不会在页面上显示不安全的 html。
php - 如何在 WordPress 中清理和存储包含 HTML 正则表达式模式的用户输入
我正在开发一些 WordPress 插件,它的功能之一是能够将用户输入的 HTML 正则表达式模式存储到数据库,然后将其显示在设置页面上。
我的方法实际上是可行的,但我想知道该代码是否足够安全:
那是用户输入的模式:
这就是我在 DB 中存储 HTML 模式的方式:
这就是它实际存储在 WordPress DB 中的方式:
这就是输出在设置页面上的显示方式:
感谢帮助 :)
symfony - Twig:允许 HTML,但转义脚本
我正在XSS
为我的应用程序调查可能的攻击媒介。
我有的:
- 具有单个
textarea
字段的 FormType。通常这个字段可以包含html
标签。 Twig
呈现插入的数据的模板。
我使用该表单插入以下内容:
查看该数据需要转义。在转义数据方面,我熟悉的策略很少。
1)raw
过滤器:完全禁用转义 -> 引入可能的 XSS
2)e
过滤器:
html
风味输出:<b>Some valid HTML text</b> <script type="text/javascript">alert("XSS")</script>
js
风味输出:\x3Cb\x3ESome\x20valid\x20HTML\x20text\x3C\x2Fb\x3E\x0D\x0A\x3Cscript\x20type\x3D\x22text\x2Fjavascript\x22\x3Ealert\x28\x22XSS\x22\x29\x3C\x2Fscript\x3E
3) {{ var|striptags('<br>')|raw }}
,输出:一些有效的 HTML 文本警报(“XSS”)
这个工作,但不知何故我不喜欢它。我宁愿寻找黑名单解决方案,而不是白名单。
现在的问题:
是否有任何其他转义策略允许html
标签但<script>
像e("js")
过滤器一样转义标签?
Twig
我应该在表单提交期间还是在渲染期间“杀死”脚本?
node.js - node.js \ 如何处理sanitize-html的结果
Node.js 中的新手我尝试使用sanitize-html模块清理node.js 中的 html -我认为这个问题看起来更通用:
插件输出一个对象(我打印到控制台并显示 [object]) - 我怎么知道如何使用这个对象?它的字段是什么,如何将其写入文件等(我知道这可能听起来很基本 - 我应该序列化它吗?使用对象的方法是什么......)
node.js - node.js \ 清理 html 并删除标签
如何告诉“sanitize-html”实际删除 html 标签(只保留其中的内容)?目前,例如,如果我将其设置为保留 div 部分,则在输出中它还会写入<div>some content</div>
-我只想要内部...('一些内容')
简而言之 - 我不想要标签、属性等 - 只有这些元素的内容..
html - 如何仅使用 html 覆盖/强制图像的 mime 类型?
我有一个带有 png 扩展名的图像文件,其中 http 服务器返回的 mime 类型是 png 的类型。但是,该图像是 svg 图像,所有浏览器都将其解释为 png。
我不管理服务器,我只能上传带有 png 扩展名的文件。
如何覆盖服务器返回的 mime 类型?我尝试了content
andtype
属性,image/svg+xml
但没有任何改变。JavaScript 被剥离。
jakarta-mail - OWASP HTML Sanitizer 允许在 HTML 中使用冒号
我怎样才能允许:
登录已清理的 HTML?我正在使用它来清理生成 java 邮件的 HTML 代码。此代码具有内联图像内容 ID,例如<img src=\"cid:image\" height=\"70\" width=\"70\" />
. 清理后,该src
属性不包含在清理后的 html 中。
上面代码的输出是:
angularjs - Sanitize 模块的用途是什么?
我正在寻找Sanitize the HTML这个新概念(对我来说) ,我已经阅读了所有关于这个模块的作用,但我真的不明白它的用途,以及它的用途,以及它可以为什么做出贡献我未来的项目。
如果你们中的一些人想阅读 >这里
ps:我只是想要一个实用的答案,不要太长。
提前致谢。
java - 允许代码时在 servlet 中编辑和清理用户输入?
我正在使用 JSP 和 Java Servlet 处理的网页需要使用户能够编写包含文本以及各种语言(包括 html 和 javascript)代码的评论和文章。数据存储在 mysql 数据库中,稍后在页面上显示。
对于输入,我想使用许多 WYSIWYG 编辑器之一。那些通常为数据库生成 (x)Html 代码。
这意味着在插入数据库之前,我需要在服务器端进行某种类型的清理,因为可以轻松绕过编辑器并将恶意代码显示在站点上(数据库本身由准备好的语句保护)。
处理该主题的最佳和最简单的方法是什么?
切换到 BBCode 输入而不是 html 是否更有意义?
我在这里找到了几个线程,但大多数都没有考虑到代码实际上需要在网站上显示,而且大多数线程已经有好几年了。
非常感谢提前!