多种安全措施和方法可以保护您不受恶意可执行文件的侵害。
概述
恶意可执行代码(也称为恶意软件或病毒)已变得愈发普遍并且可能会影响 AutoCAD 和基于 AutoCAD 的产品的用户。如果任其扩散,恶意软件可能会导致知识产权受损并降低工作效率。
最常见的漏洞是通过允许可执行代码与数据并存产生的,例如“起始”文件夹中自动加载的 AutoLISP 文件。“起始”文件夹可以由使用桌面快捷方式图标设置的“起始”属性确定,或由双击文件以启动产品所在的文件夹确定。
更为复杂的攻击能够危害或盗取知识产权,这些攻击包括恶意的 ARX 应用程序、Object Enabler 和 DLL(动态链接库)。另一种威胁可能来自 DWG 文件中嵌入的 VBA (Microsoft® Visual Basic® for Applications) 宏。
例如,与 ZIP 文件中的图形捆绑在一起的基于项目的可执行文件可能包含已编辑版本的“acad.lsp”、“acaddoc.lsp”以及包含恶意代码的 FAS 和 VLX 文件。当将 ZIP 文件的内容提取到一个文件夹并通过双击 DWG 文件启动 AutoCAD 时,LSP 文件也会自动启动。
另外,许多病毒会尝试通过编辑“acad.mnl”,在其中添加一行来加载其自身,从而进行传播。
除了可执行文件外,还有一些其他常见威胁可用于利用 AutoCAD 和基于 AutoCAD 的产品。这些威胁如下所示:
- 破坏性的脚本、PGP 和 CUIx 文件。在使用来自外部源的这些类型的文件之前,请始终仔细检查它们,因为它们可能包含隐藏的恶意软件。
- 插入已破解副本和未经授权附加模块的恶意软件。破解软件的人员可以轻松插入其他代码,其中包括用于盗取您作品或将您的计算机转变为僵尸状态的恶意软件。
- 专用于使可执行代码溢出缓冲区的不正确的 DWG 文件。这是更为复杂的攻击类型,专用于使经篡改的图形数据作为代码在您的计算机上运行。AutoCAD 安全团队始终致力于修复 AutoCAD 和 AutoCAD LT 中的缓冲区溢出漏洞利用。如果您处理的设计数据较敏感,请仅打开来自受信任源的图形文件。
- 二进制植入。此类攻击包括插入经篡改的二进制文件(例如 EXE、DLL 和 COM 文件)以替换为有效文件。为在您的计算机或网络上植入这些文件,所需的权限可能会通过利用弱文件夹权限来获取,或使用本地管理员权限运行应用程序。
漏洞文件
恶意代码可以包含在以下类型的文件中:
- ARX、DBX、CRX、HDI 文件
- LSP、FAS、VLX、MNL、SCR 文件
- .NET 程序集
- VBA 宏(DVB 文件)
-
acad.rx
- JavaScript
- DLL 文件
安全对策
AutoCAD 安全对策能够最小化执行恶意代码的可能性,方法是提供能够
- 指定可执行文件的一个或多个受信任的文件夹。TRUSTEDPATHS 系统变量提供对受信任位置的支持,因此可执行文件可以存储在受控制的、可审核的文件夹位置。建议将这些文件夹设置为“只读”。 这些位置可由“CAD 管理员”锁定。
- 限制对“acad<版本>.lsp”和“acad<版本>doc.lsp”文件及其后续文件的访问,方法是仅允许它们从其各自默认的安装文件夹(“<安装文件夹>\Support”和“<安装文件夹>\support\<语言>”)进行加载。
- 限制在产品的当前任务中加载 AutoLISP 和 VBA 应用程序,包括所有 LSP、FAS 和 VLX 文件以及“acad.dvb”。加载行为由 SECURELOAD 系统变量控制。
- 通过将 LEGACYCODESEARCH 系统变量保留为 0(零),可以防止无意中从“起始”文件夹和图形文件夹查找和加载可执行文件。
- 在遭受攻击后,可通过在产品启动时完全禁用可执行代码来确保清除过程的安全。此功能由 /safemode 启动开关控制,并通过只读 SAFEMODE 系统变量来反映。/safemode 开关让您可以安全启动产品,以便可以对 SECURELOAD 和 TRUSTEDPATHS 系统变量进行更改。
- 使用 CAD 管理员控制实用程序锁定以下系统变量:LEGACYCODESEARCH、SECURELOAD 和 TRUSTEDPATHS。
- 通过使用 SECURITYOPTIONS 命令控制此处所述的多个系统变量,来自动设置安全级别。
重要: 使用 /safemode 开关也会阻止 AutoCAD Express Tools 和大多数命令运行,并且只能在您怀疑系统上安装了恶意软件的情况下临时使用。
建议
对于恶意可执行代码,以下最佳实践可以减少漏洞:
- 在开启 UAC 的情况下,将 AutoCAD 安装到默认的程序文件位置。不使用管理员权限运行 AutoCAD。
- 将病毒定义保持为当前。所有领先的防病毒解决方案都可识别和修复 AutoCAD 病毒感染。
- 在安装涉及 ARX、DBX、CRX、HDI 和 DLL 文件的第三方应用程序时,请确保已安装的文件已使用可靠的源(如 VeriSign)颁发的证书进行了数字签名。
- 从不在未预先检查代码的情况下,运行未知的 AutoLISP 文件或 VBA 宏。
- 决不要在未检查的情况下运行未知脚本文件。
- 将可执行代码保存在与数据分离的文件夹中。
- 将可执行代码存储在受信任的只读位置。
- 将共享的 AutoCAD CUIx 文件放置在受信任的只读位置。
- 将 SECURELOAD 系统变量设置为 1 或 2,以防止未经授权的代码在 AutoCAD 中执行。也可以使用“选项”对话框 “系统”选项卡 “可执行文件设置”按钮或在“展开向导”中修改此设置。
- 将 TRUSTEDPATHS 系统变量设置为可受信任的唯一只读文件夹。“C:\Program Files\”和“C:\Program Files (x86)”文件夹(包括其子文件夹)会自动受信任。这些路径也可在“展开向导”中进行设置。
注: AutoCAD LT® 不运行 AutoLISP、VBA 或其他应用程序,并且不需要这些安全措施。不过,建议始终遵循安全相关的最佳实践,包括限制帐户权限。