zoukankan      html  css  js  c++  java
  • bluecms渗透

    bluecms渗透测试

    0x01. 信息收集

    记住这个超级无敌重要 , 你收集信息越多 , 越利于渗透

    • 收集二级域名
    • ip信息
    • 指纹信息
    • cdn
    • waf

    如果我们获取到了对方ip,可以直接用天镜、nessus扫描系统,看是否存在高危漏洞

    如果是域名,我们可以用awvs、 appscan漏洞扫描

    如果得到指纹信息,直接到seebug、百度查找程序漏洞相关利用方法网站后台扫描、敏感目录、备份文件等检测

    网站后台扫描、敏感目录、备份文件检测

    这里由于我是在本地搭建的网站 , 直接是ip + 端口 就简单的扫一下web漏洞

    0x02. 漏洞扫描

    打开awvs,添加扫描

    image-20210125150856568

    image-20210125150914040

    image-20210125150931663

    扫描详情

    image-20210125162835278

    查看漏洞

    image-20210125163004581

    0x03. 前端漏洞验证

    3.1 注册账号

    首先注册一个网站账号,方便漏洞的验证

    image-20210125163602002

    3.2 sql注入

    第一处sql注入

    image-20210125164002842

    http://192.168.1.105:90/back/bluecms/ann.php
    
    python sqlmap.py -r 1.txt -level=3 -p BLUE[user_name]
    

    直接通过burpsuite抓包,然后丢到sqlmap中跑一下测试,跑之前最好把代理给关了

    image-20210125165735953

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

    image-20210125170312334

    经测试属实是误报

    第二处sql注入

    image-20210125170400233

    http://192.168.1.105:90/back/bluecms/user.php
    
    python sqlmap.py -r 1.txt -level=3 -p BLUE[user_name]
    

    也是cookie注入 , 同样丢到sqlmap中跑一下

    image-20210125170912497

    手工再测试一下

    image-20210125171135986

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

    第三处sql注入

    image-20210125171435384

    http://192.168.1.105:90/back/bluecms/guest_book.php
    

    这里我直接手工验证 , sqlmap跑时间盲注贼慢 , 不如手工快

    image-20210125171640368

    又是一处误报 , 绝了

    3.3 xss跨站脚本攻击

    第一处

    image-20210125171848798

    http://192.168.1.105:90/back/bluecms/guest_book.php
    

    通过burpsuite验证发现是误报 , 所以下面就直记录真实存在的漏洞的验证

    第二处xss

    image-20210125174237648

    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>
    

    image-20210125174135248

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

    第三处xss

    image-20210125172845074

    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
    

    image-20210125172750940

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

    第四处xss

    这是一处存储型xss , 存在xss的输入框是msn

    http://192.168.1.105:90/back/bluecms/user.php?act=my_info
    

    image-20210125175312403

    image-20210125175347844

    第四处xss

    存储型xss , 高危漏洞

    http://192.168.1.105:90/back/bluecms/admin/index.php
    

    image-20210125190514031

    image-20210125190443144

    3.4 不安全的用户名提示

    image-20210125183909074

    3.5 弱密码

    image-20210125184056891

    这里直接设置123456 , 这样会存在大量弱口令

    3.6 批量用户注册

    image-20210125185259827

    3.7 任意url跳转(中)

    这个漏洞一般黑盒测试不易发现 , 是一个钓鱼漏洞

    image-20210125185713463

    3.8 密码明文传输

    image-20210125190047168

    image-20210125185837917

    3.9 不安全的httponly和secure

    image-20210125191614960

    3.10 内网ip泄露(中)

    属于信息泄露

    image-20210125193128555

    3.11 不安全的robots.txt

    image-20210125193727939

    3.12 管理后台泄露

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

    image-20210125193909511

    3.13 暴力破解 (中)

    image-20210125200514965

    3.14 默认安装页面未删除

    image-20210125200557778

    3.15 越权漏洞

    可以直接从step1跳转到step3

    image-20210125200825986

    3.16 逻辑漏洞

    http://192.168.1.105:90/back/bluecms/user.php?act=pay
    

    image-20210125213113125

    0x04. 后端漏洞

    4.1 xss漏洞

    存储型xss , 高危漏洞

    http://192.168.1.105:90/back/bluecms/admin/index.php
    

    image-20210125190514031

    image-20210125190443144

    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文件

    image-20210125203419111

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

    image-20210125203930965

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

    image-20210125204438657

    image-20210125204624721

    image-20210125204544057

    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');	} }
    

    image-20210125205445699

  • 相关阅读:
    误删表空间处理办法
    一步步开发网站系列-网站界面
    webstorm ftp发布问题
    TP5接受Vue跨域请求
    tp5上传图片添加永久素材到微信公众号
    将博客搬至CSDN
    swoole http_server 多进程并使用多进程处理消息
    高并发下,php与redis实现的抢购、秒杀功能
    SVN服务器搭建
    web服务器安全笔记
  • 原文地址:https://www.cnblogs.com/xcymn/p/15721521.html
Copyright © 2011-2022 走看看