php代码审计【16】盾灵CMS代码后台阅读审计

一、环境搭建

      源码下载:http://ahdx.down.chinaz.com/201308/duenling_v1.0.rar

(1)接下来搭建环境,我用的phpstudy,访问首页:(先创建写数据库,我这里是duenling)

 可悲,我这里按装导入用户名密码失败,然后我手动在数据库添加admin/admin(21232f297a57a5a743894a0e4a801fc3)。

结果失败,还是不行(最后明白是编码问题,不能默认utf-8),一定要是下面的编码。

(2)访问http://192.168.189.129/duenling/duenling/admin/axphp.php 后台登录

 

 输入刚才的后太密码(admin/admin),成功登录。ok,环境好了,接下来慢慢看下代码。

 (3)安全退出,然后重新到登陆界面---》发现提交时候,提交地址为login.php.。

(4)分析admin/login.php后台代码:

<?php
require '../config.php';
$adminname = $_POST['adminname'];
$adminpass = $_POST['adminpass'];
$adminpass .= "Axphp.com";
$adminpass = md5($adminpass);
$adminsql = "select * from axphp_admin where adminname='$adminname' and adminpass='$adminpass'";
$adminery = mysql_query($adminsql, $config);
$adminnum = mysql_num_rows($adminery);
if ($adminnum == "1") {
setcookie("admin", "Y", time() + 3600, '/');
setcookie("admin_name", $adminname, time() + 3600, '/');
header("location:axadmin.php");
} else {
header("location:axphp.php");
}
?>

这段代码很简单,接收到$adminname ,$adminpass,基本没有过滤,直接传入sql语句查询,虽然对$adminpass密码进行了加密,但是并不影响我们进行直接登录。

这里对$adminsql 进行echo,

http://192.168.189.129/duenling/duenling/admin/axphp.php方便查看(admin/111111),随便输入密码:

当我想进行admin ' 时候,这个 ’ 输入不上去,看下源码,被js过滤了,哎,上Burpsuite。 

使用 Burpsuite抓包后改下数据包:

然后看到的返回页面,竟然之际就可以登录了。

 完成的来试下:

直接进入后台了。 

这就是传说中的万能密码,哈哈哈。 

如果构造语句,写成 admin' or 1=1 # ,后台直接进。毫无阻挡。。。。。(传说中的万能登录)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值