XSS攻击中的图像损坏

时间:2010-07-15 23:03:21

标签: http image xss

许多网站都在网页源代码中讨论破碎图像是否存在可能的XSS攻击警告信号。我的问题是为什么这么多攻击者允许这种情况发生。对于攻击者来说,使用iframe或不起眼的图片来隐藏他们的持久脚本似乎不会更麻烦。假设破碎的图像与XSS非常常见,我可能会错。谢谢你的帮助!

编辑:我认为XSS在这种情况下可能是用词不当。我理解为什么指向java脚本文件的图像标记不会显示并且显示起来太麻烦。我认为我的问题与上传到服务器的文件实例有关,其中包含恶意代码。我想这实际上是第二个问题 - 实际上是XSS还是更像是服务器对不安全对象引用的利用(按OWASP条款)?

编辑:这是一个很好的article,详细描述了XSS。它提到了破碎的图像,但它也讨论了如何避免它们。我找不到任何提及破损图像特定攻击的文章。我记得通过电子邮件阅读了一些网络钓鱼攻击(在这些情况下,你对CSRF绝对正确,丹尼尔。

1 个答案:

答案 0 :(得分:1)

您正在阅读的网站可能是指跨站点请求伪造攻击(CSRF; CWE-352)。 CSRF攻击通常使用“损坏的图像”进行,因为(1)浏览器自动加载图像(因此浏览器自动代表访问者发出HTTP请求)和(2)许多网站允许用户将图像添加到用户提供的内容

想象一下,一个网站允许用户在博客上发表评论,博客软件允许用户通过指定图像的URL将图像添加到他们的评论中。可能通过请求某些URL来调用博客软件的各种管理功能。例如,如果管理员“已访问”/comments/delete/#(其中“#”是要删除的特定注释的ID),则以管理员身份登录的任何人都可能删除注释。恶意非管理员无法通过访问/comments/delete/7754来删除评论,例如评论7754,因为他或她未经过身份验证。但是,恶意用户可能会尝试添加新评论,其中的内容仅包含/comments/delete/7754处的“图片”。如果管理员随后查看评论(只需查看包含恶意用户评论的页面),则浏览器将自动请求/comments/delete/7754处的“图像”。 可以导致注释7754被删除,因为管理员已登录。

这个删除评论的例子可让您了解一些CSRF攻击的工作原理,但请注意,这些影响可能会更加险恶。我链接的CWE页面引用了各种软件的实际CSRF问题,这些软件允许特权升级,站点设置操作和新用户创建等内容。此外,简单地要求所有管理功能的POST不会使网站免受CSRF攻击,因为XSS攻击可以动态地将特殊构造的form元素附加到文档并以编程方式提交。