网络安全 频道

安恒信息2010-2011WEB零日漏洞安全报告

  2010-2011Web 0day回放:

  • 2010-5月nginx文件类型错误解析漏洞

  漏洞分析:nginx默认以cgi的方式支持php的运行,譬如在配置文件当中可以以这样的方式支持对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;
}

  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漏洞,利用跨站漏洞可以成功劫持受害者浏览器。

安恒信息2010-2011WEB零日漏洞安全报告

  • 2011-3月21CN Mail跨站漏洞

  安恒安全团队研究发现:21CN XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。

安恒信息2010-2011WEB零日漏洞安全报告

  • 2011-3月 中国移动 139Mail跨站漏洞

  安恒安全团队研究发现:139mail XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。

安恒信息2010-2011WEB零日漏洞安全报告

  • 2011-4月 网易旗下163Mail跨站漏洞

安恒信息2010-2011WEB零日漏洞安全报告

  安恒安全团队研究发现:网易旗下所有邮箱系统 XSS漏洞,利用跨站漏洞可以成功劫持受害者浏览器。

0
相关文章