所以,我和一个网络管理员朋友正在讨论比特币挖矿。有了这么多便携式比特币挖掘软件,我们想找到在网络中检测它们的不同方法。
我们如何检测某个主机是否正在运行比特币挖掘软件?我尝试过的所有不同的矿机都是便携式的。它们可以独立于路径保存和执行,排除Program Files
,bin
文件夹。
关于我们如何检测比特币挖矿还有更多想法吗?
所以,我和一个网络管理员朋友正在讨论比特币挖矿。有了这么多便携式比特币挖掘软件,我们想找到在网络中检测它们的不同方法。
我们如何检测某个主机是否正在运行比特币挖掘软件?我尝试过的所有不同的矿机都是便携式的。它们可以独立于路径保存和执行,排除Program Files
,bin
文件夹。
关于我们如何检测比特币挖矿还有更多想法吗?
你可以寻找流量模式等,但在挖掘比特币的人群、了解 Tor 工作原理的人群以及竭尽全力保护隐私的人群之间存在显着的交叉。这意味着:网络上的检测并不是那么可靠。它不使用大量带宽使得它特别困难。
他们可能无法隐藏的是 CPU 和 GPU 使用率。如果您可以通过 SNMP 访问计算机,则可以远程监视 CPU 峰值,或者您可以对网络上的计算机使用Get-Process PowerShell cmdlet 以查找占用 CPU 时间的事物。对于 GPU 时间;除非您能以某种方式监控功耗,否则您不太可能真正发现使用情况。
不幸的是,由于您允许人们将他们想要的软件安装到任意路径,您不太可能想出一个可靠、可重复的方法——您正在寻找的人可能会更改矿工、更改路径等更改他们的签名。
包检测: getwork是主要的官方挖矿协议。可以创建一个l7 过滤器模式来标记数据包并丢弃它们。如果像Sandvine这样的大型带宽管理设备可以检测到 getwork,我也不会感到惊讶。
但是,大多数挖矿都是池化的。似乎实现这一目标的方式非常多样化。一些池甚至有自己的自定义客户端。他们可能使用各种不同的网络协议。
此外,挖矿恶意软件可以通过 SSH、TOR 等隧道绕过这种策略。
AV:根据我的经验,AV 产品至少会努力维护不同挖矿软件的签名:示例
好吧,有一种半合理的 $$$ 方式;为每个隔间/插座添加一个仪表,看看谁使用过多并进行调查。他们可以轻松击败任何静态工具,但很难通过手动调查来了解这台机器为何消耗过多功率(如果您没有发现任何东西,那么您当然会一直寻找)。