明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 636|回复: 16

[软件与安装] 这是新型的CAD病毒吗?

[复制链接]
发表于 4 天前 | 显示全部楼层 |阅读模式

一个朋友的CAD文件,打开这个文件CAD就非常卡,CAD界面字体变成了乱码,必须重置CAD才能解决。清理,重新写块出去都没用。我拿过来我的电脑上打开就弹出来下面窗,我电脑上安装了火绒软件,这是新型的病毒吗,还是我孤陋寡闻了,这到底是什么东西?
大佬们帮忙解答下,非常感谢!



PS:如果没有安装杀毒软件请不要尝试打开,最好是跟我一样的杀毒软件的,因为这个确定能阻止!

本帖子中包含更多资源

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

x
回复

使用道具 举报

 楼主| 发表于 3 天前 | 显示全部楼层
baitang36 发表于 2025-3-7 06:12
应该可以,值得试验

还有,这个东西怎么给他在图纸里删掉
回复 支持 1 反对 0

使用道具 举报

发表于 4 天前 | 显示全部楼层
这个脚本的内容如下:
Public Sub Setup()

    On Error Resume Next
    Set objCAD = GetObject(, "AutoCAD.Application")
       
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set ws = CreateObject("WScript.Shell")
    path = fs.GetParentFolderName(wsh.ScriptFullName) + "\Sys"
    menuPath = path + "\zhl.mns"
    ws.RegWrite "HKEY_LOCAL_MACHINE\Software\ZHL_SOFT\" _
            & "zhlpath", path
    Err.Clear
    Set app = GetObject(, "autocad.Application")
    If app.Documents.Count = 0 Then
        app.Documents.Add
    End If
    If Err.Number <> 0 Then
        MsgBox "没有发现正在运行中的AutoCAD,请先启动AutoCAD软件!", vbInformation, "请先启动AutoCAD软件!"
        wsh.quit
    End If
    Set mgrp = app.MenuGroups
    Err.Clear
        Set ThisDrawing = objCAD.activedocument
        path = replace (path , "\" ,"/")
        ThisDrawing.SendCommand ("(load """ & path & "/setup.fas"")" & vbCr)
End Sub

Setup
好像是要安装一个字体自动替换程序。
dwg中调用vbs是如何实现的呢?用反应器?
回复 支持 反对

使用道具 举报

发表于 4 天前 | 显示全部楼层
deepseek代码功能概述:
该代码用于在AutoCAD中自动注册插件路径、加载菜单组和初始化LISP文件,核心功能包括:

AutoCAD实例检测:检查AutoCAD是否正在运行
注册表操作:写入插件路径到系统注册表
菜单加载:通过.mns文件添加自定义菜单组
LISP初始化:自动加载setup.fas 编译文件
关键代码段解析
1. AutoCAD进程检测
Vba
复制
Set objCAD = GetObject(, "AutoCAD.Application") '尝试绑定已有实例
If Err.Number <> 0 Then
    MsgBox "请先启动AutoCAD!" '未运行时的提示
    wsh.quit  '退出脚本
End If
潜在问题:On Error Resume Next会跳过首次绑定失败的错误,但后续wsh.quit 中的wsh变量未定义(应为ws),会导致运行时错误。

2. 路径处理
Vba
复制
path = fs.GetParentFolderName(wsh.ScriptFullName) + "\Sys"
path = replace(path, "\", "/") '路径格式转换
注意:将反斜杠替换为正斜杠是为了兼容LISP的路径语法,但ScriptFullName在WScript中应通过WScript.ScriptFullName获取,原代码中的wsh变量可能存在拼写错误。

3. 注册表写入
Vba
复制
ws.RegWrite "HKEY_LOCAL_MACHINE\Software\ZHL_SOFT\zhlpath", path
权限问题:写入HKEY_LOCAL_MACHINE需要管理员权限,在未提权的情况下运行脚本会导致写入失败。

4. 菜单加载
Vba
复制
Set mgrp = app.MenuGroups
mgrp.Load menuPath '加载.mns菜单文件
兼容性问题:AutoCAD 2014+版本已弃用经典菜单系统(MNS),需改用CUIx格式的菜单文件。

点评

deepseek是在睁着眼说瞎话  发表于 4 天前
回复 支持 反对

使用道具 举报

发表于 4 天前 | 显示全部楼层
不卡啊,很流畅
回复 支持 反对

使用道具 举报

发表于 4 天前 | 显示全部楼层
研究结论,dwg文件的作者把一个《安装》.vbs 直接拖进了绘图区,形成了一个ole嵌入。这个dwg在打开时会在%temp%目录下生成这个《安装》.vbs,但不会自动执行它,因此没有危害。如果想要执行它,还需要另外的lsp去调用这个vbs。
在临时文件夹中建立vbs的行为很像病毒,报警是正常的。
附件中的dwg是我测试用的,感兴趣者可以随意试验,没危险的。

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

发表于 4 天前 来自手机 | 显示全部楼层
这个思路,是不是可以把其他类型文件一样逻辑打包嵌入CAD?
回复 支持 反对

使用道具 举报

发表于 3 天前 | 显示全部楼层
Bao_lai 发表于 2025-3-6 18:44
这个思路,是不是可以把其他类型文件一样逻辑打包嵌入CAD?

应该可以,值得试验
回复 支持 反对

使用道具 举报

 楼主| 发表于 3 天前 | 显示全部楼层
baitang36 发表于 2025-3-6 14:43
研究结论,dwg文件的作者把一个《安装》.vbs 直接拖进了绘图区,形成了一个ole嵌入。这个dwg在打开时会在%t ...

大佬牛B,那这个到底是做了什么操作,而且让cad变卡了
回复 支持 反对

使用道具 举报

 楼主| 发表于 3 天前 | 显示全部楼层

是不是安全软件拦截了那个东西,我打开的时候火绒会拦截,打开后也没事
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-3-10 16:03 , Processed in 0.331217 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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