beescms

一, 登陆处sql注入

elseif($action=='ck_login'){
	global $submit,$user,$password,$_sys,$code;
	$submit=$_POST['submit'];
	$user=fl_html(fl_value($_POST['user']));
	$password=fl_html(fl_value($_POST['password']));
	$code=$_POST['code'];
	if(!isset($submit)){
		msg('请从登陆页面进入');
	}
	if(empty($user)||empty($password)){
		msg("密码或用户名不能为空");
	}
	if(!empty($_sys['safe_open'])){
		foreach($_sys['safe_open'] as $k=>$v){
		if($v=='3'){
			if($code!=$s_code){msg("验证码不正确!");}
		}
		}
		}
	check_login($user,$password);
	
}

可以看到登陆处用fl_values()和fl_html()对输入的username和password进行了检测,跟进这两个函数

function fl_value($str){
	if(empty($str)){return;}
	return preg_replace('/select|insert | update | and | in | on | left | joins | delete |\%|\=|\/\*|\*|\.\.\/|\.\/| union | from | where | group | into |load_file
|outfile/i','',$str);
}
function fl_html($str){
	return htmlspecialchars($str);
}

可以看到fl_value()把常用的注入函数替换为空,但是只替换了一次,可以用双写绕过。fl_html()实际上就是用htmlspecialchars()进行过滤,可以看到对单引号实际上没有过滤的。
在这里插入图片描述
再继续跟进chek_login()函数

function check_login($user,$password){
	$rel=$GLOBALS['mysql']->fetch_asc("select id,admin_name,admin_password,admin_purview,is_disable from ".DB_PRE."admin where admin_name='".$user."' limit 0,1");	
	$rel=empty($rel)?'':$rel[0];
	if(empty($rel)){
		msg('不存在该管理用户','login.php');
	}
	$password=md5($password);
	if($password!=$rel['admin_password']){
		msg("输入的密码不正确");
	}
	if($rel['is_disable']){
		msg('该账号已经被锁定,无法登陆');
	}
	
	$_SESSION['admin']=$rel['admin_name'];
	$_SESSION['admin_purview']=$rel['admin_purview'];
	$_SESSION['admin_id']=$rel['id'];
	$_SESSION['admin_time']=time();
	$_SESSION['login_in']=1;
	$_SESSION['login_time']=time();
	$ip=fl_value(get_ip());
	$ip=fl_html($ip);
	$_SESSION['admin_ip']=$ip;
	unset($rel);
	header("location:admin.php");
}

因为这里是把用户和密码分开检验的,所有没有万能密码。可以看到username在拼入sql语句的时候是被单引号包裹的,经过前面分析直到单引号不会被转义,所有可以闭合!所以可以进行利用了!
payload:1’or extractvalue(1,(seselectlect @@basedir))#
在这里插入图片描述

二,文件上传

后台图片上传处,随便上传一个图片抓包,发现是这个函数进行处理
在这里插入图片描述
跟进这个函数
在这里插入图片描述
可以看到调用了up_img()进行检测,定位这个函数
在这里插入图片描述检测上传的的mime类型是否在白名单中,这个就很好绕过了!直接修改mime类型绕过

三,变量覆盖绕过登录检测

先找出那个函数对登录状态进行了检测,发现在admin目录下的文件都包含了init.php这个文件,那我们进入这个文件看看
在这里插入图片描述发现这个文件里面并没有检测登录状态,但是包含了一个fun.php文件,感觉很可疑,进去看看
在这里插入图片描述果不其然,在这里进行了检测,那我们要想绕过检测就必须要满足条件。在这里插入图片描述

可以看到这个文件里面有extract()函数,跟进
在这里插入图片描述
ok,有思路了,直接访问这个文件然后post进行变量覆盖在这里插入图片描述
然后访问后台,登录成功
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BEESCMS企业网站管理系统拥有简单方便的模板标签,能够快速做出模板;自定义表单,自定义模型,内置新闻、下载、产品、招聘、单页模型;SEO功 能,每个页面都可以单独SEO优化;多语言,多风格,每种语言每个页面都可以定义风格;html静态页面生成功能;BEES还可以自定义flash引导页。 BEESCMS企业网站管理系统源码 v4.0 更新日志 修复:留言本内容截取问题; 程序:去除HTML生成,更改为伪静态; 程序:增加手机版本,标签、模板和电脑版一样; 程序:优化一部分后台功能; 模板:新增默认手机模板; 修复:其它一些BUG。 BEESCMS企业网站管理系统源码主要特性 1、支持多种语言 BEES支持多种语言,后台添加自动生成,可为每种语言分配网站风格。 2、功能强大灵活 BEES除内置的文章、产品等模型外,还可以自定义生成其它模型,满足不同的需求 3、自定义表单系统 BEES可自定义表单系统,后台按需要生成,将生成的标签加到模板中便可使用。 4、模板制作方便 采用MVC设计模式实现了程序与模板完全分离,分别适合美工和程序员使用。 5、用户体验好 前台、后台、会员中心模板都采用 DIV CSS,兼容 IE 和 Firefox 浏览器,访问速度快。 6、支持用户反馈信息 7、SEO优化 可设置网站SEO参数及所有页面SEO信息,如关键词、页面描述等; 可全站生成静态html页面 8、输出内容全部后台设置 BEESCMS企业网站管理系统源码截图 相关阅读 同类推荐:企业网站源码
BEESCMS企业网站管理系统拥有简单方便的模板标签,能够快速做出模板;自定义表单,自定义模型,内置新闻、下载、产品、招聘、单页模型;SEO功 能,每个页面都可以单独SEO优化;多语言,多风格,每种语言每个页面都可以定义风格;html静态页面生成功能;BEES还可以自定义flash引导页。BEES企业网站管理系统是一个基于PHP Mysql架构的企业网站管理系统。BEES采用模块化方式开发,功能强大灵活易于扩展,并且完全开放源代码,多种语言分站,为企业网站建设和外贸提供解决方案。 BEESCMS企业网站管理系统 3.4 更新内容:2014-04-09 修复:后台内容列表删除没反应的问题 程序:表单增加验证码 程序:默认增加一个反馈表单 程序:搜索功能更改为只搜索产品内容 模板:更改默认模板风格 主要特性: 文章/产品等多内容 拥有文章、产品、下载、招聘、订单等企业网站内容模型,同时还可以自定义内容模型。 在线QQ/旺旺等营销客服 可以添加企业QQ、淘宝、阿里巴巴、MSN等多种客服,采用分组管理,一次添加多次使用 多语言外贸/多语言内容同时发布 可以自定义多种语言,使用不同的风格,内容可以同时发布到企业网站各类语言中。 多图上传/图文发布 同时上传多张企业产品图片,分类管理图片,一次上传多次使用,可视化编辑,排版更容易。 seo优化/生成静态html页面 后台seo功能,可以优化到产品图片。全站生成html页面,并且可以自定义生成的页面名称 模板/友情链接/留言/反馈/会员等多系统 模板和程序完全分离,后台可以直接修改管理模板。多种内置系统完全满足企业需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值