首页 > 其他 > 详细

BugKu:备份是个好习惯

时间:2021-09-17 14:36:22      阅读:16      评论:0      收藏:0      [点我收藏+]

解题过程

了解到备份二字,说明可能存在备份文件。
备份文件的好处是:浏览器无法解析带有备份后缀的文件,之后会直接提供用户下载到本地,用户通过去掉备份后缀打开可以查看页面源代码进行代码审计
通过查找,查到index.php.bak这个备份文件
技术分享图片
在浏览器输入后下载到本地返现是PHP代码:

<?php
/**
 * Created by PhpStorm.
 * User: Norse
 * Date: 2017/8/6
 * Time: 20:22
*/

include_once "flag.php";
ini_set("display_errors", 0);
$str = strstr($_SERVER[‘REQUEST_URI‘], ‘?‘);
$str = substr($str,1);
$str = str_replace(‘key‘,‘‘,$str);
parse_str($str);
echo md5($key1);

echo md5($key2);
if(md5($key1) == md5($key2) && $key1 !== $key2){
    echo $flag."取得flag";
}
?>

这里就存在过滤了

  • 代码截取了?后面的传参值
  • 代码将key字符过滤成‘‘ ,但是我们可以使用双写绕过
  • parse_str是传入变量到str中去,解析str
  • 之后是md5的加密

这里的问题就是,md5加密比较麻烦,但是md5不能解析数组,所以我们传入数组即可
传入变量:
技术分享图片
flag就出来了
技术分享图片

BugKu:备份是个好习惯

原文:https://www.cnblogs.com/Zeker62/p/15302420.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!