一、诡异现象:办公室电脑集体“装死”
2025年3月的一个周二上午,我正在昆明西山区一家做电商的中小企业做例行巡检。刚坐下,老板老李就冲进来:“快去看看,我们办公室十几台电脑全部卡得像幻灯片,还不停弹广告!”我跟着他走进开放式办公区,只见十几位员工一脸无奈地盯着屏幕——每台电脑右下角都弹出“恭喜您中奖”之类的垃圾广告,浏览器自动打开陌生网页,系统响应慢如蜗牛。
老李的公司有30多台电脑,跑着一套电商ERP系统和办公软件。这种“集体中毒”的现象,在云南中小企业里并不罕见,但每次根因都可能不同。作为在云南摸爬滚打18年的IT老炮,我深知:这种大规模弹窗和卡顿,绝不是普通流氓软件那么简单。
初步判断:要么是内网共享了同一个病毒源(比如U盘或共享文件夹),要么是中了挖矿病毒——因为挖矿程序会消耗大量CPU资源,导致系统卡顿,而弹窗广告往往是附带“福利”。
二、第一轮排查:任务管理器里藏着“李鬼”
我选了一台症状最严重的电脑(员工小张的机器)开始排查。按下Ctrl+Alt+Del打开任务管理器,一眼就看到CPU占用率飙到95%以上,但进程列表里却找不到明显异常的进程。最可疑的是一个叫svchost.exe的进程,占用了40%的CPU——等等,svchost.exe是Windows系统的合法进程,但它的CPU占用不应该这么高。
我右键点击该进程,选择“打开文件位置”,结果弹出的是C:\Windows\System32\svchost.exe——这确实是系统路径。但直觉告诉我不对劲,因为真正的svchost.exe通常由多个服务共同使用,单个实例不会吃掉40% CPU。我顺手打开资源监视器(在任务管理器“性能”选项卡里),找到这个进程,查看它的网络活动——发现它正在向一个IP地址103.235.46.xxx(境外地址)发送大量数据包。
到这里,基本可以断定:这个svchost.exe是“李鬼”,被恶意程序注入了代码或替换了自身。但直接结束进程会立刻复活——说明有守护进程。
三、深挖:计划任务里的“定时炸弹”
要找到守护进程,最有效的方法是查看系统的计划任务和启动项。我打开管理员权限的命令提示符,输入schtasks命令查看所有计划任务,结果发现一个名为WindowsUpdateService的任务,触发条件设为“每次用户登录时”,执行的命令是C:\Windows\Tasks\update.exe(注意路径,不是正常的System32)。
我打开该计划任务的属性,看到“操作”选项卡里写着:启动C:\Windows\Tasks\update.exe并带参数/silent /run。打开该文件夹,果然找到了update.exe文件,文件大小只有300KB,创建时间正好是三天前——老李说“三天前开始卡”的。
把这个文件上传到VirusTotal(一个在线病毒扫描平台)一查,结果吓一跳:36款杀毒软件中32款报毒,归类为“挖矿木马(CoinMiner)”。这个木马的工作机制是:通过计划任务每5分钟检查update.exe是否运行,如果被杀掉就重新启动;同时它会下载最新的挖矿配置文件,连接到矿池进行门罗币挖矿。弹窗广告只是它附带的信息窃取模块——用来窃取浏览器Cookie和密码。
四、手动清理:三步斩草除根
既然找到了根因,接下来就是清理。但注意:如果只是删除文件,计划任务会在5分钟内重新下载。必须按顺序操作:
第一步:禁用并删除计划任务
- 打开任务计划程序(按Win+R,输入
taskschd.msc)。 - 在左侧树中找到任务计划程序库,在中间列表里找到
WindowsUpdateService,右键点击“禁用”。 - 确认禁用后,再右键“删除”。这一步防止任务再次启动。
第二步:清除恶意文件和注册表残留
- 打开文件夹
C:\Windows\Tasks,删除update.exe和同目录下的config.ini(挖矿配置文件)。 - 按Win+R,输入
regedit打开注册表编辑器。导航到HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run,检查是否有指向update.exe的启动项,有则删除。 - 同样检查
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run。
第三步:清理网络连接和缓存
- 打开管理员命令提示符,输入
netstat -ano | findstr 103.235.46,找到所有连接到该IP的PID。 - 在任务管理器中结束这些PID对应的进程。
- 清空DNS缓存:
ipconfig /flushdns。 - 重置Winsock:
netsh winsock reset,然后重启电脑。
重启后,再次打开任务管理器,CPU占用率降至5%以下,弹窗消失。再扫描一遍全盘,确认无残留。
五、企业级防护:从单机到全网
单机清理只是治标,要治本必须切断传播链。我判断这次病毒是通过内网共享文件夹传播的——因为老李的公司在文件服务器上设了一个“公共软件”共享目录,员工经常从那里拷贝安装包。我检查了文件服务器,果然在共享目录下发现了伪装成“office2016激活工具.exe”的病毒样本。所有员工都是通过双击这个文件感染的。
给老李的建议:
- 关闭不必要的共享:只保留必要的共享文件夹,并且设置为“只读”权限,或使用密码保护。
- 部署免费终端防护:推荐使用火绒(国内免费杀毒软件),它对挖矿病毒和流氓软件有很好的防御效果,且不占资源。
- 启用软件限制策略:通过组策略禁止用户在
C:\Windows\Tasks和C:\Users\*\AppData\Local\Temp等目录下执行exe文件。 - 培训员工:不要双击来源不明的“激活工具”“破解软件”,这是云南中小企业中毒的头号原因。
六、预防复发:日常巡检的“三个关键点”
作为IT运维,预防比救火更重要。我建议所有企业IT人员每周做一次快速巡检:
- 查看任务管理器CPU占用:如果发现某个进程长期占用30%以上CPU,且不是已知软件(如杀毒软件扫描),就高度怀疑。
- 检查计划任务:运行
schtasks命令,查看是否有不明任务(名称像系统任务但路径奇怪)。 - 检查网络流量:在路由器或防火墙上查看是否有流量异常——比如非工作时间大量数据发送到境外IP。
老李听完后,当天就让所有员工改了密码,并部署了火绒终端。一周后我回访,再没出现卡顿弹窗。他笑着说:“这18年没白干,一个计划任务就揪出了‘毒瘤’。”我回他:“其实病毒不可怕,可怕的是没人去查根因。”
写在最后:在云南做IT运维,常面对的是中小企业的“裸奔”环境。但只要我们掌握正确的排查思路——从现象到根因,从单机到全网,再小的团队也能防住80%的病毒攻击。下次遇到集体弹窗,先别急着重装系统,打开计划任务看看吧。