【问题标题】:XSS Works, but only 1 wordXSS 有效,但只有 1 个字
【发布时间】:2017-04-28 23:35:28
【问题描述】:

也许这是一个奇怪的问题,但我会尽力解释它。目前我正在测试一个网站,用于 xss(跨站点脚本)。 首先我只是尝试了<script>alert(1)</script>,结果是[removed]alert(1)[removed],还有<scr<script> 之类的东西,我尝试了更多。

现在我终于有了一个工作: <input onfocus=alert("test") autofocus> 是的,它确实会吐出“测试”,但是当我输入alert(document.cookie) 时,它已经不再吐出任何东西了,也 <input onfocus=alert("test lol") autofocus> 不再吐出任何东西了,但是我现在怎么才能得到饼干?为什么它吐出 test 或 ahihawiejawije 而不是 ahjiahwe jijaja 或 test test,只有一个字?整数也可以。

我尝试输入的所有 html 代码都像 <div><iframes> 一样工作,那么我怎样才能在页面上显示 document.cookie spitted

这是我输入 XSS 代码的地方: https://gyazo.com/d260e065a305941e92a414a321501134

当我保存它时,我可以在此页面上查看它: https://gyazo.com/723c1bff1d6fb7f3341a5b19cadcd264

但是由于 document.cookie 不工作,它只会显示一个输入栏,但是当我将 document.cookie 替换为“lol”时,它给了我这个: “lol”(不能放置超过 2 个链接 bcz 声誉)所以它与 lol 一起使用。

那么,一个词或一个大词(如 AAAAAAAAA)怎么可能起作用,而不仅仅是两个词(如 aaa aaa 或 document.cookie)?

【问题讨论】:

  • 您需要发布您的代码,我们无法猜测您在做什么。
  • 它将文本放入 DOM 源中还是警告它?应该引用属性值,因此在第一个单词之后可能不再考虑属性值。这似乎与 PHP 无关。
  • 抱歉,我稍后会添加页面示例。
  • okey 将其添加到问题中,所以有人知道吗?
  • @JelmerdeVries 你没有给我们代码。转义代码的后端代码很重要,而不是前端,而你使用了截图,这对我们来说完全没用。

标签: javascript php sql xss


【解决方案1】:

我只是好奇为什么打印出 helloworld 确实有效而 hello world 无效。

空格,因为乱七八糟的 HTML,开始另一个属性。

看看 Chrome 的检查器,语法高亮显示发生了什么:

<input onfocus=alert("test lol") autofocus>

变成:

Chrome 尝试修复 HTML,lol") 成为另一个属性。 (我不知道autofocus 去了哪里……)与网站的 XSS 保护(或缺乏)无关,只是浏览器如何解释错误的 HTML。

【讨论】:

  • 但是为什么 alert(document.cookie) 不起作用呢?
  • 哦,现在我明白了,这是一个非常好的答案!非常感谢!
  • 嗨@JelmerdeVries。如果这个或任何答案解决了您的问题,请通过单击复选标记考虑accepting it。这向更广泛的社区表明您已经找到了解决方案,并为回答者和您自己提供了一些声誉。没有义务这样做。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-11
  • 2015-07-13
  • 1970-01-01
相关资源
最近更新 更多