当前位置: 首页 > ops >正文

[蓝帽杯 2022 初赛]网站取证_2

一、找到与数据库有关系的PHP文件
在这里插入图片描述
打开内容如下,发现数据库密码是函数my_encrypt()返回的结果。
在这里插入图片描述
二、在文件夹encrypt中找到encrypt.php,内容如下,其中mcrypt已不再使用,所以使用php>=7版本可能没有执行结果,需要换成较低版本的PHP

<?php
function my_encrypt(){$str = 'P3LMJ4uCbkFJ/RarywrCvA==';$str = str_replace(array("/r/n", "/r", "/n"), "", $str);$key = 'PanGuShi';$iv = substr(sha1($key),0,16);$td = mcrypt_module_open(MCRYPT_RIJNDAEL_128,"",MCRYPT_MODE_CBC,"");mcrypt_generic_init($td, "PanGuShi", $iv);$decode = base64_decode($str);$dencrypted = mdecrypt_generic($td, $decode);mcrypt_generic_deinit($td);mcrypt_module_close($td);$dencrypted = trim($dencrypted);return $dencrypted;
}

修改文件如下,并放置phpstudy的WWW目录下,再访问该文件,文件就会被执行,生成密码

<?php
function my_encrypt(){$str = 'P3LMJ4uCbkFJ/RarywrCvA==';$str = str_replace(array("/r/n", "/r", "/n"), "", $str);$key = 'PanGuShi';$iv = substr(sha1($key),0,16);$td = mcrypt_module_open(MCRYPT_RIJNDAEL_128,"",MCRYPT_MODE_CBC,"");mcrypt_generic_init($td, "PanGuShi", $iv);$decode = base64_decode($str);$dencrypted = mdecrypt_generic($td, $decode);mcrypt_generic_deinit($td);mcrypt_module_close($td);$dencrypted = trim($dencrypted);return $dencrypted;
}
echo my_encrypt();
?>

在这里插入图片描述
得到flag

http://www.xdnf.cn/news/9561.html

相关文章:

  • 第十五届蓝桥杯大赛软件赛国赛Python 大学 C 组试做【本期题单: 设置密码、栈】
  • Docker安装 | Spug
  • 【Linux】systemctl 和 sysctl 的区别
  • 常见的文件夹操作(附源码)
  • uni-app开发特殊社交APP
  • 战略3.4 - 研究与开发战略、生产运营战略
  • C++ string 相关的函数
  • 字符串day8
  • 制造业数字化转型之路:再造盈利模式,重塑客户价值
  • 深入理解JavaScript设计模式之call,apply,this
  • 【LangGraph 入门指南】为智能代理打造灵活可控的工作流框架
  • 运维三剑客——sed
  • Redis 的内存回收机制
  • HAWQ 取代传统数仓实践(十八) —— 层次维度
  • DeePNAP:一秒预测蛋白-DNA/蛋白-RNA结合强度
  • 安装nginx
  • Qt使用智能指针
  • 桌面系统核桃派部署自启服务
  • 传感器技术的演进与测试方法探究
  • 数据科学 vs. 大数据:一场“烧脑”但有温度的较量
  • Spring AI 多模型智能协作工作流实现指南
  • AI Agent开发第76课-Dify N8n一类的AI流程“出轨“时会爆发什么样的工程灾难
  • 用python制作一个打地鼠游戏
  • 主要国产数据库及其典型应用场景
  • 每天掌握一个Linux命令 - ps
  • 多因素身份鉴别组合方案及应用场景
  • MySQL----视图的创造和使用
  • 篇章六 数据结构——链表(二)
  • 某标杆房企BI平台2.0升级实践
  • 系统思考:心智模式与业务创新