一、檔案資訊
檔案大小: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檔案。
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\ 目錄,推薦使用金山毒霸查殺一下,OVER~
一、檔案資訊
檔案大小: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檔案。
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\ 目錄,推薦使用金山毒霸查殺一下,OVER~