2010年1月12日上午7点钟开始,全球最大中文搜索引擎百度”遭到黑客攻击,长时间无法正常访问。这是自百度建立以来,所遭遇的持续时间最长、影响最严重的黑客攻击。回顾2010年,猖獗的WEB 零日漏洞攻击似乎预示着,2011年又将是一个WEB 零日漏洞活跃的年份。各种安全漏洞的传播仍将继续扩大,僵尸网络还将活跃并更加频繁变换方位,而黑客也将继续绞尽脑汁发明新的方式,以试图逃过各种安全软件的过滤。为此,杭州安恒信息技术有限公司攻防实验室结合自身研究成果总结并发布2010-2011 Web 零日漏洞安全报告,从而呼吁整个互联网关注Web时代信息安全的全新威胁及趋势走向。
本期报告主要内容:
- 2010-2011Web安全事件回顾
- 2010-2011Web 0day回放
- Web安全未来发展趋势与挑战
2010-2011Web安全事件回顾:
2011-3月MYSQL.com和sun.com被入侵
攻击者通过MySQL.com上查看用户的页面进入,获取到了数据库、表及存储用户密码的dump数据。更严重的是,攻击者将用户密码数据公布在网上让其他人进行破解。更糟糕的是MySQL产品负责人的密码已被破解(竟然是4位数字:安全意识)。
2011-4月,索尼数据服务器被入侵
日本索尼公司5月1日在东京举行新闻发布会,就公司网络游戏用户个人信息遭窃一事表示道歉,承认1000万张信用卡资料可能外泄,已邀请美国联邦调查局(FBI)展开调查。
2011-6月Google Gmail邮箱被攻击
当Gmail用户打开带有Flash漏洞攻击代码的恶意网页时,Gmail邮箱中将被黑客偷偷添加一个“间谍”帐户。这个“间谍”帐户不仅可以阅读所有邮件,甚至还能冒充Gmail邮箱的主人向外发送邮件,从而使黑客达到发布恶意广告、欺诈信息等目的。
Flash被广泛应用在网页视频、网页游戏等领域,国内几乎90%以上的电脑都安装了Adobe Flash Player。同时,Gmail在国内也拥有大量忠诚用户。因此,Flash“间谍”漏洞的曝光将对Gmail邮箱安全造成极大威胁。
2011-6月新浪微博遭黑客攻击
图片为引入的蠕虫JS文件:
6月28日晚,许多新浪微博用户的微博账号突然间大爆发,短时间内发布了多条带有短链接的微博并对粉丝发同类私信。这其中不乏加V认证的用户。而粉丝们收到该微博内容后,受微博或私信中诱惑性文字的诱导,点击该链接后,这一批用户也遭受感染,进行批量发布带有恶意短链接的微博。据分析,此次新浪微博大范围遭受XSS攻击,主要原因是新浪微博的名人堂过滤不严,导致执行跨站脚本。当用户点击该恶意链接后,蠕虫病毒就通过这些用户继续的进行传播,通过执行脚本,令受感染的微博帐号发布如下带有诱惑性字样的微博正文,并附上短链接:
郭美美事件的一些未注意到的细节;
建党大业中穿帮的地方;
让女人心动的100句诗歌;
3D肉团团高清普通话版种子;
这是传说中的神仙眷侣啊;
惊爆!范冰冰艳照真流出了;
杨幂被爆多次被潜规则;
傻仔拿锤子去抢银行;
可以监听别人手机的软件;
个税起征点有望提到4000。
以上均为当前热门话题,对用户很具有诱导性。尤其是众多加V认证的用户受到感染,发布相关微博内容后,病毒传播的途径更为广泛,影响更为严重。在不到一个小时的时间,已经有超过3万用户中招。
2010-2011Web 0day回放:
2010-5月nginx文件类型错误解析漏洞
漏洞分析:nginx默认以cgi的方式支持php的运行,譬如在配置文件当中可以以
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
的方式支持对php的解析,location对请求进行选择的时候会使用URI环境变量进行选择,其中传递到后端Fastcgi的关键变量SCRIPT_FILENAME由nginx生成的$fastcgi_script_name决定,而通过分析可以看到$fastcgi_script_name是直接由URI环境变量控制的,这里就是产生问题的点。而为了较好的支持PATH_INFO的提取,在PHP的配置选项里存在cgi.fix_pathinfo选项,其目的是为了从SCRIPT_FILENAME里取出真正的脚本名。
2010-7月Struts2/XWork < 2.2.0远程执行任意代码漏洞
Struts2的核心是使用的webwork框架,而webwork又是使用的XWork来处理action的,并且通过调用底层的getter/setter方法来处理http的参数,它将每个http参数声明为一个ONGL(这里是ONGL的介绍)语句。当我们提交一个http参数:
user.address.city=Bishkek&user['favoriteDrink']=kumys
ONGL将它转换为:
action.getUser().getAddress().setCity("Bishkek")
action.getUser().setFavoriteDrink("kumys")
这是通过ParametersInterceptor(参数过滤器)来执行的,使用用户提供的HTTP参数调用ValueStack.setValue()。
除了支持参数的设置和读取,ONGL支持另外一些session、scope等等,而且ONGL支持调用java静态方法,这样子就可以成功进行调用java静态方法来进行攻击,比如调用java.lang.RunTime. getRuntime().exec()来执行命令
2010-9月ASP.NET的Padding Oracle Attack漏洞
ASP.net中引入资源文件(JS等),通常使用了WebResources.axd?d=xyz来实现的。WebResource.axd有一个特点,便是会对错误的密文(即d=xyz中的xyz)产生500错误,而对正确的密文产生404错误,这便形成了足够的提示。 通过穷举破解出站点的Machine Key,也就是网站所使用的密钥,就可以下载网站私密文件(web.config)或者修改ViewState等等 。
2011-3月Resin Web服务器解析漏洞
安恒安全团队研究发现:Resin 在处理servlet mapping时支持使用正则表达式来进行处理,将url-pattern转化为正则表达式的时候没有进行安全校验,并且在进行正则表示匹配的时候使用的匹配方式是匹配输入串中与模式匹配的子串,结合上面点,攻击者能够构造特殊的url来使得web服务器调用特定的servlet来进行解析,从而产生解析漏洞。
2011-3月Yahoo Mail跨站漏洞
安恒安全团队研究发现:Yahoo Mail XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。
2011-3月21CN Mail跨站漏洞
安恒安全团队研究发现:21CN XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。
2011-3月中国移动139Mail跨站漏洞
安恒安全团队研究发现:139mail XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。
2011-4月网易旗下163Mail跨站漏洞
安恒安全团队研究发现:网易旗下所有邮箱系统 XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。
2011-4月 QQMail跨站漏洞
安恒安全团队研究发现:腾讯QQ MAIL XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。
2011-4月HOT Mail跨站漏洞
HOT MAIL XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。
2011-5月阿里旺旺远程ActiveX溢出0DAY
安恒安全团队研究发现:淘宝阿里旺旺的一个dll中的图像文件名函数存在一个栈溢出漏洞,可以远程执行任意代码;imageMan.dll的图像文件名函数存在一个栈溢出漏洞,可以执行任意代码。
2011阿里旺旺在本地开启一个随即端口开放http服务,并在所有IP上监听,并通过此端口获得用户认证的token,通过获得的token可直接登陆网站。获得监听端口的token需要对应的URL,而此URL可很容易猜解到。导致可通过远程获得目标token,并登陆网站。
图为2011-5月 阿里旺旺token劫持漏洞:
2011-7月Nginx %00空字节执行任意代码(php)漏洞
Possible Arbitrary Code Execution with Null Bytes, PHP, and Old Versions of nginx
Ngnix在遇到%00空字节时与后端FastCGI处理不一致,导致可以在图片中嵌入PHP代码然后通过访问xxx.jpg%00.php来执行其中的代码
In vulnerable versions of nginx, null bytes are allowed in URIs by default (their presence is indicated via a variable named zero_in_uri defined in ngx_http_request.h).
Individual modules have the ability to opt-out of handling URIs with null bytes. However, not all of them do; in particular, the FastCGI module does not.
2011-8月Apache HTTP Server畸形Range选项处理远程拒绝服务漏洞
Apache HTTP Server是Apache软件基金会的一个开放源代码的网页服务器,可以在大多数电脑操作系统中运行,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。
Apache HTTP Server在处理Range选项生成回应时存在漏洞,远程攻击者可能利用此漏洞通过发送恶意请求导致服务器失去响应,导致拒绝服务。此漏洞源于Apache HTTP Server在处理Range头选项中包含的大量重叠范围指定命令时存在的问题,攻击者可通过发送到服务器的特制HTTTP请求耗尽系统资源,导致Apache失去响应,甚至造成操作系统资源耗尽。
2011-8月phpMyAdmin跟踪功能多个跨站脚本漏洞
phpMyAdmin存在多个安全漏洞,允许恶意用户进行脚本注入攻击。
部分传递给table, column和index名的输入在跟踪功能中使用前缺少过滤,可被利用注入任意HTML和脚本代码,当恶意数据被查看时可以目标用户浏览器安全上下文执行恶意代码。
Web安全未来发展趋势与挑战
- 常规的、为大众所认同的注入、跨站等攻击技术现在普遍越来越少,导致对于安全级别较高的Web应用发起攻击比以前苦难很多。
- 随着攻击者对于Web应用的研究越来越深入,新的0day将会被越来越多的发掘出来,至此一些大型的Web应用,商业级别和安全性较高的站点都会因为源代码被窃取,或者反编译等手段,使得Web应用0day的挖掘会越来越多。
- 保障Web安全,就不得不保障源代码的安全,对发布的Web应用都需要进行加密保护。
- 传统的攻击技术,成功攻击网站的案例越来越少,随着安全意识的整体提升,传统的基于输入、输出的过滤会越来越严格,但是web应用的逻辑漏洞确是不能被忽略的。
- 另外随着Web应用的发展,Web的功能越来越强劲,对于SNS社区的发展,人与人之间的交流愈发频繁,相反的攻击发生的概率也会越高,尤其是基于Web系统逻辑功能API的调用攻击(CSRF),在辅予社会工程学的技术,攻击也依然会无所不能。
- 核心互联网应用面临严峻挑战。网上银行、网上营业厅、网络购物、网游、DNS服务器等,很多恶意攻击者出于不良的目的对Web 服务器进行攻击,想方设法通过各种手段获取他人的个人账户信息谋取利益。