博客
关于我
PHP反序列化之SEESSION反序列化(二):切入学习点:jarvis OJ PHPINFO
阅读量:381 次
发布时间:2019-03-05

本文共 690 字,大约阅读时间需要 2 分钟。

PHP反序列化之SESSION反序列化:切入学习点:jarvisoj的phpinfo

分析一波

这一题属于没有接收$_SESSION变量赋值的类型。在PHP中,有一个upload_process机制会自动在$_SESSION中创建一个键值对,这个值刚好是我们用户可以控制的那部分。

开始入手

随便get一个phpinfo参数,先看看phpinfo有什么信息。可以看到默认的session引擎时php_serialize,但是题目使用的引擎时php。也就是说,我们放入的时候是用的php方法,取出来的时候用的php_serialize方法。

1. 上传一个网页,POST那个同名的参数

这里可以参考一下我测试的样例,理解一下各个函数的作用是什么。然后,使用Burp操作改包,修改filename,这里为什么是修改filename我也不清楚,等回头再看看。

2. Burp操作改包

发包,就看到了。这里有几点要注意的地方:

  • 语句后面的分号不要忘写了
  • Burp中把反序列化里面的双引号转义一下,避免产生歧义
  • 找到文件后,再找到目录就可以看到flag了。找目录的方法也有二

    一:用语句查询的方法来找

    可以看到当前执行的脚本文件的目录。然后就也是刚刚那个操作,就出来了。

    二:用file_get_contents函数将文件内容写入一个字符串中,然后打印出来

    phpinfo里面的全局变量的信息多的惊人

    上面那个是当前执行的脚本文件的目录。然后就也是刚刚那个操作,就出来了。

    好啦,终于写完了

    参考:https://www.cnblogs.com/zzjdbk/p/12995217.html

    你可能感兴趣的文章
    Postman做接口测试:如何自动校验接口响应
    查看>>
    postman做接口自动化测试
    查看>>
    Postman入门到入土
    查看>>
    Postman入门到精通01
    查看>>
    postman入门基础 —— 接口测试流程
    查看>>
    Postman如何做接口测试:如何导入 swagger 接口文档
    查看>>
    Postman如何做接口测试:如何导入 swagger 接口文档
    查看>>
    Qlik助力新西兰最大私人医院提高病患护理水平
    查看>>
    Postman如何生成接口文档
    查看>>
    Postman学习之常用断言
    查看>>
    postman导入curl内容
    查看>>
    postman居然是用electron开发的,我们来认识下这个框架吧
    查看>>
    postman常用公共函数
    查看>>
    Postman常见问题及解决方法
    查看>>
    PostMan怎样携带登录信息请求后台接口防止出现无法访问资源问题
    查看>>
    Postman接口传参案例
    查看>>
    postman接口功能测试
    查看>>
    Postman接口测试
    查看>>
    Postman接口测试
    查看>>
    Postman接口测试/接口自动化实战教程
    查看>>