首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么这段代码不运行?

为什么这段代码不运行?
EN

Security用户
提问于 2016-12-23 18:39:48
回答 1查看 1.4K关注 0票数 -1

我在网站上找到了一个允许输入的区域(不能透露名称),并以以下形式返回:

代码语言:javascript
运行
复制
<p>
    <strong>text here</strong>
</p>

它没有被过滤,所以你可以放一些东西,比如<img src=x>,它会返回它,但是它不解析它,我也不知道它为什么不解析它。我检查了它是否将括号转换为Unicode,但它没有。

有人知道它在做什么吗?

编辑:它确实将括号转换为Unicode,但是否有可能绕过这个过滤器呢?

EN

回答 1

Security用户

发布于 2016-12-23 19:54:22

你需要包含更多的信息,否则这个问题是无法回答的。我不认为我们有一个“为什么XSS不工作”的问题,所以我将尝试在这里添加一个规范的答案。

为什么XSS不能工作?

所以你有一个网站,它接受你的输入,并把它反馈给你。这可能会受到XSS的攻击!但是,如果您确实输入了一个有效负载,则不会执行它。现在怎么办?

以下是你应该尝试回答的问题:

  1. 编码:输入是如何实际返回的?:重要的部分不是浏览器解析输入后输入的外观,而是源代码的外观。所以你应该看看这个。要么使用拦截代理(ZAP、Burp等),要么查看浏览器中的源代码。像<>"'这样的相关字符实际上是这样返回的吗?或被编码(如<等)。如果它们被编码,网站很可能不会受到攻击(您可以尝试不同的编码等来绕过编码,但这是不可能的)。
  2. 过滤:输入是否以任何其他方式改变?:因此相关字符没有编码,这意味着您至少有一个HTML注入。现在,您需要检查是否可以输入Javascript上下文。像<script这样的标签被过滤了吗?您可以使用事件属性(如onMouseOver )吗?您能使用其他有趣的HTML标记,如imginputframe等吗?过滤经常被打破,所以即使简单的事情被过滤了,也要进一步研究。
  3. 浏览器过滤器:为什么我的有效负载没有执行?:好的,你现在知道这个网站是脆弱的,你有像alert(1)一样好的有效负载,但是什么都没有发生。是否禁用了浏览器XSS筛选器?如果有疑问,可以使用没有插件的Firefox,因为它没有过滤器。
  4. HTTP报头:您知道站点是脆弱的,您知道您的浏览器将执行XSS有效负载,但仍然什么都没有发生?然后,您应该检查HTTP头。是CSP集吗?它能阻止内联脚本的执行吗?如果是这样的话--而且您不能将.js文件上传到受信任的源-,这仍然是一个漏洞,但您只能针对较旧的浏览器,或者只剩下一个HTML注入(它虽然没有XSS那么严重,但仍然非常强大)。
票数 4
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/146253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档