該樣本為Delphi感染型病毒,通過感染Delphi庫檔案中的SysConst.dcu檔案,使用戶在使用被感染的庫檔案編程後,生成的檔案均被感染。
基本介紹
- 中文名:Win32.Indcu.a
- 檔案大小:163840位元組
- 加殼類型:ASPack 2.12
- 編寫語言:Borland Delphi 6.0
- 病毒類型:感染型
- 樣本:Delphi感染型病毒
基本信息,傳播過程,
基本信息
檔案大小:163840位元組
加殼類型:ASPack 2.12
病毒類型:感染型
傳播過程
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編寫的程式。
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\ 目錄,結束。