4
“Tiêm vắc-xin” cho AutoCAD của bạn thứ 5, 20/12/2012 01:33:08- chuyên mục Trang chủ » Công nghệ » Kinh nghiệm - Thủ thuật Virus được viết dưới ngôn ngữ Autolisp (một dạng virus macro) chạy dưới môi trường AutoCAD, nó làm mất một số lệnh thông dụng cũng như thay đổi thiết lập hệ thống khiến việc sử dụng AutoCAD trở nên rất khó khăn. Máy tính đã nhiễm virus này thì dù có cài lại Windows hay AutoCAD đều không khắc phục được vì file virus nằm rải rác khắp các thư mục trên ổ cứng. Khác với Macro trong Excel hay Word, phần mềm AutoCAD không thể disable autolisp và hơn nữa người dùng AutoCAD lại sử dụng rất nhiều autolisp cho công việc của họ. Một số phần mềm Antivirus (như BKAV, Kapersky,...) đã diệt được một số dạng của virus này nhưng không diệt được hết biến thể đa dạng của nó đang ngày ngày được sản sinh. Nguyên nhân của sự đa dạng các biến thể là vì một người có trình độ Autolisp mức cơ bản cũng có thể ‘hô biến’ một con virus gốc thành một biến thể khác chỉ bằng phần mềm Notepad. Bài viết này giới thiệu một cách tạo vắc-xin để ‘tiêm’ vào AutoCAD. Liều vắc-xin là một đoạn mã Autolisp cấm mọi thao tác ghi vào các thư mục hệ thống của AutoCAD - triệt tiêu nguyên nhân căn bản nhất của sự lây nhiễm virus. Lệnh cấm này không ảnh hưởng đến các mã lisp lành tính thông thường. Ngoài ra, để phòng ngừa lây nhiễm, vắc-xin này sẽ loại bỏ mọi file tự động chạy nằm ở thư mục chứa bản vẽ để tránh bị tự động tải lên và thay đổi thông số hệ thống. <>Giải pháp: AutoCAD khi khởi động, sẽ lần lượt tự động load các file Autolisp. Trong đó file acad20## .lsp (20## là phiên bản AutoCAD, ví dụ 2012) trong thư mục cài đặt AutoCAD được load đầu tiên. Các file file acad.lsp, acaddoc.lsp, acad.fas và acad.vlx,... (các

Tiêm Vắc Xin Cho Autocad

Embed Size (px)

DESCRIPTION

Chống nhiễm virus cho Autocad

Citation preview

Tim vc-xin cho AutoCAD ca bnth 5, 20/12/2012 01:33:08- chuyn mcTrang chCng nghKinh nghim - Th thutVirus c vit di ngn ng Autolisp (mt dng virus macro) chy di mi trng AutoCAD, n lm mt mt s lnh thng dng cng nh thay i thit lp h thng khin vic s dng AutoCAD tr nn rt kh khn. My tnh nhim virus ny th d c ci li Windows hay AutoCAD u khng khc phc c v file virus nm ri rc khp cc th mc trn cng. Khc vi Macro trong Excel hay Word, phn mm AutoCAD khng th disable autolisp v hn na ngi dng AutoCAD li s dng rt nhiu autolisp cho cng vic ca h.Mt s phn mm Antivirus (nh BKAV, Kapersky,...) dit c mt s dng ca virus ny nhng khng dit c ht bin th a dng ca n ang ngy ngy c sn sinh. Nguyn nhn ca s a dng cc bin th l v mt ngi c trnh Autolisp mc c bn cng c th h bin mt con virus gc thnh mt bin th khc ch bng phn mm Notepad.Bi vit ny gii thiu mt cch to vc-xin tim vo AutoCAD. Liu vc-xin l mt on m Autolisp cm mi thao tc ghi vo cc th mc h thng ca AutoCAD - trit tiu nguyn nhn cn bn nht ca s ly nhim virus. Lnh cm ny khng nh hng n cc m lisp lnh tnh thng thng. Ngoi ra, phng nga ly nhim, vc-xin ny s loi b mi file t ng chy nm th mc cha bn v trnh b t ng ti ln v thay i thng s h thng.Gii php:AutoCAD khi khi ng, s ln lt t ng load cc file Autolisp. Trong file acad20##.lsp (20##l phin bn AutoCAD, v d 2012) trong th mc ci t AutoCAD c load u tin. Cc file file acad.lsp, acaddoc.lsp, acad.fas v acad.vlx,... (cc file virus tim tng) trong th mc cha bn v s c t ng load vo ngay sau . V vy ta s tim vc-xin vo file ny v hiu ha cc m virus tim tng ny. Sau y l 3 bc x l tim vc-xin.Bc 1.Chy phn mm Notepad v m file acad20##.lsp trong th mc C:Program FilesAutodeskAutocad20##Support. Nu bn khng tm thy file ny, hy g (findfile acad20##.lsp) ti dng lnh AutoCAD hin th ng dn ti file ny, bn nh thay20##bng phin bn AutoCAD ca bn (v d:2000,2002,2004,..2013).Bc 2.Nhp cc on m lnh sau vo cui file autocad20##.lsp:;lu lnh open gc(if (null cadvietoon)(setq cadvietoon open)); hm xc nh mt file c nm trong th mc h thng hay khng?(defun cadvietisf(f) (wcmatch (strcase (vl-filename-directory f)) (strcase (strcat (vl-filename-directory (findfile "base.dcl")) "*," (strcat (vl-filename-directory (findfile "acad.exe")))"*")))); G bo v cho hm open file(pragma '((unprotect-assign open))); nh ngha li hm open file chn thao tc write v append; nu file nm trong th mc h thng(defun open (f m)(if (and (wcmatch m "W,A,w,a") (cadvietisf f)) (progn (princ (strcat " CADViet Vacine prevents writing to: " f " -------------------- ")) nil) (cadvietoon f m))); t li bo v cho hm open file(pragma '((protect-assign open))); Xa cc file autorun khng nm trong th mc h thng(foreach fn (list "acad.lsp" "acad.fas" "acad.vlx" "acaddoc.lsp" "acaddoc.fas" "acaddoc.vlx" "acad.dvb")(if (and (findfile fn) (not (cadvietisf fn))) (vl-file-delete (findfile fn)) )); Gii phng bin(setq fn nil); Gi vl-load-com nu cha c gi(if vlax-ename->vla-object (vl-load-com)); In thng bo vc-xin c load ln thnh cng(princ " ---------- CADViet Vaccine is loaded! ---------- ")(princ)

Bn lu l cc t sau du chm phy (;) ca m lnh l cc dng comment, khng nht thit phi g vo. Hoc bn c th download dng m trn : http://www.cadviet.com/upfiles/3/vs.lsp sau copy v paste vo file acad20##.lsp.Bc 3.Save file acad20##.lsp li.Nh vy l bn tim cho AutoCAD ca bn mt liu vc-xin, m bo t gi tr i bn s khng b nhim AutoCAD na. Nu v mt l do no bn mun g vc-xin ra khi AutoCAD, bn ch cn xa cc dng thm vo ra khi file l c.Xemtin cng nghmi nht ti TECHZ.VNNgun : Tp ch Echip