问题标签 [xss]

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.

0 投票
1 回答
1455 浏览

javascript - 使用 dojo 访问远程 CSV 时出现问题

我正在尝试创建一个网站,在其中将我的数据托管在 google 电子表格上,并使用 dojo 在其浏览器中向用户显示数据。

但是,我收到了错误

当浏览器遇到:

而用本地存储的相同 CSV 副本替换它可以正常工作。

从我的谷歌搜索告诉我,这是由于现代浏览器的安全限制试图保护您免受跨站点脚本攻击。当然,为了我的页面,我想要某种方式能够将该域“列入白名单”。

有什么建议么?

完整的 HTML 代码是

提前致谢,

0 投票
6 回答
20599 浏览

java - 在 Java Web 应用程序中防止 SQL 注入攻击和 XSS 的方法

我正在编写一个 java 类,该类将由 servlet 过滤器调用,并检查基于 Struts 的 java web 应用程序的注入攻击尝试和 XSS。InjectionAttackChecker 类使用 regex 和 java.util.regex.Pattern 类根据 regex 中指定的模式验证输入。

话虽如此,我有以下问题:

  1. 应该阻止所有特殊字符和字符模式(例如 <>、.、--、<=、==、>=)以防止注入攻击。
  2. 是否有任何现有的正则表达式模式可以按原样使用?
  3. 在某些特定情况下,我必须允许一些特殊字符模式,一些示例值(被允许)是(使用 'pipe' | 字符作为不同值的分隔符)*Atlanta | #654,大厦 8 #501 | 单纯疱疹:慢性溃疡(持续时间>1 个月)或支气管炎、肺炎或食管炎 | FUNC & COMP(date_cmp), "NDI & MALKP & HARS_IN(icd10, yes)"。我应该采用什么策略才能防止注入攻击和 XSS,但仍然允许这些字符模式。

我希望我已经清楚地提到了这个问题。但如果我没有,我会道歉,因为这只是我的第二个问题。如果需要任何澄清,请告诉我。

0 投票
1 回答
307 浏览

asp.net - 在哪里可以找到或复制产生 HttpRequestValidationException 的代码

我在<WebMethod>某些页面上定义了一些 PageMethods (页面中的静态方法标记为 ),并使用 ajax 调用来调用它们。如果发送的数据被认为可能是 XSS,那么这个到服务器的 POST 显然不会触发会引发 HttpRequestValidationException 的 ASP.NET 代码,所以我想复制该检查代码以在我的页面方法中运行它。

任何人都知道该代码的详细信息或我在哪里可以找到它?我查看了 MS AntiXss 库,但它只进行编码,而不是实际检查输入,AFAIK。

编辑:或者指出我的代码方向或进行类似检查的库。

0 投票
3 回答
2971 浏览

php - 您只在输出上运行 htmlspecialchars() 还是您还执行其他功能?

输出用户输入时,您是否只使用htmlspecialchars()或是否有您还运行的功能/动作/方法?我正在寻找也可以处理 XSS 的东西。

我想知道我是否应该编写一个在输出上转义用户输入的函数,或者只使用htmlspecialchars(). 我正在寻找一般案例,而不是可以单独处理的特定案例。

0 投票
5 回答
26143 浏览

security - 哪些浏览器支持 HttpOnly cookie?

哪些浏览器支持 HttpOnly cookie,从哪个版本开始?

有关 HttpOnly cookie 和 XSS 预防的讨论,请参阅http://www.codinghorror.com/blog/archives/001167.html 。

0 投票
3 回答
3976 浏览

php - 如何解决 Google 日历的链接重定向通知?

我在网页上嵌入了一个 Google 日历,其中包含与该网站正在组织的活动相关的事件。某些日历活动具有将用户重定向到同一网站内的页面的链接,该页面包含更多信息和参加活动的选项。

然而问题在于,自上月底以来,谷歌发布了一个甚至不会自动重定向的重定向通知。我在事件中创建的链接由 Google 更改,一旦用户单击链接,就会打开一个新选项卡,指向一个页面,其中包含用户必须单击的重定向警告。由于我为用户提供了指向同一网站内的链接,这非常不方便,而且毫无意义。

我希望用户能够单击日历上的链接并访问包含相关数据的网页。

你们知道我该如何绕过这个警告吗?

我的思考过程:

  1. 最初,我想使用 JS 来重写链接,但由于日历的 iframe 位于不同的域中,由于 XSS 漏洞(AFAIK),浏览器不会允许它。

  2. 我可以构建自己的 AJAX 日历并使用 Google 的 API 将其与 Google 同步,但由于愚蠢的“功能”毫无意义,这将是大量工作。我喜欢 Google 的日历,我想使用它。

  3. 我想到的第三件事是,我可以使用 AJAX 来获取框架 url 上的整个代码,而不是使用带有日历的 iframe。然后我只需用 JS 重写该代码上的链接。这能行吗?

我会非常感谢任何帮助。这快把我逼疯了!


使用 Jon Cram 的输入,我创建了一个解析代码并进行调整的 php 脚本。但是我只能让它适用于 html 版本。对我来说没有 AJAX。=(

0 投票
4 回答
933 浏览

url - 过滤输入 URL 的最佳方法是什么?

我有一个接受来自 PHP 用户的 URL 的表单。

我应该允许或禁止哪些字符?目前我使用

$input= preg_replace("/[^a-zA-Z0-9-\?:#.()\,/\&\'\\"]/", "", $string);

$input=substr($input,0,255);

因此,它被修剪为 255 个字符,并且只能包含字母、数字和 ? - _ : # ( ) , & '" /

我应该剥离的任何我不是的东西,或者我剥离的任何可能需要在有效 URL 中的东西?

0 投票
3 回答
4475 浏览

html - 基于白名单为 (X)HTML 编写 XSS 过滤器

我需要在 C++ 中为CppCMS实现一个简单高效的 XSS 过滤器。我不能使用现有的用 PHP 编写的高质量过滤器,因为它是使用 C++ 的高性能框架。

基本思想是提供一个过滤器,该过滤器具有 HTML 标签的 while 列表和这些标签的选项白名单。例如。典型的 HTML 输入可以由 <b>, <i>, 标记和<a>带有 . 的标记组成href。但简单的实现还不够好,因为即使是允许的简单链接也可能包含 XSS:

那里还有很多其他的例子。所以我也想为像 href/src 这样的标签创建一个前缀白名单——所以我总是需要检查它是否以(https?|ftp)://

问题:

  • 这些假设是否足以满足大多数目的?这意味着如果我不提供style标签选项并使用前缀白名单检查 src/href 是否可以解决 XSS 问题?是否存在无法通过这种方式解决的问题?
  • 为了编写简单的解析器来清除所有不正确的禁止标记,如 HTML/XHTML 的形式语法是否有很好的参考?<script>
0 投票
4 回答
15116 浏览

php - 防御mysql注入和跨站点脚本的最佳方法

目前,我采用“把所有东西都扔在墙上,看看有什么东西会粘住”的方法来阻止上述问题。以下是我拼凑的功能:

但是,我相信有更好的方法来做到这一点。我正在使用 FILTER_SANITIZE_STRING,这似乎并不完全安全。

我想我在问,你们采用了哪些方法,它们有多成功?谢谢

0 投票
3 回答
486 浏览

javascript - 不涉及服务器的 XSS - 这很危险吗?

我们一直在讨论 javascript 中的仅客户端解决方案,该解决方案为站点访问者提供了注释打印页面的方法,以及它在 XSS 或类似攻击向量方面的可利用性。

基本原理:选择要显示的数据可能需要很长时间。为了记录所采取的步骤,提供了一个textarea(不包含form),用户可以编写不应该传输到服务器的任意文本。初始文本是静态的,例如一组简短的说明如何使用该字段,因此攻击者没有(明显的)可能为该文本区域构造一个包含恶意 javascript 的 url。

一旦用户更改了此文本,他们就会打印页面(和他们的注释)。一旦用户离开页面,笔记就会丢失。

如果出现“过多的散文错误”,这里有一些示例代码:

再次:

  • 文本永远不会在服务器端处理,只有静态描述(“如何使用”)从服务器发送到客户端,从不从客户端发送到服务器。
  • 用户可以根据自己的喜好添加 javascript 元素并利用自己的地狱。
  • 我想不出这会带来安全风险的情况,但一种不安的感觉仍然存在……

注意:问题不在于此解决方案的优雅性或任何内联编辑更舒适的库,而纯粹是关于可想象的安全风险 - 如果有的话。