インストールとセットアップ
システム要件
コバルトストライクの最小システム要件
2 GHz+以上のCPU
2 GB RAM
500MB +利用可能なスペース
AmazonのEC2では、少なくともCPU(C1.Medium、1.7 GB)インスタンスホストのコア数を少なくとも使用します。
サポートされているオペレーティングシステム
次のシステムは、コバルトストライクチームサーバーをサポートしています。
Kali Linux 2018.4 -AMD64
Ubuntu Linux 16.04、18.04 -x86_64
コバルトストライククライアントは、次のシステムで実行されます。
Windows 7以降
macOS x 10.13以上
Kali Linux 2018.4 -AMD64
Ubuntu Linux 16.04、18.04 -x86_64
コバルトストライクを更新
コバルトストライクの機能を活用するには、ライセンスキーを使用してライセンス製品を更新する必要があります。このトライアルには、これを行うアップデーターが含まれています
このプログラムはライセンスキーを受け入れ、最新のコバルトストライクバージョンを取得します。認可されたコバルトストライクソフトウェアには、アンチウイルス回避が含まれ、裁判プログラムで免許のない宣言を削除します。
windows
1。コバルトストライクフォルダーを入力します
2。update.batをダブルクリックします
linux
次のコンテンツを入力してください。
Cd/path/to/cobaltstrike。/アップデート
macos x
1。コバルトストライクフォルダーを入力します
2.「更新」をダブルクリックする
コバルトストライク。コマンド」
ライセンスキーを使用してチームを更新してください
サーバーおよびクライアントソフトウェア。コバルトストライクは通常、各ユーザーに基づいてライセンスされます。チームサーバーは別のライセンスを必要としません。
ライセンスキーをリセットする方法
Cobalt Strikeの更新プログラムは、キーを一度だけ要求します。その後、それはあなたの鍵を覚えています。キーを変更する必要がある場合は、ホームディレクトリに保存されている.cobaltstrike.licenseファイルを削除するだけです。更新プログラムをもう一度実行すると、Cobalt Strikeが新しいキーを求めます。
コバルトストライクのインストール
コバルトストライクは、Oracle Java 1.8、Oracle Java 11、またはOpenJDK 11環境に依存しています。
linux
1。Linuxに推奨されるJava環境を設定する
2。Cobaltstrike-trial.tgzを解凍します
Tar ZXVF Cobaltstrike-Trial.tgz
macos x
1。Macos xに推奨されるJava環境を設定する
2。CobaltStrike-Trial.dmgファイルをダブルクリックしてインストールします。
3.コバルトストライクフォルダーを「アプリケーション」フォルダーにドラッグします。
windows
1。Windowsに推奨されるJava環境を設定する
2。コバルトをダウンロードしてインストールします
ストライクは、以前にアンチウイルスソフトウェアを無効にします。
3.お気に入りのzipツールを使用して、Cobaltstrike-trial.zipを希望のインストール場所に解凍します。
コバルトストライクを開始
チームサーバー
コバルトストライクは、クライアントとサーバーに分割されます。サーバー側は、ビーコンペイロードのコントローラーであるチームサーバーと呼ばれ、コバルトストライクにもソーシャルエンジニアリング機能があります。チームサーバーは、Cobalt Strikeによって収集されたデータを保存し、ロギングを管理します。
コバルトストライクチームサーバーは、サポートされているオペレーティングシステムのルートとして実行する必要があります。 Cobalt Strike Team Serverを開始するには、Cobalt Strike Linuxパッケージに付属のTeamServerスクリプトを使用します。
./TeamServerサーバーIPアドレスパスワード
チームサーバーには、2つの必要なパラメーターと2つのオプションのパラメーターがあります。 1つ目は、チームサーバーのIPアドレスです。 Cobalt Strikeは、この値をデフォルトサーバーホストとして使用します。 2つ目は、チームメンバーがコバルトを使用するために使用します
Strikeクライアントがチームサーバーに接続するパスワード。
3番目のパラメーターはオプションです。このパラメーターは、順応性のあるC2通信構成ファイルを指定します。
4番目のパラメーターもオプションです。このパラメーターは、yyyy-mm-dd形式の終了日を指定します。チームサーバーは、この終了日を生成する各ビーコンに埋め込みます。ビーコンペイロードは、この終了日または後に実行することを拒否します。ビーコンペイロードが起きているか、この終了日以降に起動すると、実行されます。
チームサーバーが起動すると、チームサーバーSSL証明書のSHA256ハッシュを公開します。このハッシュをチームメンバーに配布する必要があります。チームメンバーが接続したときのコバルト
ストライククライアントは、チームサーバーで認証する前にこのハッシュを検証するかどうかを尋ねます。これは、中間の攻撃に対する重要な保護です。
コバルトストライククライアント
Cobalt Strikeクライアントはチームサーバーに接続します。 Cobalt Strikeクライアントを開始するには、パッケージに付属のスタートアッププログラムを使用してください。パラメーターは含まれていません。コバルト時
ストライククライアントが起動すると、接続ダイアログが表示されます。
Linuxの下:
Windowsの下:
「ホスト」フィールドでチームサーバーのIPアドレスを指定します。チームサーバーのデフォルトポートは50050です。この設定を変更する人はほとんどいません。 「ユーザー」フィールドは、チームサーバーのユーザー名です。これをあなたの名前に変更してください。 「パスワード」フィールドは、チームサーバーのパスワードです。 [接続]をクリックして、コバルトストライクチームサーバーに接続します。これがこのチームサーバーへの最初の接続である場合、Cobalt Strikeは、このチームサーバーのSSL証明書のSHA256ハッシュを認識しているかどうかを尋ねます。必要に応じて、[OK]をクリックすると、Cobalt Strikeクライアントがサーバーに接続します。コバルトストライクは、このSHA256ハッシュも覚えています。
Cobalt Strike-Preferences-Fingerprintsを使用してこれらを管理できます
希望。
コバルトストライクは、あなたが接続するチームサーバーを追跡し、あなたの情報を覚えています。 [接続]ダイアログの左側からチームサーバープロファイルのいずれかを選択して、[接続]ダイアログにその情報を自動的に入力します。コバルトストライクプレフェレンスを使用することもできます -
チームサーバーはこの接続を変更します。
関数参照
アプリケーション
制御されたアプリケーションを表示するには、表示アプリケーションにアクセスしてください。これにより、System Profilerによって制御されたすべてのアプリケーション情報を示すリストを掲載したアプリケーションタブが開きます。
アナリストのヒント
アプリケーションブラウザには、ターゲットを攻撃する方法に使用する多くの情報があります。この出力を最大限に活用する方法は次のとおりです。
内部IPアドレスフィールドは、危険なしに不明な署名Javaアプレットから収集されます。このフィールドが不明であると表示されている場合、Javaアプレットが実行されていない可能性があります。ここにIPアドレスが表示された場合、署名されていないJavaアプレットが実行されたことを意味します。
Internet Explorerは、ユーザーインストールのために基本バージョン情報を出力します。 Internet Explorerが更新情報を取得した後、その出力のバージョン情報は変更されません。 Cobalt Strikeは、jscript.dllバージョン番号を使用して、インターネットエクスプローラーのパッチレベルを決定します。 support.microsoft.comに移動し、jscript.dllのビルド番号(バージョン文字列の3番目の番号)を検索して、インターネットエクスプローラーの更新バージョン情報を表示します。
A*64アプリケーションの横にあることは、X64ビットアプリケーションであることを意味します。
Attacks-Web Dive-by-System Profiter
クライアント側のreconaissance
アーチファクト
Kitcobalt Strikeは、Artifactキットを使用して、実行可能ファイルとDLLを生成します。 Artifact Kitは、実行可能ファイルとDLLの検査を構築するための商用フレームワークであり、特定のウイルス対策製品を逃れることができます。
artifactキット理論
従来のウイルス対策製品は、署名を使用して既知の悪意のある情報を特定します。既知の悪意のあるシェルコードを実行可能ファイルに埋め込むと、アンチウイルス製品はシェルコードを認識し、実行可能ファイルをマルウェアとしてマークします。
この検出を逃れるために、攻撃者がシェルコードを何らかの形で肥大化し、バイナリファイルにネストすることが一般的です。この難読化は、単純な文字列検索を使用して悪意のあるコードを識別するウイルス対策製品を逃れることができます。
ウイルスライブラリが更新された後にチェックする仮想サンドボックス内の実行可能ファイルをシミュレートする多くのウイルス対策製品があります。各シミュレーションの実行ステップを通じて、ウイルス対策製品はシミュレートされたプロセススペースの既知のエラーをチェックします。既知のエラーが発生した場合、ウイルス対策製品は実行可能ファイルまたはDLLを悪意があるとマークします。この手法により、多くのエンコーダーとローダーを、署名ベースのウイルス対策製品の既知のエラーを非表示にしようとするAVSによってチェックできます。
対照的に、コバルトストライキには、ウイルス対策砂場に制限があります。完全な仮想マシンではありません。アンチウイルスサンドボックスはシステムの動作をシミュレートできません。 Artifact Kitは、バイナリファイル内にあるシェルコードを復元するためにシミュレートしない特定の動作に依存する実行可能ファイルとDLLテンプレートのコレクションです。
これらの手法の1つ[Artifact KitのSRC-Common/Bypass-Pipe.c]を参照してください)は、名前付きパイプを介してシェルコードを提供する実行可能ファイルとDLLを生成します。アンチウイルスサンドボックスが名前付きパイプをシミュレートできない場合、既知の悪意のあるシェルコードは見つかりません。
無効なアーティファクトキットの理由
もちろん、アンチウイルス製品はアーティファクトKIの特定の特徴を破壊する可能性があります。アンチウイルスソフトウェアベンダーが使用しているアーティファクトキットのデジタル署名チェックを実行すると、作成する実行可能ファイルとDLLがAVによってチェックされます。時間が経つにつれて、これはコバルトストライク2.5以下で起こり始めました。 Artifactキットを最大限に活用したい場合は、これらのテクノロジーの1つを基礎として使用して、独自のArtifactキットスイートを構築します。
アンチウイルスベンダーが最初に、実行可能ファイル、実行可能ファイル、またはDLLに既知のリスクまたは未知のリスクがあるか、未知のリスクがあるかを最初に決定するため、これで十分です。これらのウイルス対策製品の一部は、未知の実行可能ファイルとDLLをウイルス対策メーカーに自動的に送信して、さらなる分析とアラートユーザーを使用します。不明な実行可能ファイルとDLLを悪意を持って扱います。ウイルス対策製品とその設定に依存します。
注:この場合、「難読化」は利用できません。あなたは別のチェック方法に直面しており、それに応じて変更する必要があります。アプリケーションホワイトリストを扱うのと同じように、これらの状況を処理します。ペイロード実行可能性を効率的にする既知の利用可能なプログラム(PowerShellなど)を見つけようとする必要があります。
アーティファクトキットの使用方法
認定されたコバルトストライクからヘルプエルセナを入力して、アーティファクトキットをダウンロードします。
Strategic Cyber LLCは、Artifactキットを.tgzファイルとして配布しています。 Tarコマンドを使用して減圧します。 Artifactキットには、build.shスクリプトが含まれています。 Kali Linuxでこのスクリプトを実行し、Windows Crossコンパイラ用の最小限のGNUを使用してデフォルトのアーティファクトを構築します
キットテクノロジー。
artifactキットビルドプロセス
アーティファクトごとにArtifactキットビルドスクリプト
キットテクノロジーは、テンプレートを含むフォルダーを作成します。コバルトストライクテクノロジーを使用するには、コバルトストライクスクリプトにアクセスしてください
マネージャー、次にそのフォルダーからartifact.cnaスクリプトをロードします。
特定のニーズを満たすために、Artifactキットとそのコードを変更することをお勧めします。熟練したCプログラマーはArtifactキットでさらに多くのことを行うことができますが、非プログラマーはArtifactキットを使用することもできます。たとえば、主要なウイルス対策製品は、リリースされるたびに、コバルトストライクの試行バージョンで実行可能ファイルにデジタル署名を書くのが好きです。コバルトまで
Strike 2.5の後、Cobalt Strikeのトライアルとライセンスバージョンは、実行可能ファイルとDLLで名前付きパイプテクノロジーを使用します。ベンダーは、実行可能ファイルが使用する名前付きパイプ文字列のデジタル署名も書きます。実行後に独自のキャラクター機能を解放するデジタル署名を逃れることは、パイプラインテクノロジーのソースコードでパイプラインの名前を変更するのと同じくらい簡単です。
artifactキット使用
コバルト
ストライクライセンスファイルCobalt Strikeのライセンスバージョンでは、開始するには有効な承認ファイルが必要です。承認ファイルは、コバルトストライク製品のライセンスに関する情報を提供する暗号化されたブロブです。この情報には、ライセンスキー、ライセンスの有効期限、ライセンスキーにバインドされたID番号が含まれます。
認証文書を取得する方法
ビルトインアップデートプログラムは、実行時にCobalt Strikeの更新サーバーから認証ファイルを要求します(ビルトインアップデートプログラム)。あなたのコバルトでさえ
ストライクバージョンは最新のものであり、更新プログラムは新しい認証ファイルもダウンロードします。これにより、承認ファイルを戦略的サイバーLLCの記録のライセンス日付と同期させることができます。
ライセンスの有効期限が切れた後に何が起こるか
Cobalt Strikeは、承認ファイルが期限切れになったときに起動をブロックします。 Cobalt Strikeが実行されている間に承認ファイルが失敗した場合、影響はありません。ライセンスされたコバルトストライク製品は、起動時に認証ファイルを確認します。
認証文書はいつ失効しますか?
コバルトストライクライセンスの有効期限が切れると、承認文書が期限切れになります。 Cobalt Strikeライセンスを更新する場合は、更新プログラムを実行して、最新情報で認証ファイルを更新します。
ヘルプシステム情報に移動して、承認ファイルの有効期限が切れたときを見つけてください。 「他の」セクションの下に「有効な」値を見つけます。クライアント情報とチームを覚えておいてください
サーバー情報には異なる値がある場合があります(使用されるライセンスキーによって、および承認ファイルが最後に更新されたとき)。
また、Cobalt Strike Authorization Documentが有効期限から30日以内に警告を発行したときに警告を発します。
承認ファイルを閉じた環境に転送する方法
承認ファイルはcobaltstrike.authです。 Updaterは常にこのファイルをCobaltstrike.jarで配置します。閉じた環境でのコバルトストライクを使用してください:
1。https://www.cobaltstrike.com/downloadでコバルトストライクトライアルパッケージをダウンロードします
2.インターネット接続システムからコバルトストライクトライアルパッケージを更新する
3.更新されたCobaltstrikeフォルダーの内容を環境にコピーします。最も重要なファイルは、cobaltstrike.jarとcobaltstrike.authです。
Recommended Comments