看!这里有三种非Web型的XSS注入漏洞

Posted 阿里安全响应中心

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了看!这里有三种非Web型的XSS注入漏洞相关的知识,希望对你有一定的参考价值。

此文为翻译文章

原文链接:

https://websec.ca/publication/Blog/Three-Non-Web-based-XSS-Injections

Alejandro Hernández

@nitr0usmx(Twitter)

恭喜翻译作者mss****@先知社区

价值100元的天猫超市享淘卡一张

欢迎更多优质原创、翻译作者加入

欢迎多多投稿到先知社区

前些天,我跟老友Chris Navarrete进行了一次深入的交流,当谈及为什么选择这个职业时,我给出的理由是:


我们喜欢让事物以迥异于初衷的方式运作,例如利用缓冲区溢出来改变执行流程的方向、将javascript代码注入到不该注入的地方。


对于大部分Web安全方面的教程来说,都是教我们如何以非常简单的方式来测试XSS漏洞 "XSS漏洞"):在反射或存储Web请求中的数据输入时,没有进行严格的安全过滤处理,从而导致反射型XSS或存储型XSS漏洞。


通常情况下,当讨论应用程序的安全性时,我们都知道“永远不要信任任何数据输入”这道圣谕;遗憾的是,并非所有开发人员都透彻地理解了“任何数据输入”的真正含义,因此,攻击者总有许多可乘之机。下面,我们举例进行说明:


PowerDNS Recursor

在我们的讨论中,Chris曾经提到曾在一个流行的DNS软件中发现了一个不同寻常的XSS漏洞,所以,我决定以它为例,让读者意识到Web并非唯一的攻击向量。


PowerDNS Recursor是一款高端、高性能的名称解析服务器,至少可以为1亿用户提供DNS解析服务。该产品的设计初衷,主要就是将其用于DNS解析服务器。


有一篇文章详细展示了如何使用命令行工具dig通过DNS查询注入XSS有效载荷的过程:


看!这里有三种非Web型的XSS注入漏洞

之后,我们会在Web UI中看到:

看!这里有三种非Web型的XSS注入漏洞


Symantec SSL Toolbox

这是三年前我在赛门铁克的SSL Certificate Tester中找到的一个漏洞,在我提交后,目前该漏洞已经得到了修复。这个免费在线服务用于从给定URL的x509 SSL证书中提取和显示相应的值,由于它完全信任这些内容,所以没有对各个字段中的数据进行安全过滤。


因此,我创建了一个SSL证书,使其不同的字段中值都为

<script>alert(document.cookie);</script>,并将其安装在Web服务器的前端:


看!这里有三种非Web型的XSS注入漏洞

所以,这个免费服务解析该证书的时候,就会执行JavaScript代码:

看!这里有三种非Web型的XSS注入漏洞


RATS

RATS(Rough Auditing Tool for Security)由CERN计算机安全部门开发一款非常优秀的静态代码分析工具。我个人非常喜欢这款工具,并且已经用了许多年了。然而,该工具已经于2013年12月停止更新,估计现在已经没有人在维护该项目了,但具体情况我也拿不准。


去年的时候,由于坐火车时很无聊,为了打发时间,竟然在该软件中找到了一个XSS漏洞。RATS需要接收一个包含源代码的文件夹,并创建一个包含分析结果的html报告,其中还包括所分析文件的名称,因此,攻击向量也就非常明显了。我在其名称中创建了一个包含JavaScript代码的文件:


看!这里有三种非Web型的XSS注入漏洞

分析完成之后,注入的JavaScript代码将在报告中呈现:

如果我是一名开发人员,并且知道自己repos中的代码肯定会进行安全审查的话,那么,我肯定会在文件名中加入相关代码来“搞”安全审计人员。


小结

  • 数据输入并不一定来自HTTP请求。

  • 考虑所有可能的数据输入:从文件系统到数据库、用户名、时间戳、日志,不要放过任何可能性。

  • 开发人员不要信任任何数据输入,在后端使用这些数据之前,一定要对接收到的数据以及发回给用户的数据进行彻底的安全过滤。


感谢各位的阅读!



请猛戳右边二维码

Twitter:AsrcSecurity





阿里安全响应中心

以上是关于看!这里有三种非Web型的XSS注入漏洞的主要内容,如果未能解决你的问题,请参考以下文章

XSS漏洞注入及靶场演示

安全漏洞XSS、CSRF、SQL注入以及DDOS攻击

小白科普Web安全基础之SQL注入XSS文件上传漏洞详解

Web系统常见安全漏洞介绍及解决方案-sql注入

使用参数化查询防止SQL注入漏洞

3大Web安全漏洞防御详解:XSS、CSRF、以及SQL注入解决方案