
ステージ1のオペレーションを中心としたC# C2フレームワーク
C# C2フレームワーク。ステージ1の活動に焦点を当てています。
Atlasは、環境内での足がかりを確保し、それを利用してHTTPベースのインプラントを通じてC#(現時点では厳密にC#)の武器を密かに持ち込むことに基づいています。現状ではOPSEC的にあまり安全ではありません…全くです。現在はWindows環境のみを対象としています。
注: インプラントのデフォルトの接続設定は、localhostのポート8080に接続するよう設定されています。これはここで変更できます。
クライアント、チームサーバー、インプラントのexeを生成した後、Teamserver.exeを実行するだけでチームサーバーが起動します。
新しいリスナーを開始するには、StartListenerコマンドを使用します。このコマンドは2つのパラメータ(リスナー名と実行するポート)を受け取ります。
Listenersコマンドで全てのリスナーを一覧表示し、ViewListenerで指定したリスナーのデータを返し、RemoveListenerでリスナーをリストから削除できます。
接続されているインプラントの一覧表示はImplantsコマンドで行えます。
インプラントへの接続はConnect <ImplantId>と入力するだけです。私の仕掛け、お分かりいただけましたか?…ええ、もうお引き取りしますね。Connectコマンドでインプラントを選択するのと同様に、ViewImplantで選択したインプラントの詳細情報を表示できます。Disconnectコマンドで現在選択中のインプラントを選択解除します。以下に示す通りです。
タスクを使用するには、まずSetTaskでタスクを選択する必要があります。オプションはTaskOptsで表示し、SetTaskOptで設定します。タスクはSendTaskで実行します。
以前実行したタスクの出力を表示するにはTaskOutを使用します。TasksOutを使用すると、選択したインプラントに関連する以前に実行したすべてのタスクを表示できます。
Atlasでは、PSShellタスクとCMDShellタスクを使用して、PowerShellとCmdコマンドの両方を実行できます。PSShellは新しいRunspaceを開いてコマンドを実行するため、powershell.exeがブラックリストに登録されていてもPowerShellコマンドを実行できます。この方法は制約付き言語モードもバイパスします。CMDShellはcmd.exeプロセスを起動し、そのプロセスにコマンドを渡します。PowerShellコマンドの実行は上記で示したため、ここでは省略します。CMDShellに関する補足:whoami、ipconfig、pwd、cdなど、多くの一般的なコマンド(ただしこれらに限定されない)は、cmd.exeプロセスを介して実行する必要を避けるため、インプラントの機能として実装されています。
アセンブリの読み込みは、execute-assemblyで全てを行うCobaltStrikeなどとは異なり、いくつかの手順が必要です。まず、オペレーターはByteConvertユーティリティ(ByteConvertにはファイルがローカルかリモートかを指定する必要があります)を使用して、ローカルまたはリモートのファイルをバイト配列に変換し、assemBytes変数に保存します。これが完了したら、Loadタスクを使用してアセンブリをインプラントプロセスに読み込みます。
インプラントプロセスに読み込まれたアセンブリを表示するには、オペレーターはAssemQueryタスクとAssemMethodQueryタスクを使用できます。前者は読み込まれたすべてのアセンブリを返し、後者は読み込まれたアセンブリに関するすべてのパブリックメソッドを返します。
スクリーンショットは、TestAssemアセンブリが確かにインプラントのプロセスに読み込まれたことを示しています。
次に、AssemMethodQueryを使用して、TestAssemに関する情報を返し、オペレーターがパブリックメソッドを実行するために使用する情報を取得できます。
Atlasでは、アセンブリをエントリポイントから実行するか、指定した公開メソッドから実行するかを選択できます。ExecuteAssemを使用してエントリポイントから実行できます。このタスクはアセンブリ名のみを受け取ります。ExecuteAssemMethodを使用すると、AssemMethodQueryから取得した情報を使用して他のメソッドを実行できます。
全機能のリストについては、wikiをご覧ください。
.slnを開き、3つのコンポーネントすべてをReleaseモードでビルドします。各コンポーネントの\bin\debugにコンソールウィンドウとexeが生成されます。これについてはもっと良い方法を考える必要があります。
cpupload / downloadAtlasは教育/倫理的目的のみのために設計されました。私はAtlasのユーザーによる行動を容認せず、またその責任を負いません。