如何检测下载程序是否后台挖矿?CPU/GPU占用异常存疑
检测可疑程序是否进行加密货币挖矿的方法
这种情况确实要警惕——非GPU密集型程序在电脑空闲时拉满GPU使用率,大概率是在偷偷挖矿。我给你整理几个实用的检测方法,从系统级监控到抓直接证据都有:
一、先从系统监控工具入手,定位异常进程
- Windows 系统:打开任务管理器切换到「详细信息」标签,找到那个可疑进程,重点看它的「GPU引擎类型」——如果程序本身和3D渲染/计算无关,却占用了CUDA/OpenCL计算引擎,或者GPU使用率长期居高不下,那嫌疑很大。另外可以打开「资源监视器」,看该进程的网络活动,挖矿程序会持续向矿池发送数据,你会看到它有稳定的出站流量。
- macOS 系统:启动「活动监视器」,切换到「GPU」标签查看进程的GPU占用率,再到「网络」标签看它的连接情况,陌生IP的持续连接要留意。
- Linux 系统:用
htop看CPU占用的同时,用nvidia-smi(英伟达显卡)或radeontop(AMD显卡)查看GPU的进程占用详情;再用netstat -tulpn命令列出所有网络连接,找可疑进程对应的陌生IP和端口。
二、深挖进程细节,找挖矿痕迹
- 查看命令行参数:很多挖矿程序启动时会带矿池地址、钱包地址这类参数。Windows下右键任务管理器里的可疑进程,选「打开文件所在位置」,再用
wmic process get name,commandline命令查看它的启动参数;Linux下直接用ps aux | grep [进程名]就能看到完整命令行,要是里面有一串类似stratum+tcp://xxx.xxx.xxx.xxx:xxxx的矿池地址,或者以0x开头的以太坊钱包地址,基本实锤。 - 检查数字签名:正规软件的进程都会有有效的数字签名,挖矿程序大多是无签名或者伪造签名。Windows任务管理器里右键进程选「属性-数字签名」,如果显示「没有数字签名」或者签名无效,那这个程序肯定有问题。
三、抓直接证据,坐实挖矿行为
- 搜索钱包地址或挖矿特征字符串:挖矿程序的代码里大概率会硬编码钱包地址或者挖矿算法标识。Windows可以用Process Explorer打开进程,右键选「属性-内存」,在字符串里搜索比特币(以1/3开头)、以太坊(以0x开头)的钱包地址格式;Linux下直接用
strings /proc/[进程PID]/exe | grep -E "(0x[0-9a-fA-F]{40}|[13][a-km-zA-HJ-NP-Z1-9]{25,34})"命令搜索,能搜到的话就是铁证。 - 验证程序哈希值:计算可疑程序的SHA256哈希值,对比已知挖矿木马的哈希库。Windows用
certutil -hashfile "程序完整路径" SHA256,Linux用sha256sum "程序路径",如果算出的哈希和已知挖矿程序的哈希匹配,就可以确定它是挖矿工具。 - 监控GPU计算逻辑:用显卡厂商的调试工具,比如英伟达的Nsight Compute,查看可疑进程在GPU上运行的内核函数——挖矿程序的内核逻辑都是重复的哈希计算,和普通程序的GPU调用完全不一样,一眼就能看出来。
最后处理建议
如果确认是挖矿程序,先立即终止进程,然后删除程序文件,再清理它可能添加的自启动项(Windows看任务计划程序、注册表Run键;Linux看crontab、init.d目录),最后用杀毒软件全盘扫描一遍,防止残留。
内容的提问来源于stack exchange,提问作者John Wang




