
Lokales F5 BIG-IP-Skript, das nach Indikatoren für eine Kompromittierung (IoCs) im Zusammenhang mit CVE-2020-5902 sucht, indem es Logs, Dateien und die Systemintegrität überprüft, um Post-Exploitation-Aktivitäten zu erkennen.
Dieses Skript soll lokal auf einem F5 BIG-IP in der Advanced Shell (bash) von einem Benutzer mit Root-Rechten ausgeführt werden; es ist nicht für die Ausführung in einer anderen Umgebung vorgesehen. Hinweis: Der Appliance-Modus erlaubt keinen Zugriff auf die Advanced Shell, daher kann dieses Tool auf solchen Systemen nicht ausgeführt werden.
Das Skript untersucht den BIG-IP auf die Indikatoren einer Kompromittierung (Indicators of Compromise, IoCs) im Zusammenhang mit CVE-2020-5902, die F5 Networks zum Zeitpunkt der Erstellung bekannt waren. Das Skript sammelt diese IoCs und erstellt einen Übersichtsbericht, den Sie zur Entscheidungsfindung für den besten weiteren Weg nutzen können. Wenn dieses Tool IoCs aufdeckt, sollten Sie diese manuell überprüfen und bestätigen und dann Ihre eigenen dokumentierten Verfahren für den Umgang mit vermutlich kompromittierten Systemen befolgen. F5-spezifische Anleitungen finden Sie in K11438344: Considerations and guidance when you suspect a security compromise on a BIG-IP system.
Hinweis: Wenn Sie Unsicherheit oder Zweifel an der Integrität eines Systems haben, ist der vorsichtige Ansatz, das System als kompromittiert zu betrachten und Ihre internen Verfahren für den Umgang mit einem kompromittierten System zu befolgen. Beachten Sie auch, dass alle auf einem kompromittierten System enthaltenen Informationen selbst als kompromittiert betrachtet werden sollten. Dies umfasst unter anderem Passwörter, private Schlüssel, digitale Zertifikate, Konfigurationen, Protokolle usw.
Es ist zu beachten, dass IoCs möglicherweise nicht mehr vorhanden sind, entweder aufgrund ihres Alters (z. B. durch Log-Rotationspläne) oder durch die Entfernung durch einen ausreichend versierten Angreifer. Da die Ausnutzung von CVE-2020-5902 potenziell zu einer Remote-Codeausführung als Root-Benutzer führt, könnte ein erfahrener Angreifer das System nach der Ausnutzung von Spuren bereinigen.
Beachten Sie auch, dass ein Angreifer jede Binärdatei auf dem System manipulieren könnte, einschließlich Python. Es wurden angemessene Schritte unternommen, um diese Möglichkeit zu vermeiden; Sie müssen jedoch Ihr Vertrauen in die Ausgabe dieses Tools auf jedem System, das als kompromittiert verdächtigt wird, selbst bestimmen.
Auf BIG-IP-Versionen, die sys-eicheck enthalten (ab 13.1.0), bietet dieses Tool dem Administrator die Möglichkeit, das laufende System mit den ursprünglichen Installations-RPMs zu vergleichen, um nach Dateiänderungen zu suchen und so die Integrität der Systembefehle, auf die sich dieses Tool stützt, zu gewährleisten. Beachten Sie, dass sys-eicheck auf allen Plattformen unabhängig von der FIPS-Fähigkeit ausgeführt werden kann.
In früheren Versionen enthält das Tool diese Funktionalität derzeit nicht und wird ausgeführt, ohne die ursprünglich installierten Systembinärdateien auf Manipulationen zu überprüfen.
Die SHA384-Prüfsumme dieser Version von CVE-2020-5902_bigip_ioc_checker.py lautet: ce674235744b54de3331c19a402f911c4390dbbf297643ec3eed165bda49a951f48c1be9188372de3d92dd9f28595cbb
Sie sollten diese Dateien nur aus dem F5 DevCentral GitHub-Repository herunterladen
Beachten Sie, dass die maßgebliche Informationsquelle zu CVE-2020-5902 immer das F5 Security Advisory K52145254: TMUI RCE vulnerability CVE-2020-5902 ist
Laden Sie einfach die Datei CVE-2020-5902_bigip_ioc_checker.py auf den Ziel-BIG-IP herunter und führen Sie sie mit der bereits auf dem BIG-IP vorhandenen Python-Installation aus.
Beispiel:
[root@hostname:Active:Standalone] tmp # python CVE-2020-5902_bigip_ioc_checker.py -h
USAGE: python CVE-2020-5902_bigip_ioc_checker.py
You can use the following options <-iajylcbwut> to skip some checks:
Option: -i or --skip_sys-eicheck
[+] Skip using the sys_eicheck utility to scan the BIG-IP system for any unexpected changes to the system software.
[+] Please refer to https://support.f5.com/csp/article/K00029945for more details about the sys-eicheck utility.
[+] The sys-eicheck utility may take several minutes to finish.
Option: -a or --skip_audit_check [+] Skip scanning the audit log for malicious activities.
Option: -j or --skip_journal_check [+] Skip scanning the journal log for malicious activities.
Option: -y or --skip_systems_check [+] Skip scanning /config/bigip_user.conf to look for malicious users.
Option: -l or --skip_alias_check [+] Skip scanning /config/bigip_*.conf for malicious alias definition.
Option: -c or --skip_catalina_check [+] Skip scanning the tomcat catalina.out log for malicious activities.
Option: -b or --skip_bigipstartup_check [+] Skip checking if /config/startup contains blacklisted words.
Option: -w or --skip_webshell_check [+] Skip checking Files created after 2020 Jun 29 in the /usr/local/www/ to look for possible webshell files.
Option: -u or --skip_autostart_check [+] Skip checking Files created after 2020 Jun 29 in /etc/ to look for the possible autostart script.
Option: -t or --skip_tmp_check [+] Skip checking Files created after 2020 Jun 29 in /tmp
Option: -p or --disable_color_print [+] Disable color print, better for saving result
Option: -q or --bigiq_cmd_check [+] Run BIG-IQ compatible malicious command check
Option: -h or --help [+] Print usage
Wenn ein BIG-IP von BIG-IQ oder einem anderen Automatisierungs-/Verwaltungssystem verwaltet wird, kann es Bash-Befehle von BIG-IQ oder einem anderen Automatisierungs-/Verwaltungssystem erhalten. Einige der Bash-Befehle enthalten das Base64-Kodierungsskript. Diese in den BIG-IP-Auditprotokollen protokollierten Bash-Befehle könnten dazu führen, dass das IoC-Erkennungstool eine Fehlalarmmeldung meldet: "!! IoC pattern malicious bash command found". Um die Fehlalarme zu reduzieren, können Sie die Option -q verwenden, damit das IoC-Erkennungstool das legitime Base64-kodierte Skript in den Auditprotokollen ignoriert.
Ein Upgrade des Systems kann die Zeitstempel von Dateien in /usr/local/www/ aktualisieren, was zu einem Fehlalarm führen kann, zum Beispiel wenn die korrigierte Software kürzlich installiert wurde.
Wenn Ergebnisse bei den Prüfungen des Erstellungsdatums von Dateien in /usr/local/www/, /etc/ und /tmp/ zurückgegeben werden, sollten die Dateien untersucht werden, um ihre Berechtigung zu bestimmen.
Es ist möglich, auch nach einem Upgrade auf eine behobene Version oder nach Anwendung der Problemumgehung noch Anzeichen einer Kompromittierung in den journalctl-Protokollen zu finden. Bitte überprüfen Sie den Zeitstempel der Protokolle, falls vorhanden, und vergewissern Sie sich, dass sie vor dem Upgrade oder der Anwendung der Problemumgehung aufgetreten sind.
# python CVE-2020-5902_bigip_ioc_checker.py -iqa
>>>> Skip sys-eicheck check
>>>> Run BIG-IQ compatible malicious command check
>>>> Skip audit log check
CVE-2020-5902 Indicators of Compromise checker. False positive reports are possible and all results should be manually verified.
[+] Version 13.1.0 Build 0.0.1868 CVE-2020-5902 Fixed: False
!! IoC pattern ['/etc/fakefile', '/etc/passwd', '/etc/fakefile1'] access denied in file /var/log/tomcat/catalina.out
!! IoC pattern ['/config/bigip_base.conf'] access denied in file /var/log/tomcat/catalina.out.1
!! IoC pattern Possible backdoor echo "<?php eval(\$_REQUEST[09ede7]);" > /usr/local/www/xui/common/css/webshell.php in file /config/startup
!! IoC pattern Possible backdoor echo "Runtime.getRuntime().exec("cmd.exe /C " + cmd);" > /usr/local/www/xui/common/css/webshell.jsp in file /config/startup
[+]========================== auto start script checking ==========================
!! Files created in /etc/ after 2020 Jun 29, need to check if those are malicious daemon startup script
95291 1 -rw-r--r-- 1 root root 0 Jul 20 14:49 /etc/rc.d/init.d/autostartbackdoor
104847 4 -rw------- 1 root root 199 Jul 13 10:46 /var/spool/cron/root
[+]================================ /tmp/ checking ================================
!! File /tmp/backdoor_curl could be a malicous script
!! File /tmp/CVE-2020-5902_bigip_ioc_checker.py could be a malicous script
!! Files created in /tmp/ after 2020 Jun 29, need to check if those are malicious scripts
18491 40 -rw-r--r-- 1 root root 38066 Jul 20 14:57 /tmp/CVE-2020-5902_bigip_ioc_checker.py
18497 1 -rw-r--r-- 1 root root 0 Jul 20 14:49 /tmp/backdoor_new
[+]============================== webshell checking ==============================
!! Files created in /usr/local/www/ after 2020 Jun 29, need to check if those are webshell or information leakage
243368 4 -rw-r--r-- 1 root root 33 Jul 20 14:49 /usr/local/www/xui/common/css/webshell.php
243367 4 -rw-r--r-- 1 root root 33 Jul 17 08:30 /usr/local/www/xui/common/css/css.php
243369 4 -rw-r--r-- 1 root root 46 Jul 20 14:49 /usr/local/www/xui/common/css/webshell.jsp
F5 stellt das CVE-2020-5902 IoC-Erkennungstool zur Verfügung, um seinen Kunden zu helfen, ihre F5-Geräte außerhalb von iHealth auf bestimmte Indikatoren einer Kompromittierung im Zusammenhang mit CVE-2020-5902 zu analysieren. Bitte beachten Sie jedoch, dass:
Das CVE-2020-5902 IoC-Erkennungstool ist nicht umfassend und soll es auch nicht sein: Es identifiziert nicht alle möglichen Indikatoren einer Kompromittierung, sondern nur eine ausgewählte Gruppe, die F5 auf der Grundlage seiner internen Analysen kompromittierter F5-Geräte als allgemein zuverlässig befunden hat.
Nicht alle kompromittierten F5-Geräte zeigen dieselben Indikatoren und Angreifer können möglicherweise Spuren ihrer Arbeit entfernen. Es ist nicht möglich zu beweisen, dass ein Gerät nicht kompromittiert wurde; bei Unsicherheit können zusätzliche Analysen erforderlich sein und/oder Sie möchten Ihr Sicherheitsteam konsultieren.
Um unnötige Unterbrechungen des Geschäftsbetriebs zu vermeiden, sollte das CVE-2020-5902 IoC-Erkennungstool nicht während der Hauptverkehrszeiten betrieben werden, sondern in der Regel während der regulären Wartungsfenster der Benutzer.
Wenn Indikatoren einer Kompromittierung identifiziert werden, empfiehlt F5 den Benutzern, ihre dokumentierten internen Verfahren zur Incident-Response zu befolgen. F5 hat allgemeine Überlegungen und Anleitungen für den Fall eines vermuteten Sicherheitsvorfalls auf einem BIG-IP-System in K11438344: Considerations and guidance when you suspect a security compromise on a BIG-IP system bereitgestellt. Darüber hinaus können Benutzer F5 direkt über das Kunden-Support-Portal oder andere Standardkanäle für zusätzlichen Support kontaktieren.
Das CVE-2020-5902 IoC-Erkennungstool wird den F5-Benutzern zur Bequemlichkeit zur Verfügung gestellt und wird auf einer „wie besehen“-Basis unter den Bedingungen der Apache-Lizenz bereitgestellt. Sie verwenden das CVE-2020-5902 IoC-Erkennungstool auf eigenes Risiko.
Copyright © 2020 F5 Networks, Inc.
Lizenziert unter der Apache License, Version 2.0 (der „Lizenz“); Sie dürfen das CVE-2020-5902 IoC-Erkennungstool nur in Übereinstimmung mit der Lizenz verwenden. Eine Kopie der Lizenz erhalten Sie unter:
http://www.apache.org/licenses/LICENSE-2.0
Sofern nicht durch anwendbares Recht gefordert oder schriftlich vereinbart, wird die unter der Lizenz verteilte Software ohne Garantien oder Bedingungen jeglicher Art, weder ausdrücklich noch implizit, bereitgestellt. Siehe die Lizenz für die spezifischen Regelungen zu Berechtigungen und Einschränkungen.