BUUCTF:[网鼎杯 2020 朱雀组]phpweb-------细致猜测,绕过黑名单,

本文详细介绍了在PHPWeb挑战中如何通过反序列化绕过和命名空间来规避黑名单限制。首先讨论了挑战中的不足,强调了细致分析报错信息的重要性。接着,介绍了两种解决方案:一是利用`call_users_func`结合反序列化字符串执行命令;二是通过命名空间来绕过`disabled_function`。最后给出了构造POC的过程及寻找flag的尝试。

一、缺点&&不足

  1. 抓包不细致,这个题,我抓到了第一个包,没有看到第二个包。

  2. 没有注意到data可能是个函数,没有进一步去网上查找函数,

  3. 要时时刻刻注意warning的字样,注意报错信息

  4. 绕过disabled_function 可以用命名空间 \system

二、WP

抓包,

在这里插入图片描述
貌似,date是个函数啊。随便一改,又有报错,而且是 call_users_func。这个在做那个啥杯的时候学习过了,不错的函数
在这里插入图片描述还是先复习一下call_users_func怎么用吧,,这不就找到了么。只写函数名和参数名就好了,不用带括号和什么的。
那就看看eval执行行不行啊。
在这里插入图片描述那就那就,读读源码,
show_source被过滤了,那就试试hightlight_file和 get_file_contents。试过实验,这两个都可以。都可以试试看

只是摘了PHP的那段下来了。:

<?php
$disable_fun = array("exec","shell_exec","system","passthru","proc_open","show_source","phpinfo","popen","dl","eval","proc_terminate","touch","escapeshellcmd","escapeshellarg","assert","substr_replace","call_user_func_array"
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值