简单php反序列化实现执行代码

简单php反序列化实现执行代码

反序列化举例

首先定义类和对象,然后输出序列化和反序列化结果看看这是个什么东西


	class Stu{
		public $name;
		public $age;
		public $sex;
		public $score;
		}
		$stu1 = new Stu();
		$stu1->name = "order";
		$stu1->age = 22;
		$stu1->sex = true;
		
		var_dump($stu1);
		print("
"
); $a=serialize($stu1); echo $a; print("
"
); $b=unserialize($a); var_dump($b); ?>

输出结果如图

简单php反序列化实现执行代码_第1张图片

实现代码执行


	class Stu{
		public $name;
		public $age;
		public $sex;
		public $score;
		public function __wakeup(){
			if(@$_GET['cmd']=="order"){
				system("calc");
			}
		}
		}
		$stu1 = new Stu();
		$stu1->name = "order";
		$stu1->age = 22;
		$stu1->sex = true;
		
		// var_dump($stu1);
		// print("
");
$a=serialize($stu1); // echo $a; print("
"
); $b=unserialize($a); // var_dump($b); ?>

一片空白

简单php反序列化实现执行代码_第2张图片

传参执行过后即可实现代码执行

简单php反序列化实现执行代码_第3张图片

你可能感兴趣的:(php,android,开发语言,web安全,安全,网络安全)