QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 11321|回复: 6
收起左侧

[已解决] 打开cad再关闭后有acad.lsp文件生成

[复制链接]
发表于 2007-6-22 00:09:43 | 显示全部楼层 |阅读模式 来自: 中国河南郑州

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
我每次打开cad再关闭后都有acad.lsp文件生成,为什么??

acad.txt

3.34 KB, 下载次数: 39

发表于 2007-6-22 08:02:25 | 显示全部楼层 来自: 中国辽宁营口
发表于 2007-6-22 08:18:03 | 显示全部楼层 来自: 中国江苏无锡

流行CAD“病毒”ACAD.LSP(转载)

在acad启动或开图时会被自动加载的lsp文件
% N+ h- Z) n. |! x, A$ J% O9 ^# B浅见,这种lsp包括:- d/ ?# d: u- U) u# F
acad.lsp,新装的纯acad里面没有这个文件。一般由用户自己编写或者第三方软件提供,放在acad目录或support子夹都可以。
0 l( t6 P  x/ o2 q$ g$ i8 ]1 _acadr$.lsp,$是系统版本号,比如acadr14.lsp,在support子夹。- \! A  e9 q9 R) a' |/ w7 O
还有一种先不说了.* U/ l7 {. i; o
" C0 V" {$ i$ j3 B, z  m' z
加载时自动运行的由defun函数定义的函数名
' z" a/ |. H. o0 x1 r& F2 s就一种,s::startup,它和acad.lsp配套,同时不支持其他扩展名为lsp的文件
' T9 i, m# \  e$ A可能是因为这个原因,目标被定位于acad.lsp? 不知道了,其实不一定非用s::startup,用了那就说明这位大虾是个追求完美的人~) o' ^- h6 U" j: `( g0 n" Q$ {

+ d$ p  Y  ]7 ]8 P: z' ?  |铺垫好了,来看看这个病毒acad.lsp的作用~1 q0 e% K2 ?) X8 w; x

2 H1 V% P% t( v( X{00.定义自动函数s::startup; G$ w# S" L) p0 K2 }. p- O

7 o; J6 ?5 _9 W* ~% D" i0 A{01.获取cmdecho变量,改设为0,一般程序最后会再改回去,
& R& P: H4 o6 `; g& k5 B( ^5 Q目的是悄悄地进村打枪地不要.大家都喜欢这么干 }1 R) T) E; F) l

) g/ n! `- T6 h) Q& O' ~( H{02.通过搜索base.dcl文件,获取acad安装路径(support子夹) }
$ f# s( j7 w% \! a. x
4 r2 ^, ]7 ~& b0 L# i{03.获取菜单文件完整路径和名称,后来又没用~}8 z: N' l) ]! p1 M) V" D/ n

4 e9 M6 Q* v: i# C" H3 n. M{04.获取当前图形文件完整路径和名称,截取当前工作路径}
. o7 V; w& D6 i9 @1 P3 G, C3 S/ u& m
, z4 ~) y- I1 ?. n% G1 ^{05.获取当前首选acad.lsp文件完整路径和名称,截取其路径}8 A# {: u) _7 |* u1 D

$ P- ?- E! F; C/ D3 N: ?9 X3 n{06.预设程序标记变量lspbj为0,意思是假设还没得手}
5 N  K% i; e! i5 L7 K0 T; R  z
  b# ]% W" e) ?$ b{07.用只读方式打开support中的acad.lsp,如文件不存在则建立同名文件8 ?4 d, X+ Q/ v8 j" r
逐行检查此acad.lsp文件内容,一旦发现某行开头为(load "acadapp")
( A& h/ z% @) s% ~4 e则设程序标记变量lspbj为1,表示已经得手过% Q) D- I2 T3 g# Y
只读任务结束,关闭文件}
. o* ?7 b( x' k3 R, y3 T% D1 N9 ]& u1 |
{08.如果找到的acad.lsp路径和当前工作路径不同,
! L; g# O/ A8 K, e8 Z6 w0 ]0 z, I; S并且不在acad\support里面,则
" W( v) h0 |) u: g) p! J- ]{如果lspbj为0,也即尚未得手,那么
3 n- e" S' k8 K- G$ r' X, \+ p. j7 m, q  j就在acad\support\acad.lsp文件末尾添加(load "acadapp")(princ),& V* H6 }: e2 O
即acad启动或开图时自动加载acadapp.lsp并隐蔽命令行反应。
+ o- w) ~& F9 g8 N+ @- ^然后同路径创建acadapp.lsp文件,作为刚改过的acad.lsp的备份. }$ c3 h+ V6 o' h7 ~$ O+ b! t
{如果lspbj为1,即已得手,且当前绘图不是未命名的新绘图任务,则
7 N  P" F) f3 \4 x& M用复写acad\support\acadapp.lsp的方式- n: M- L' v2 {% r
在当前工作路径创建acad.lsp. }. r) f& A0 f0 H. b
}7 M) S0 ?6 @$ _- ~' B$ F
;注:到此为止,acad启动时必搜的程序文件路径里面都放好了此acad.lsp!- Z( ^6 O5 s, U6 ^2 t5 A0 A
3 k) p9 ?0 G, ]8 F
{09.程序开始做真正让大家不愉快的事情,- e' x' d8 W" s6 C: g$ Q1 e
它取消了3个系统预设的命令名: 不止explode, 还有xref和xbind
% J; A+ l  ^2 p. w9 A/ o' k% |9 l可能因为xref和xbind不是每个人都常用,所以好象报案的不多,& z. P4 u& B  w1 r4 s- {7 v
而explode几乎是所有用acad画图的人都难以避免使用的,就显得很典型}& h7 v0 L" `& Z+ k
: f7 B+ q. ^/ D: r6 ?# v
s::startup函数定义结束}
1 P# `- A6 r+ R/ N" V) d0 N& ~* f6 D" K
3 k( l2 F4 V( y6 M" g  o还没完,前面取消了那3个命令的定义,现在要重新定义它们,幸好这位大虾良心不算坏,只是让命令不起作用或者改成其他加法命令,并没写成破坏性函数或os命令
! |4 R, Z1 i" n# z! E
0 l  T, G6 [1 ?explode的新功能和交互情况是:! c0 _! L+ C! V
command: explode' g9 M) P7 ~( ]( L
seltct objects: 200 found
6 {, L* Y- a! {5 ^8 o5 {/ yselect objects:
, U% e7 ]+ W( ^  b. L/ y200 was not able to be explode3 v8 f) E% p: ?  ^: k
command:2 v$ v& I  i( K, p! \. c
8 H+ {6 @/ X( Z6 r  c8 x8 b
随你怎么选,它就是说炸不了
# C9 B8 g1 p$ C- U: P
" L/ V& z6 w2 i5 y0 k$ [# }然后xref和xbind这对难兄难弟双双被改成了insert,交互响应制作很不精良,根本就是空白,可能大虾忽然觉得倦了吧.
7 @0 C" d& L; A4 M% Q- e. M+ Z
) ^2 j, k- q; z! B最后,它还重新定义了bonus和express tools工具集里面提供的burst命令,其实是个外部函数(c:burst)" q2 W. w! M; ^7 h
burst原来的用途是"explode attributes to text",把属性文本炸成text类物体! q8 a8 S2 F: a
被重新定义后这样:# u$ T* a. @9 I4 `, f
command: burst; [& w! R; T% H2 P
burst----将图块中的文字炸开后成为实体' Z' }( D1 |7 O, k! P" _
select objects: 200 found+ y) \1 _6 T9 n- T0 J
select objects:
4 S, {1 W0 I4 _  e4 xcommand:
( c4 b, ~" v  F+ V0 M/ }* ]$ [* j7 l: m- R/ v
完了,全完了. 就这么完了,还是啥都不干,连通知也免了.# ?0 ^& E. D, C* O/ X% b1 T
…… ……
发表于 2007-6-22 08:31:28 | 显示全部楼层 来自: 中国江苏无锡

转载:

第一个版本:大概是在2001-02年左右出现,也可能更早; J, ^9 v6 N) ^4 n
最初由两个LSP文件相互支撑:acad.lsp和acadapp.lsp。- w+ }# w' D, d9 e" n
acad.lsp这个文件名由AutoCAD默认允许自动加载,支持目前所有AutoCAD版本,经常被第三方软件用来执行正常的系统初始化流程,所以需要查看具体代码内容才能确认是否所有的acad.lsp都是病毒,直接用系统自带的搜索功能删除所有的acad.lsp可能会造成误删,导致一些第三方软件(包括相关用户自定义程序)不能顺利加载。宜使用专杀工具实现快速安全删除。! K" V; ^7 D) B; M: [1 C

4 a$ i( g0 K4 f; R: ^acadapp.lsp这个文件名在初装的AutoCAD系统中是没有的,更不是AutoCAD必须的文件,至少到目前,它是纯粹的病毒备份文件,文件内容和对应的acad.lsp一致。可直接搜索删除。
- W( k$ t% T9 G' N
. ?! K' L# Y6 A7 P! p  H, }7 y  T第二个版本:大概是在2005年出现,反正俺是在那时候发现的
7 h1 E' I  c5 E8 ^+ L在第一代acad.lsp病毒专杀工具出现一段日子之后,这个病毒出现了变种,但是变化很小,只是把acadapp.lsp的名字改成了acadiso.lsp,同理,这个acadiso.lsp也可以直接搜索删除。
4 ]# {5 C: B/ Q5 ^" e0 q. `2 v
/ r2 D4 z! S% J9 G3 R" eQiuFeng编写的第一代专杀工具的基础上增加了查杀acadiso.lsp的内容,有需要的TX可到此地下载:( s* Z* o) X7 x3 U0 {6 I! v
http://sin6.ys168.com2 o6 b0 ~/ o+ g1 x2 k- G- r
在AutoCAD>>外部工具和补丁>>CheckLsp_1.05.zip 0.6MB$ q4 t- k0 n& e1 K
它可以正确识别并查杀acad.lsp、acadapp.lsp和acadiso.lsp等3个文件。
% g0 F) _- |- z/ E; C1 F' c( o3 D- z
第三个版本:可能是在今年(2006)才出现的
2 s2 w2 w; r" n( P# f# }1 X在原有动作的基础上,感染acad.mnl文件,在文件末尾添加加载acadapp.lsp的语句。而且很笨,会添加很多遍。如果发现你的acad.mnl文件的修改时间非常接近当前时间,那就很可能是感染了它的最新变种,打开文件,看文件末尾便可确认。
' m- J1 m3 _' y& h' Y# h4 w9 [0 O, y& q/ i, f
偶建议的查杀和免疫步骤(顺序进行):
5 |; [& ?* l: Q" d1、使用专杀工具(北京鸿叶的专杀工具只能查杀第一代病毒,好像没看到有升级版本,建议使用偶改写的那个);另外,有些杀毒软件也可以查杀前两代病毒文件,如能实时查杀那当然是最好不过了。
# R. _2 H# N" l& [+ q
9 d% H' a4 |  C) {5 v$ F" a% d2、把AutoCAD根路径中正常的acad.lsp文件属性改为“只读”,如没有自定义的同名文件也没有第三方的这个文件,则在AutoCAD根路径新建一个名为acad.lsp的空文件(注意一般可能需要先确使windows系统显示已知文件格式的扩展名),并改为“只读”。
4 U) \1 c' O/ j8 K6 D总之,最后的结果是在AutoCAD的根路径下,一般是X(盘符):\program files\AutoCAD XXXX(版本号),应该有一个“只读”的acad.lsp。
9 v6 @5 f+ Z1 \. F; D& P) F  m+ r; {
% I: h9 x" W6 J! ~: K3、找到acad.mnl文件(一般在support文件夹内),如中招须用记事本(最好不要使用写字板或者word等高级文本编辑器)清除文件末尾的对应代码。
. X' X/ J3 _: Y" w
$ N5 |3 \; d# y(load "acadapp.lsp")(princ)0 r" e7 h% j8 Y) G) G+ {

0 t5 K! a/ `% m其中acadapp也可能是acadiso,不过偶只看到过前者。
; F  z; z1 u0 f3 n# ^4 X将acad.mnl也改为“只读”。2 o2 O% R1 ^4 b3 r+ a
注意,此文件为AutoCAD运行所必须,不可删除!
$ U+ g' B5 s$ p% e/ u# C7 w) ~, ?% j  u& {; a
以上所有改“只读”的目的均为防止日后再次感染,但如果要加装第三方软件,则最好临时取消它们的“只读”属性,待安装完成后再次改回“只读”。否则可能导致第三方软件安装失败。
% Q, W3 c9 L3 e  Q# Q. S. F4 o0 N, V1 z' c  V: R3 m
展望一下它(LISP代码病毒)的未来
, d. [& ~8 y9 `& V目前R14还没有退出市场,该病毒好像还比较最求“广谱”效果,这个就限制了它使用VLISP的热情,事实上它还完全没有使用VLISP函数。虽然这并不等于说ALISP就不能造成很严重的破坏,但实现那些目标多少会让编程者觉得不爽,不如VLISP那么行云流水。
4 H" w* b% e9 L6 M* p
) _: W: i4 ]3 J3 }2 y9 B- F  R从它的作用效果看,眼下称之为“病毒”似有言过其实之嫌,但从它可以自我复制和传染扩散这方面特征来看,称之为“病毒”也属实事求是。参照AV界(Anti-virus,不是日本的那个AV界)的习惯,不妨称之为“概念病毒”。但是,只要有人愿意,它随时随地都可以变成能够删文件、格盘、改注册表的名副其实的“病毒”。
; t$ J  i; m& A( s. [4 l9 B4 c4 A) @  i- V) o4 ]  D
如果未来VLISP允许二进制读写,那么危险还会更大,所以希望Autodesk最好不要去做这样的功能扩展。5 B. O" E3 {1 M; E( E; p% }) `
9 j) _' J  G* e" i/ H5 f8 b
另外,也希望所有LISP开发人员和编程爱好者都能保持善良的人品,不要再写出为害大家的类似程序。依俺管见,此程序只是个思路问题,技术含量不高,并不能体现出编程者的技术水平,何必要把心术放到这个方向上来呢?; W, r  o3 Z, q$ R7 |

3 }2 c3 L+ i5 g( d8 U- s愿acad.lsp病毒的开发历程就此结束!
发表于 2007-6-22 10:22:54 | 显示全部楼层 来自: 中国上海
我的瑞星把他当病毒杀了
发表于 2007-7-16 18:20:53 | 显示全部楼层 来自: 中国江苏南京
每次打开cad再关闭后都有acad.lsp文件生成,这是一种病毒,用卡巴斯基就可以杀
发表于 2007-7-16 18:36:34 | 显示全部楼层 来自: 中国上海
我也遇到这个问题,还在纳闷中,现在才知道是病毒,马上关闭网络杀毒
3 ^& Z2 Z7 z" m7 m0 |
) Y( a# l+ I& \另外问一下,这是何种病毒啊?
! o2 Q9 U. ~; }/ @: m! R* h8 j$ \
[ 本帖最后由 ★新手★ 于 2007-7-16 20:31 编辑 ]
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表