反序列化漏洞【2】

1.php反序列化漏洞-第一关

对输入的flag进行反序列化(unserialize),再调用action的方法,eval任意执行

创建一个对象a,调用action的方法,让其执行命令phpinfo();最后输出a序列化后的内容

2.php反序列化漏洞-第二关

__construct : 在创建对象时候初始化对象。

__destruct : 当对象所在函数调用完毕后执行一般用于对变量赋初值

或者在对象被销毁的时候触发 

 当我们序列化时使用new函数实例化类的时候就会触发

<?php
highlight_file(__FILE__);//
作用是将当前文件的代码以语法高亮的形式输出到浏览器。
include("flag.php");//文件中包含flag.php文件
class mylogin{
    var $user;
    var $pass;

创建一个对象mylogin引用两个属性user,pass
    function __construct($user,$pass){
        $this->user=$user;
        $this->pass=$pass;
    }

//可以对成员属性进行初始化,成员属性为user,pass
    function login(){
        if ($this->user=="daydream" and $this->pass=="ok"){
            return 1;

//登录验证,通过正则表达式验证输入的用户名、密码位数、字符是否合法
        }
    }
}
$a=unserialize($_GET['param']);
if($a->login())
{
    echo $flag;
}
?> 
<br><a href="../level3">点击进入第三关</a>

3.php反序列化漏洞-第三关

与第二关一致,只是更换传参形式为Cookie

4.Java 反序列化漏洞--工具

php反序列化漏洞看代码,java反序列化漏洞需利用工具

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值