web-dev-qa-db-ja.com

実際の侵入テスターは実際にmetasploitなどのツールを使用していますか?

私はメタスプロイトを単に趣味として遊んでみましたが、実際の pentesters やハッカーが実際にメタスプロイトを使用してシステムに侵入したり、独自のポストエクスプロイトモジュールや独自のプログラムを作成したりしていませんか?

私が尋ねる理由は、metasploitがWindowsイベントログなどを選択的にクリアできないようであるか、またはおそらくそれを見つけることができなかったためです(最も近いものを見つけることができるのは明らかですが、それは単純にすべてではありませんsneaky)さらに、イベントログを選択的にクリアできたとしても、リング0のプリフェッチキューのような場所にフォレンジックがシステムイメージから私が行ったことを見つけることができます...

70
shawn

フォレンジックに関する限り、Metasploitには、フォレンジック分析の作業をより困難にするために特別に設計されたペイロードがあります。たとえば、多くのエクスプロイトモジュールでデフォルトで選択される最も有名なペイロードは、meterpreterペイロードです。それは完全にメモリ内で実行され、(ユーザーから明確に要求されない限り)ディスクに対して操作を行わないでください。つまり、プリフェッチフォルダーやディスク上の他の場所に証拠はありません。

すべてのイベントログを消去する必要はありません。 meterpreterスクリプト event_manager を使用して、必要なイベントログを選択してクリアできます。

Meterpreterには timestomp というツールがあり、ハードディスク上のファイルの変更、アクセス、作成、実行時間を任意の値に変更できます。 sdel (安全な削除)モジュールを使用すると、ファイルの内容を安全に消去できます。これにより、ファイルの内容を安全に消去できるだけでなく、削除前にファイルの名前を長いランダムな文字列に変更して、法医学的な回復だけでなく、内容だけでなく、ファイルのメタデータも非常に困難です。

これで、実際の攻撃における実際の悪意のある攻撃者によるMetasploitの使用の2番目の部分になります。 報告 があり、Metasploitがイランの核施設への攻撃の1つに使用された。 Metasploitが頻繁に表示されない理由は、製品のオープンソースの性質によるものです。エクスプロイトとペイロードは誰でも利用できるため、デフォルトでは、アンチウイルス、IDS/IPSなどのすべてのセキュリティ製品がこれらのファイルを悪意のあるファイルと見なします。防衛産業は、Metasploitを使用して完全に無害なファイルを作成したとしても、ほとんどすべてのAVソリューションによって検出されるようになっています。次のような空のペイロードを生成します。

echo -n | msfencode -e generic/none -t exe > myn.exe

それをVirusTotalにアップロードすると、AVソリューションの半分以上が悪意のあるものとして検出することがわかります。詳細については、Matt Weeksのブログ here を参照してください。

この動作により、非常に高い検出率のため、攻撃者は実際の攻撃にMetasploitを使用するリスクを負うことはありません。モジュールは簡単にカスタマイズでき、Metasploitを介してAVおよびその他のセキュリティコントロールをバイパスすることも非常に簡単です。ただし、その時点では、ペイロードが最初から書き込まれたのか、Metasploitモジュールが変更されたのかを判別するのは困難です。したがって、メタスプロイトを操作に使用した、または引き続き使用している攻撃者の数を確認することは困難です。

74
void_in

悪意のある攻撃者/ハッカーについては知りませんが、ツールボックスにMetasploitを含むペンテスター(私も含む)をいくつか知っています。使用されるツールはこれだけではありませんが、確かに用途があります。とはいえ、あなたの質問は、悪意のある攻撃者にとってより便利な「トラックをカバーする」ことについてのようです。私のペンテストエンゲージメントでは、ログの改ざんを検出することが「青いチーム」の目標の1つである場合を除いて、ログを改ざんすることはほとんどありません。 (次に、それが検出されるかどうかを確認するためにそれを行います。)

33
David

はい、ペンテスターはMetasploitを使用しています。カスタムexeテンプレートとshikata_ga_naiを使用すると、ほぼすべてのAVソリューション(これについて詳しくはAV回避のためのGoogle)をだますことができ、meterpreterペイロードはWindowsドメインで特権をエスカレートするのに非常に便利です。

そうは言っても、Metasploitは多くのツールのうちの1つにすぎず、優れたペンテスターは適切なタスクに適切なツールを知って使用する必要があります。

イベントログから特定のエントリを消去することは、目標を検出せずにSIEMシステムをだます場合のペンテストに役立つかもしれません。ただし、この機能が(現在のところ)Metasploitにないからといって、すでにそこにある便利なモジュールをすべて使用できるわけではありません。

カスタムツールキットに関しては、Metasploitをフォークするか、独自の悪用後処理モジュール(選択的なイベントログの削除など)を単純に作成する方が効果的だと思います。

それがオープンソースソフトウェアの美点です。

16
Sebastian B.

Rapid7よりもイミュニティセキュリティまたはCoreSec製品を使用することには利点があります(商用のMetasploit製品またはFOSS MetaSploit Framework(別名MSF)のいずれか)。それらを自分でテストする必要がありますが、ほとんどの場合、缶詰のエクスプロイトを実行し、計画/結果を整理できることに関係しています。私が理解している限り、すべてのMSFエクスプロイトはCore IMPACTから実行できます。ただし、Metasploitはすぐにはどこにも行かず、他のツールと一緒に使用できます。最初にその弱点のいくつかに対処できれば。

ペイロードに関しては、メータプリターを含むMSFの機能には多くの要望が残されています。ほとんどのMSFペイロードは、さまざまな種類のAVおよびHIPSによって簡単に見つけることができます。デフォルトのペイロード実行可能ファイルは、標準のW32ライブラリ呼び出しや依存関係など、私が使用するのを嫌う多くの一般的なWindowsismを実装します。INNUENDO(およびImmSecからの以前のMOSDEF)の方が優れていますが、最近、MOSDEFでもいくつかの指紋が確認されています。アプリのホワイトリスト登録は、インプラントバックドアテクノロジーのもう1つの懸念事項ですが、MSFの一部を利用する ここにバイパスがあります です。 Powershellを活用する another です。多くの専門家は、デフォルトの実行可能ファイルを避け、generate -tフラグ(またはmsfvenomを介して)、psh(Powershell)、dll(AppInitレジストリインジェクション用)、または別の一般的でない形式をドロップします。

MSF=はCobalt Strikeのビーコンに部分的に埋め込まれていますが、Meterpreterが単独で実行できる機能をはるかに超えています。強くお勧めします!

また、 Throwback などのツールを使用して他の人が簡単にすることを聞いたことがあります。代替案があると良いでしょう。私が見つけた別の1つは ClickOnce です。

web_delivery を使用して、Powershell経由で最新のWindows(Win7以降、Win Server 2k8r2以降)を攻撃すると、MSF自体が新しいルートを進んでいるように見えます。攻撃者はこのフレームワークに基づいて大量の注入を行うことができます 搾取後のタスクのためのより多くのPowershellアクション 、例えば:

MSFモジュール、 web_delivery は、PythonまたはPHPペイロードを配信し、 Rubyなどの他のインタープリターをサポートするように変更される可能性があります。「MSFを介してPowershellを使用する理由」をより深く理解するためにすべてをまとめたい場合は、このブログ投稿を参照してください http://www.labofapenetrationtester.com /2015/04/pillage-the-village-powershell-version.html

Powershellの追加の心配は、Windows 10で Device Guard に対して実行する場合です。

[更新]以下のコメントの1つによると、Metasploit Proは、MSFのオープンソースバージョンにも統合されているより強力なペイロードを利用できます。 Metasploit Proを使用している場合は、generate_dynamic_stagerなど、auxiliary/proモジュール improvements を確認してください。そうでない場合は、 stageless meterpreterペイロード についてお読みください。

TCP(DNSと一緒に)を使用するツールは、 msfconsole routeコマンドproxychains 、および-を使用してMeterpreter経由で簡単にプロキシできます。 socks4a サーバーモジュール。セッションが作成された後、そのセッションIDを介してそのネットワーク(またはこの段落の最初のリンクに示されているようにlocalhost)へのルートをセットアップします。次に、socks4aモジュールを実行して、 proxychains.confファイルへの構成。DNSも適切に通過する必要があります。Metasploitを介して外部ツールを実行する方法は複数あると考えられます。Ruby(およびその前のPerl)のように)、Metasploitは「それを行うには複数の方法がある」フレームワーク。開発者として、あなたのアイデアを統合するのはあなた次第です。オープンソースソフトウェアの力を利用して、あなたの変更に貢献し、コミュニティに参加してください。

13
atdre

はい、Metasploitは業界の専門家によって非常に一般的に使用されています。

たとえば このリンク を参照してください。

8
Fairlight

はい、Metasploitを使用して、Metasploitで記述されたエクスプロイトを含む既知の脆弱性をエクスプロイトします。 私の場合、脆弱性のリスクを証明するためだけにMetasploitを利用しました。クライアントにリスクを示します。したがって、基本的に、クライアントはこの脆弱性をいつ悪用したいかを知っています。

6
zakiakhmad