检测比特币挖矿

信息安全 比特币
2021-08-11 16:33:15

所以,我和一个网络管理员朋友正在讨论比特币挖矿。有了这么多便携式比特币挖掘软件,我们想找到在网络中检测它们的不同方法。

我们如何检测某个主机是否正在运行比特币挖掘软件?我尝试过的所有不同的矿机都是便携式的。它们可以独立于路径保存和执行,排除Program Files,bin文件夹。

关于我们如何检测比特币挖矿还有更多想法吗?

4个回答

你可以寻找流量模式等,但在挖掘比特币的人群、了解 Tor 工作原理的人群以及竭尽全力保护隐私的人群之间存在显着的交叉。这意味着:网络上的检测并不是那么可靠。它不使用大量带宽使得它特别困难。

他们可能无法隐藏的是 CPU 和 GPU 使用率。如果您可以通过 SNMP 访问计算机,则可以远程监视 CPU 峰值,或者您可以对网络上的计算机使用Get-Process PowerShell cmdlet 以查找占用 CPU 时间的事物。对于 GPU 时间;除非您能以某种方式监控功耗,否则您不太可能真正发现使用情况。

不幸的是,由于您允许人们将他们想要的软件安装到任意路径,您不太可能想出一个可靠、可重复的方法——您正在寻找的人可能会更改矿工、更改路径等更改他们的签名。

包检测: getwork是主要的官方挖矿协议。可以创建一个l7 过滤器模式来标记数据包并丢弃它们。如果像Sandvine这样的大型带宽管理设备可以检测到 getwork,我也不会感到惊讶。

但是,大多数挖矿都是池化的。似乎实现这一目标的方式非常多样化。一些池甚至有自己的自定义客户端。他们可能使用各种不同的网络协议。

此外,挖矿恶意软件可以通过 SSH、TOR 等隧道绕过这种策略。

AV:根据我的经验,AV 产品至少会努力维护不同挖矿软件的签名:示例

  1. 寻找与比特币服务器的连接。应用程序必须打电话回家,寻找与服务器的连接,源 IP 将引导您到运行该软件的系统
  2. 将比特币矿工的可执行名称列表放在一起,并扫描系统以查找这些名称。

好吧,有一种半合理的 $$$ 方式;为每个隔间/插座添加一个仪表,看看谁使用过多并进行调查。他们可以轻松击败任何静态工具,但很难通过手动调查来了解这台机器为何消耗过多功率(如果您没有发现任何东西,那么您当然会一直寻找)。