这是我作为index.html保存到计算机桌面的example.com代码:
<channel> <title>Comments on: Voor uw organisatie</title> <atom:link href="https://example.com/feed/" rel="self" type="application/rss+xml" /> <link>https://example.com</link> <description>PIM: Wie weet wat van mij?</description> <lastBuildDate>Mon, 17 Sep 2018 13:22:52 +0000</lastBuildDate> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>https://wordpress.org/?v=4.9.3</generator> </channel>
我在文本编辑器中打开了该文件并进行了更改
<generator>https://wordpress.org/?v=4.9.3</generator>
到
<generator>"><img src="x" onerror="alert(document.cookie)"></generator>
当我在Firefox中打开修改后的HTML文件时,出现一个带有cookie的警报框。我知道它是XSS,因为我正在浏览器中收到该XSS警报。
我的问题是为什么会这样?原因我没有将此代码注入参数中。那么开发人员如何解决此问题或清理此代码?
这有什么影响吗?
答案 0 :(得分:1)
给定一个由爱丽丝(Alice)经营,鲍勃(Bob)访问的网站,当马洛里(攻击者)导致JavaScript在鲍勃(Bob)网站上的爱丽丝(Alice)浏览器中运行时,就会发生XSS攻击。
Alice在她的计算机上编辑HTML文档(甚至从另一个网站复制了一个HTML文档),因此它运行JavaScript,然后将HTML文档加载到她的浏览器中不会执行XSS攻击。她只是在完全控制的系统上运行JavaScript。
答案 1 :(得分:0)
这不是XSS,这是损坏的HTML。该警报是误报。