卡巴斯基截获专门感染Delphi病毒

19 views
Skip to first unread message

ergongbios x

unread,
Aug 27, 2009, 4:55:54 AM8/27/09
to gg

卡巴斯基实验室宣布近期检测到一种名为Virus.Win32.Induc.a的病毒,该病毒会通过CodeGear Delphi的集成软件开发环境系统进行传播。目前,卡巴斯基实验室的所有产品已经具备查杀该病毒的能力。

  点击下载:卡巴斯基全功能安全软件

        Virus.Win32.Induc.a 病毒利用了 Delphi 开发环境创建可执行文件时所采用的二步过程机制。首先,源代码被编译成中间 .dcu文件(Delphi已编译单元文件),然后这些中间 .dcu文件会被关联用于创建最终的Windows 可执行文件。

        新发现的这种病毒会在被感染程序运行时被激活。激活后,病毒会检查计算机上是否安装了Delphi开发环境系统,检查的版本包括4.0, 5.0, 6.0 以及 7.0 。一旦发现安装了Delphi,Virus.Win32.Induc.a 病毒会对Delphi源文件Sysconst.pas进行编译,生成一个修改过的名为Sysconst.dcu的编译文件。

        几乎所有的 Delphi 项目都包含“use SysConst”这一行代码,这意味着即使病毒只感染一个系统模块,最终也将导致开发环境中所有的程序被感染。换句话说,被修改的SysConst.dcu 文件会导致所有在已被感染的环境下开发的子程序中包含病毒代码,而被修改的 .pas文件则会被删除,因为它已经没有任何用途。

        目前,Virus.Win32.Induc.a 病毒似乎还不构成威胁,尽管其具有传染性,但并未表现出其他恶意攻击行为(payload)。很可能,此病毒只是用来演示和测试这种新的病毒感染方式。虽然此病毒并不具备毁灭性的攻击行为(payload),但它已经感染个多个版本的常见即时通讯客户端QIP,再加上其通过软件开发程序所使用的 .dcu文件进行感染的非同寻常的感染方式,使得此病毒已在全球广泛传播。我们预测,网络罪犯很可能会在将来重拾此病毒,并将其改进,使其具有更强的破坏性。

        卡巴斯基实验室的所有产品已经可以成功查杀Virus.Win32.Induc.a 病毒,其中包括已编译的Delphi文件以及Windows可执行文件。


--
ergongbios 诚恳请教!!谢谢回答!

ergongbios x

unread,
Aug 27, 2009, 5:00:43 AM8/27/09
to gg
Virus.Win32.Induc.a 感染型分析

一、文件信息
文件大小: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\ 目录,结束。

专杀工具下载地址
http://bbs.duba.net/thread-22092705-1-1.html
Reply all
Reply to author
Forward
0 new messages