bluecms渗透
bluecms渗透测试
0x01. 信息收集
记住这个超级无敌重要 , 你收集信息越多 , 越利于渗透
- 收集二级域名
- ip信息
- 指纹信息
- cdn
- waf
如果我们获取到了对方ip,可以直接用天镜、nessus扫描系统,看是否存在高危漏洞
如果是域名,我们可以用awvs、 appscan漏洞扫描
如果得到指纹信息,直接到seebug、百度查找程序漏洞相关利用方法网站后台扫描、敏感目录、备份文件等检测
网站后台扫描、敏感目录、备份文件检测
这里由于我是在本地搭建的网站 , 直接是ip + 端口 就简单的扫一下web漏洞
0x02. 漏洞扫描
打开awvs,添加扫描



扫描详情

查看漏洞

0x03. 前端漏洞验证
3.1 注册账号
首先注册一个网站账号,方便漏洞的验证

3.2 sql注入
第一处sql注入

http://192.168.1.105:90/back/bluecms/ann.php
python sqlmap.py -r 1.txt -level=3 -p BLUE[user_name]
直接通过burpsuite抓包,然后丢到sqlmap中跑一下测试,跑之前最好把代理给关了

发现是一个SQLmap跑不出来,最好手工测试一下

经测试属实是误报
第二处sql注入

http://192.168.1.105:90/back/bluecms/user.php
python sqlmap.py -r 1.txt -level=3 -p BLUE[user_name]
也是cookie注入 , 同样丢到sqlmap中跑一下

手工再测试一下

一样也是误报 , 这里解释一下 , 因为是时间盲注 , 所以很受网速的考验 , 所以才出现了这样的误报
第三处sql注入

http://192.168.1.105:90/back/bluecms/guest_book.php
这里我直接手工验证 , sqlmap跑时间盲注贼慢 , 不如手工快

又是一处误报 , 绝了
3.3 xss跨站脚本攻击
第一处

http://192.168.1.105:90/back/bluecms/guest_book.php
通过burpsuite验证发现是误报 , 所以下面就直记录真实存在的漏洞的验证
第二处xss

http://192.168.1.105:90/back/bluecms/user.php
payload
user.php?act=login&from=L2JhY2svYmx1ZWNtcy9ndWVzdF9ib29rLnBocA=='"()%26%25<acx><ScRiPt%20>alert(9688)</ScRiPt>

验证成功 , 此处存在xss漏洞
第三处xss

http://192.168.1.105:90/back/bluecms/guest_book.php
paylaod
act=send&content=1&page_id=1'"()%26%25<acx><ScRiPt%20>alert(9896)</ScRiPt>&rid=1

验证成功 , 此处存在xss漏洞
第四处xss
这是一处存储型xss , 存在xss的输入框是msn
http://192.168.1.105:90/back/bluecms/user.php?act=my_info


第四处xss
存储型xss , 高危漏洞
http://192.168.1.105:90/back/bluecms/admin/index.php


3.4 不安全的用户名提示

3.5 弱密码

这里直接设置123456 , 这样会存在大量弱口令
3.6 批量用户注册

3.7 任意url跳转(中)
这个漏洞一般黑盒测试不易发现 , 是一个钓鱼漏洞

3.8 密码明文传输


3.9 不安全的httponly和secure

3.10 内网ip泄露(中)
属于信息泄露

3.11 不安全的robots.txt

3.12 管理后台泄露
这个在等保3.0中属于高危漏洞 , 密码明文传输也是高危漏洞 , 这是小甲鱼的臀部

3.13 暴力破解 (中)

3.14 默认安装页面未删除

3.15 越权漏洞
可以直接从step1跳转到step3

3.16 逻辑漏洞
http://192.168.1.105:90/back/bluecms/user.php?act=pay

0x04. 后端漏洞
4.1 xss漏洞
存储型xss , 高危漏洞
http://192.168.1.105:90/back/bluecms/admin/index.php


0x05. 代码审计挖出来的漏洞
5.1 文件包含漏洞
user.php关键代码
elseif ($act == 'pay'){ include 'data/pay.cache.php'; $price = $_POST['price']; $id = $_POST['id']; $name = $_POST['name']; if (empty($_POST['pay'])) { showmsg('对不起,您没有选择支付方式'); } include 'include/payment/'.$_POST['pay']."/index.php"; //注意截断 }
为了测试这个包含漏洞我在网站根目录下放一个1.txt文件

这个漏洞想要成功复现 , 一是魔术符号的关闭 , 二是截断

当然你也可以找一个上传点 , 上传一个图片木马



5.2 任意文件删除
http://192.168.1.105:90/back/bluecms/admin/database.php?act=del&file_name=test.txt
database.PHP关键代码
elseif($act == 'del'){ $file_name = !empty($_GET['file_name']) ? trim($_GET['file_name']) : ''; // 没有对$_GET['file_name']校验 $file = BLUE_ROOT.DATA."backup/".$file_name; if(!@unlink($file)) // unlink删除文件的函数 { showmsg('删除备份文件失败'); } else { showmsg('删除备份文件成功', 'database.php?act=restore'); } }


浙公网安备 33010602011771号