Was sind Rootkits und wie sie sie erkannt haben?

Was sind Rootkits und wie sie sie erkannt haben?
Rootkits sind eines der schlimmsten Dinge, die mit einem System passieren können, und sie sind einer der gefährlichsten Angriffe, gefährlicher als übliche Malware und Viren, sowohl bei dem Schaden, den sie an das System verursachen, als auch bei der Schwierigkeit, sie zu finden und zu erkennen. RootKits können lange in Ihrem System bleiben, ohne dass der Benutzer es einmal bemerkt, und es kann zu ernsthaften Schäden am System führen.

Das Wort „Rootkit“ stammt ursprünglich aus der Welt der Unix -Systeme, in der der Root der Benutzer ist, der die meisten Zugriffsberechtigte auf das System hat. Während das Word -Kit das Kit definiert, das eine Reihe von böswilligen Tools wie Keylogger, Bankanmeldeinformationen, Kennwort Stealers, Antivirus -Deaktivierer oder Bots für DDOS -Angriffe usw. enthält, usw. Wenn Sie beide zusammenstellen, erhalten Sie Rootkit.

Sie sind so gestaltet, dass sie verborgen bleiben und böswillige Dinge wie den Abfangen des Internetverkehrs, die Diebstahl von Kreditkarten und Online -Banking -Informationen tun. RootKits geben Cybercriminalen die Möglichkeit, Ihr Computersystem mit vollem administrativem Zugriff zu steuern. Er hilft dem Angreifer, Ihre Schlüsselstrecken zu überwachen und Ihre Antiviren-Software zu deaktivieren, die es noch einfacher macht, Ihre geheimen Informationen zu stehlen.

Wie kommen Rootkits in das System??

Rootkits sind nach ihrem Typ nicht in der Lage, sich selbst zu verbreiten. Daher werden sie vom Angreifer durch solche Taktiken verteilt, dass der Benutzer nicht bemerken kann, dass etwas mit dem System nicht stimmt. Normalerweise verstecken sie in verschlagener Software, die legitim aussieht und funktional sein könnte. Wie auch. Rootkits sind sehr schwer zu identifizieren, da sie sich vor Benutzern, Administratoren und den meisten Antivirenprodukten verstecken können. Grundsätzlich ist der Umfang der malignen Bewegung im Grunde einer Kompromisse eines Systems durch Rootkit sehr hoch.

Soziale Entwicklung:

Der Hacker versucht, Root/Administratorzugriff zu erhalten, indem sie bekannte Schwachstellen oder Social Engineering nutzen. Cyberkriminelle beschäftigen Social Engineering, um die Arbeit zu erledigen. Sie versuchen, Rootkits im System des Benutzers zu installieren, indem sie sie in einem Phishing -Link, E -Mail -Betrug, zu böswilligen Websites umgeleitet und die Rootkits in legitime Software entfliehen, die für das nackte Auge normal aussieht. Es ist wichtig zu wissen. Manchmal wollen ein Benutzer nur ein PDF- oder Word -Dokument öffnen, um sich einzuschleichen.

Arten von Rootkits:

Um die Arten von Rootkits richtig zu verstehen, müssen wir uns zunächst das System als Kreis konzentrischer Ringe vorstellen.

  • In der Mitte gibt es einen Kernel, der als Ring Zero bekannt ist. Der Kernel hat die höchste Privilegien über ein Computersystem. Es hat Zugriff auf alle Informationen und kann das System so betreiben, wie es möchte.
  • Ring 1 und Ring 2 sind für weniger privilegierte Prozesse reserviert. Wenn dieser Ring fehlschlägt, sind die einzigen Prozesse, die betroffen sein werden.
  • Ring 3 ist dort, wo der Benutzer wohnt. Es ist der Benutzermodus mit einer Hierarchie strikter Berechtigungszugriff.

Kritischerweise kann ein Verfahren, das in einem höher privilegierten Ring ausgeführt wird. In Situationen, in denen solche Sicherheitskomponenten fernhalten können. Jetzt gibt es zwei bekannteste Arten von Rootkits:

Rootkits des Benutzermodus:

RootKits dieser Kategorie arbeiten auf niedrig privilegierter oder Benutzerebene im Betriebssystem. Wie vor Rootkits ausgedrückt, veranlasst Hacker, ihre Autorität über das System zu halten, indem sie einen Sekundärpassage -Kanal angeben. Es gibt verschiedene Rootkits dieses Typs sowohl für Windows als auch für Linux.

Linux User-Mode Rootkits:

Viele Linux-User-Mode Rootkits sind heutzutage verfügbar, zum Beispiel:

  • Um einen Remote -Zugriff auf den Computer des Ziels zu erhalten, werden Anmeldedienste wie 'Login' und 'SSHD' vom RootKit so modifiziert, dass sie eine Hintertür enthalten. Angreifer können Zugang zur Maschine des Ziels haben, indem sie zu einer Hintertür gelangen. Denken Sie daran, dass der Hacker die Maschine bereits ausgenutzt hat. Er fügte nur eine Hintertür hinzu, um ein anderes Mal zurückzukommen.
  • Um den Angriff zur Eskalation des Privilegs durchzuführen. Der Angreifer modifiziert Befehle wie 'Su', sudo, so dass er, wenn er diese Befehle über eine Hintertür verwendet.
  • Ihre Anwesenheit während eines Angriffs von zu verbergen
  • Prozessversteck: Verschiedene Befehle, die Daten zu Verfahren anzeigen. Darüber hinaus wird der Befehl "Kill All" in der Regel mit dem Ziel geändert, dass der Prozess des Hackers nicht getötet werden kann, und die Bestellung "Crontab" wird so geändert.
  • Datei Versteck: Versteckt ihre Anwesenheit vor Befehlen wie 'LS', 'Find'. Versteckt sich auch vor dem Befehl 'du', der die Disk -Nutzung eines Prozesses zeigt, der von einem Angreifer ausgeführt wird.
  • Ereignisversteck: Versteck vor Systemprotokollen durch Änderung des Syslogs.D 'Datei so, dass sie sich in diesen Dateien nicht angemeldet haben.
  • Netzwerkversteck: Versteck vor Befehlen wie 'netstat', 'iftop', das aktive Verbindungen zeigt. Befehle wie 'ifconfig' werden ebenfalls geändert, um ihre Anwesenheit auszurotten.

Kernel-Mode Rootkits:

Bevor wir zu Kernel-Mode Rootkits wechseln, werden wir zunächst sehen, wie der Kernel funktioniert, wie der Kernel Anfragen umgeht. Mit dem Kernel können Anwendungen mithilfe von Hardware -Ressourcen ausgeführt werden. Da wir das Ring -Konzept diskutiert haben, können die Ring 3 -Anwendungen nicht auf einen sichereren oder privilegierten Ring i zugreifen.E RING 0, sie hängen von Systemaufrufen ab, die sie mit Subsystembibliotheken verarbeiten. Der Fluss ist also ungefähr so:

Benutzermodus >> Systembibliotheken >> Systemanrufetabelle >> Kernel

Nun, was ein Angreifer tun wird, wird die Systemaufruftabelle durch Verwendung von InsMod ändern und dann böswillige Anweisungen abbilden. Dann wird er einen böswilligen Kernelcode einfügen und wie folgt sein:

Benutzermodus >> Systembibliotheken >> Änderung der Systemaufruftabelle >>
Bösartiger Kernelcode

Was wir jetzt sehen werden, ist, wie diese System -Anruftabelle geändert wird und wie der böswillige Code eingefügt werden kann.

  • Kernelmodule: Der Linux -Kernel ist so gestaltet. Diese Option gibt Angreifern einen großen Luxus, um einen böswilligen Code in Kernel direkt zu verleihen.
  • Ändern der Kerneldatei: Wenn Linux -Kernel nicht so konfiguriert ist, dass externe Module geladen werden, kann die Änderung der Kerneldatei in Speicher oder Festplatte durchgeführt werden.
  • Die Kernel -Datei, die das Speicherbild auf der Festplatte hält, ist /dev /kmem. Der Live -Running -Code im Kernel gibt es auch in dieser Datei. Es erfordert nicht einmal einen System -Neustart.
  • Wenn der Speicher nicht geändert werden kann, kann die Kernel -Datei auf der Festplatte sein. Die Datei, die den Kernel auf der Festplatte hält, ist vmlinuz. Diese Datei kann nur durch Root gelesen und geändert werden. Denken Sie daran, dass in diesem Fall ein Neustart eines neuen Codes erforderlich ist, um ein System -Neustart erforderlich zu sein. Das Ändern der Kernel -Datei muss nicht von Ring 3 zu Ring 0 übergehen. Es braucht nur Wurzelberechtigungen.

Ein hervorragendes Beispiel für Kernel Rootkits ist SmartService Rootkit. Es hindert Benutzer daran, eine Antivirus -Software zu starten, und dient daher als Leibwächter für alle anderen Malware und Viren. Es war bis Mitte 2017 ein berühmter verheerender Rootkit.

Chkrootkit:

Diese Art von Malware kann lange in Ihrem System bleiben, ohne dass der Benutzer es einmal bemerkt, und es kann zu ernsthaften Schäden führen, da nach der Erkennung des Rootkit keine andere Möglichkeit gibt, als das gesamte System neu zu installieren, und manchmal sogar Hardwarefehler verursachen kann.

Glücklicherweise gibt es einige Werkzeuge, mit denen eine Vielzahl bekannter Rootkits auf Linux -Systemen wie Lynis, Clam AV, LMD (Linux Malware Detect) erfasst werden kann. Sie können Ihr System auf bekannte Rootkits überprüfen, indem Sie die folgenden Befehle verwenden:

Zunächst müssen wir Chkrootkit mit dem Befehl installieren:

Ubuntu@Ubuntu: ~ $ sudo APT Installieren Sie Chkrootkit

Dadurch wird das Chkrootkit -Tool installiert und Sie können es verwenden, um RootKits mithilfe von:

Ubuntu@Ubuntu: ~ $ sudo chkrootkit
Rootdir ist '/'
"AMD" überprüfen ... nicht gefunden
Überprüfen Sie 'CHSH' ... nicht infiziert
"Cron" überprüfen ... nicht infiziert
Überprüfen Sie 'Crontab'… nicht infiziert
"Datum" überprüfen ... nicht infiziert
Überprüfen Sie 'du'… nicht infiziert
"DirName" überprüfen ... nicht infiziert
Überprüfen Sie 'Su' ... nicht infiziert
Überprüfen Sie 'ifconfig'… nicht infiziert
"Inetd" überprüfen ... nicht infiziert
"Inetdconf" überprüfen ... nicht gefunden
Überprüfen Sie 'Identd' ... nicht gefunden
Überprüfen Sie 'init'… nicht infiziert
Überprüfen Sie 'Killall' ... nicht infiziert
Überprüfen Sie 'Login'… nicht infiziert
"LS" überprüfen ... nicht infiziert
"LSOF" überprüfen ... nicht infiziert
"Passwd" überprüfen ... nicht infiziert
"PIDOF" überprüfen ... nicht infiziert
"PS" überprüfen ... nicht infiziert
"Pstree" überprüfen ... nicht infiziert
"Rpcinfo" überprüfen ... nicht gefunden
"Rlogind" überprüfen ... nicht gefunden
"RSHD" überprüfen ... nicht gefunden
Überprüfen Sie 'Slogin'… nicht infiziert
Überprüfen Sie 'sendmail'… nicht gefunden
"SSHD" überprüfen ... nicht gefunden
"Syslogd" überprüfen ... nicht getestet
Überprüfen Sie "Aliens" ... keine verdächtigen Dateien
Auf der Suche nach Sniffer -Protokollen kann es eine Weile dauern ... nichts gefunden
Suche nach Rootkit Hidrootkits Standarddateien… Nichts gefunden
Suche nach den Standarddateien von Rootkit T0RN… nichts gefunden
Suche nach T0RNs V8 -Standards… nichts gefunden
Suche nach Standarddateien von Rootkit Lion… Nichts gefunden
Suche nach den Standarddateien von Rootkit RSHA… Nichts gefunden
Suche nach den Standarddateien von Rootkit RH-Sharpe… nichts gefunden
Suche nach Umgebungsdateien und Dick
Auf der Suche nach verdächtigen Dateien und Diren kann es eine Weile dauern ..
Die folgenden verdächtigen Dateien und Verzeichnisse wurden gefunden:
/usr/lib/debug/.build-id/lib/module/5.3.0-45-generisch/vdso/.build-id/lib/module/
5.3.0-46-generisch/vdso/.Build-id
/usr/lib/debug/.build-id/lib/module/5.3.0-45-generisch/vdso/.build-id/lib/module/
5.3.0-46-generisch/vdso/.Build-id
Suche nach LPD -Wurmdateien und Diren ... nichts gefunden
Suche nach Ramen -Wurmdateien und Diren ... nichts gefunden
Suche nach Wahnsinnsdateien und Diren… nichts gefunden
Suche nach RK17 -Dateien und Diren… nichts gefunden
CHKPROC: WARNUNG: Mögliche LKM -Trojaner installiert
Chkdirs: Nichts erkannt
"Rexedcs" überprüfen ... nicht gefunden
Überprüfen Sie 'Sniffer'… LO: Nicht Promisc und keine Paket -Sniffer -Sockets
VMNET1: Nicht Promisc und keine Paket -Sniffer -Sockets
VMNET2: nicht Promisc und keine Paket -Sniffer -Sockets
VMNET8: nicht Promisc und keine Paket -Sniffer -Sockets
BNEP0: Paket -Sniffer (/sbin/dhclient [432])
Überprüfen Sie 'W55808'… nicht infiziert
Überprüfen Sie 'Wted'… CHK WTMP: Nichts gelöscht
Überprüfen Sie 'Skalper'… nicht infiziert
"Slapper" überprüfen ... nicht infiziert
Überprüfen Sie 'Z2'… CHK LastLog: Nichts gelöscht
Überprüfung von 'chkutmp'… der TTY des folgenden Benutzerprozesses (ES) wurde nicht gefunden
in/var/run/utmp !
! Ruid Pid tty CMD
! 101 0 es = v8_context_snapshot_data: 100, v8101--mSteams-prozess-type = meldificationsManager
! Es-type = PluginHost 0 Ta: 100, v8_Natives_data: 101
! root 3936 pts/0/bin/sh/usr/sbin/chkrootkit
! Root 4668 Punkte/0 ./chkutmp
! Root 4670 Punkte/0 ps axk tty, Ruser, args -o tty, pid, Benutzer, args
! root 4669 pts/0 sh -c ps axk "tty, ruser, args" -o "tty, pid, user, args"
! Root 3934 PTS/0 Sudo Chkrootkit
! Usman 3891 Punkte/0 Bash
Chkutmp: Nichts gelöscht

Das Chkrootkit -Programm ist ein Shell -Skript, das Systembinärdateien im Systempfad für böswillige Änderungen überprüft. Es enthält auch einige Programme, die verschiedene Sicherheitsprobleme überprüfen. Im obigen Fall hat es nach einem Zeichen von Rootkit im System überprüft und hat keine gefunden. Nun, das ist ein gutes Zeichen.

Rkhunter (rootkithunter):

Ein weiteres großartiges Werkzeug für die Jagd auf eine Vielzahl von Rootkits und lokalen Exploits in einem Betriebssystem ist Rkhunter.

Zunächst müssen wir RKHunter mithilfe des Befehls installieren:

Ubuntu@Ubuntu: ~ $ sudo appt install Rkhunter

Dadurch wird das RKHUNTER -Tool installiert und Sie können es verwenden, um RootKits mithilfe von:

Ubuntu@Ubuntu: ~ $ sudo rkhunter -Check | Rootkits
Nach Rootkits überprüfen…
Durchführen von Bekanntmachung bekannter Rootkit -Dateien und Verzeichnisse
55808 Trojaner - Variante A [nicht gefunden]
ADM WORM [nicht gefunden]
Ajakit Rootkit [nicht gefunden]
Rootkit verehrt [nicht gefunden]
APA Kit [nicht gefunden]
Apache -Wurm [nicht gefunden]
Ambient (Ark) Rootkit [nicht gefunden]
Balaur Rootkit [nicht gefunden]
Beastkit Rootkit [nicht gefunden]
BEX2 rootkit [nicht gefunden]
Bobkit Rootkit [nicht gefunden]
CB Rootkit [nicht gefunden]
Cinik -Wurm (Slapper.B Variante) [nicht gefunden]
Danny-Boys Missbrauchskit [nicht gefunden]
Teufel Rootkit [nicht gefunden]
Diamorphin -LKM [nicht gefunden]
Dica-Kit Rootkit [nicht gefunden]
Träume Rootkit [nicht gefunden]
Duarawkz Rootkit [nicht gefunden]
Ebury Backdoor [nicht gefunden]
Enye lkm [nicht gefunden]
Flea Linux Rootkit [nicht gefunden]
Fu rootkit [nicht gefunden]
Fick'it rootkit [nicht gefunden]
Gaskit rootkit [nicht gefunden]
Heroin lkm [nicht gefunden]
HJC Kit [nicht gefunden]
Ignokit Rootkit [nicht gefunden]
Inxonia-ng Rootkit [nicht gefunden]
Irrix rootkit [nicht gefunden]
Jynx Rootkit [nicht gefunden]
Jynx2 Rootkit [nicht gefunden]
Kbeast Rootkit [nicht gefunden]
Kitko rootkit [nicht gefunden]
Knark Rootkit [nicht gefunden]
ld-linuxv.Also Rootkit [nicht gefunden]
Li0n Wurm [nicht gefunden]
Lockit / ljk2 rootkit [nicht gefunden]
Mokes Backdoor [nicht gefunden]
Mood-nt Rootkit [nicht gefunden]
MRK Rootkit [nicht gefunden]
Ni0 Rootkit [nicht gefunden]
Ohhara rootkit [nicht gefunden]
Optic Kit (Tux) Wurm [nicht gefunden]
Oz Rootkit [nicht gefunden]
Phalanx rootkit [nicht gefunden]
Phalanx2 rootkit [nicht gefunden]
Phalanx rootkit (erweiterte Tests) [nicht gefunden]
Portacelo Rootkit [nicht gefunden]
R3D Storm Toolkit [nicht gefunden]
RH-Sharpes Rootkit [nicht gefunden]
RSHAs Rootkit [nicht gefunden]
Skalierwurm [nicht gefunden]
Sebek LKM [nicht gefunden]
Stilldown Rootkit [nicht gefunden]
Shv4 Rootkit [nicht gefunden]
Shv5 Rootkit [nicht gefunden]
Sin Rootkit [nicht gefunden]
Slapper -Wurm [nicht gefunden]
Sneakin Rootkit [nicht gefunden]
"Spanisch" Rootkit [nicht gefunden]
Suckit Rootkit [nicht gefunden]
Superkit Rootkit [nicht gefunden]
TBD (Telnet Backdoor) [nicht gefunden]
Telekit Rootkit [nicht gefunden]
T0rn rootkit [nicht gefunden]
trnkit rootkit [nicht gefunden]
Trojanit Kit [nicht gefunden]
Tuxtendo rootkit [nicht gefunden]
Urk rootkit [nicht gefunden]
Vampire Rootkit [nicht gefunden]
Vckit rootkit [nicht gefunden]
Volc rootkit [nicht gefunden]
Xzibit Rootkit [nicht gefunden]
Zarwt.Kit Rootkit [nicht gefunden]
ZK rootkit [nicht gefunden]

Dies wird nach einer großen Anzahl bekannter Rootkits in Ihrem System überprüfen. Um nach Systembefehlen und allen Arten von böswilligen Dateien in Ihrem System zu suchen, geben Sie den folgenden Befehl ein:

Ubuntu@Ubuntu: ~ $ sudo rkhunter - -c -ANBABE -alles -disable Keine

Wenn ein Fehler auftritt, kommentieren Sie die Fehlerzeilen in /etc /rkhunter.Conf -Datei und es wird reibungslos funktionieren.

Abschluss:

Rootkits können ernsthafte irreversible Schäden am Betriebssystem anrichten. Es enthält eine Vielzahl von böswilligen Tools wie Keyloggers, Bankanmeldeinformationen, Kennwort Stealers, Antivirus -Deaktivierern oder Bots für DDOS -Angriffe usw. Die Software bleibt in einem Computersystem versteckt und erledigt ihre Arbeit für einen Angreifer, da er auf das System des Opfers zugreifen kann. Unsere Priorität nach dem Erkennen eines Rootkit sollte darin bestehen, alle Passwörter des Systems zu ändern. Sie können alle schwachen Verbindungen pflücken, aber das Beste ist, den Antrieb vollständig zu wischen und neu formatieren, da Sie nie wissen, was noch im System ist.