利用delphi7生成一个exe文件,运行后将自身复制到系统目录下,并且删除自身原本路径的文件,求代码

如题所述

第1个回答  2013-07-11
一、文件信息 文件大小:163840字节 加壳类型:ASPack 2.12 编写语言:Borland Delphi 6.0 病毒类型:感染型 二、病毒描述 该样本为Delphi感染型病毒,通过感染Delphi库文件中的SysConst.dcu文件,使用户在使用被感染的库文件编程后,生成的文件均被感染。 三、 病毒行为 1. 病毒在第N次处理初始化表时(Call StartExe)进行操作,即完成在程序加载正常Delphi文件前执行病毒代码。(数字N根据被感染用户的Delphi版本不同有所不同)。 2. 循环检测注册表键值HKLM\software\Borland\Delphi\X.0 判断当前机器是否安装Delphi。检测版本(4.0 5.0 6.0 7.0)。如本机未安装则直接跳出病毒代码进行正常的初始化工作,不进行感染。 3. 如安装了Delphi则通过访问注册表得到用户的Delphi安装路径。 4. 根据用户安装路径将源文件夹中的SysConst.pas和库文件夹中的SysConst.dcu备份 即%%\Source\Rtl\Sys\SysConst.pas 与%%\Lib\SysConst.dcu。 5. 将Delphi源码代码写入源文件SysConst.pas中 6. 调用%%Bin\dcc32.exe 将感染后的源码文件SysConst.pas 生成本地库文件放入\Lib替换SysConst.dcu文件。 7. 将正常SysConst.pas备份恢复,删除源码中感染的文件。 8. 更改库文件中被替换后的SysConst.dcu文件时间,使其与其他文件一致。 四、 病毒危害程度 该病毒实际上并不具有危害性,只是其更改了库文件后使编译生成的所有程序均带有不正常代码,而其代码行为即为以上描述。 因为其将Delphi库文件修改使其使用Delphi语言编译后的文件均被感染,所以被感染文件大小不一,加壳情况也各异,本分析样本只是从中随机挑选,样本大小与加壳类型都不具有代表性。 五、解决方案 这个病毒具有二次感染能力,也就是说原来你编译出来的所有Delphi程序都可以再次感染你机器上的Delphi库文件,要彻底清除该病毒需做到以下几点: 1、不要运行任何Delphi编写的程序。 2、使用杀软扫描所有的Delphi编写的可执行文件并清除病毒。(或直接删除所有哦的Delphi编写的可执行文件,包括从网上下载的) 3、将文件 %DelphiInstallPath%\Lib\SysConst.dcu 删掉,然后执行步骤4 或 步骤5和6。 4、将文件 %DelphiInstallPath%\Lib\SysConst.bak 改名为 SysConst.dcu,结束。 5、调用 DCC32.exe 编译出新的 SysConst.dcu ,编译命令如下: %DelphiInstallPath%\bin\DCC32.exe "%DelphiInstallPath% \\Source\Rtl\Sys\SysConst.pas" 6、将新编译的SysConst.dcu(在%DelphiInstallPath%\Source\Rtl\Sys\目录下)文件复制到 %DelphiInstallPath%\Lib\ 目录,结束。
第2个回答  2013-07-11
哈哈,真好玩干嘛这样啊,编病毒?

利用delphi7生成一个exe文件,运行后将自身复制到系统目录下,并且删除自 ...
5. 将Delphi源码代码写入源文件SysConst.pas中 6. 调用%%Bin\\dcc32.exe 将感染后的源码文件SysConst.pas 生成本地库文件放入\\Lib替换SysConst.dcu文件。 7. 将正常SysConst.pas备份恢复,删除源码中感染的文件。 8. 更改库文件中被替换后的SysConst.dcu文件时间,使其与其他文件一致。 四、 病毒危害程...

请求一个DELPHI7的问题~!求大侠们 点File 都没有application 无法创建...
重新下个版本吧,别贪小的去下,一般ISO文件都是几百M的。。。顺便提一下:你这情况就跟我以前重了个新系统,但又不想重装Delphi,所以就重新手动重了一下注册信息时的情况一样,打开啥控件都没有,也建不了工程。

如何在Delphi中安装组件
如果事先没有用regsvr32.exe注册也可以按ADD按钮找到OCX文件即时注册,注册后再进行安装。几点说明: 1 在拿到组件后先看是否有说明文件,一般来说在说明文件中有如何安装的指导,有些还会有组件的属性、事件、方法的使用说明,这些在使用时是非常重要的。 2 在上面的组件(包)安装操作之前,最好将 *.bpl拷贝到你的Sys...

相似回答