web-dev-qa-db-ja.com

BeEFはどのように機能し、どのように持続することができますか?

BeEF -ブラウザー活用フレームワーク。私はそれがどのように機能するかについての基本的な実用的な理解があったと思います(考えた)。しかし、最近、私は見ていた このDEFCONの話 。ハッカーが中間者攻撃を使用して、多くのブラウザにBeEFフックを挿入した。いいね。しかし、「JavaScriptがキャッシュで実行されていた」ため、被害者がプロキシから切断したり、別のページに移動した後でも、フックは持続したと主張しました。キャッシュをクリアするだけで、フックされたブラウザを解放できます。これはどのようにして可能ですか?

私の理解では、BeEFエクスプロイト(およびフック)はJSベースであり、ブラウザー実行可能ファイル自体の脆弱性を悪用するのではなく、XSS攻撃のように機能しました。一部の情報をlocalstorageまたはcookieに保存することは可能ですが、タブ/セッション間でJavaScriptを実行するにはどうすればよいですか? BeEFについての私の理解は間違っていますか?またはJavaScript?実際のpayload.jsファイルを探して、実際に何が行われているかを確認しましたが、どこにも見つかりません。ありがとうございます。

12
B1CL0PS

BeEFはMITMfツールから実行するのが最適です。どちらもKali Linuxのほとんどのバージョン(特に最近)で使用できます。 MITMfには、 BeEFAutorun と呼ばれる他の場所にはないBeEFの拡張機能があります。 BeEFAutorunと BeEF Autorun Rule Engine(ARE)[〜#〜] xssf [〜#〜] とTrustwave SpiderLabsのbeef_injection_frameworkに似ていますが、組み込みのARE優れており、すぐに使用できます。 MITMfは、Ettercap(古い)とbettercap(新しいバージョン、およびbeefbox proxy module を含む)の競合製品です。 TheBeefProject here のビデオ。

そうは言っても、BeEFとXSSFは、どのように配信または自動化されたものであっても、どちらにも長所と短所があります。どちらにも組み込みのキャッシュ永続機能はありません。このキャッシュテクニックは、HTML5オフラインストレージをサポートするブラウザにのみ適用される可能性がありますが、今日のほとんどはそうです。オリジナルの手法はLavakumar Kuppanによって発見され、彼のWebサイト、andlabs(ツールサイトはダウンしていますが、 ブログ投稿 はまだアップしています)、およびアプリケーションキャッシュに関するセクションの本HTML5セキュリティで議論されました。 HTMLマニフェストタグは、ストレージが発生するcache.manifestファイルを指定できます。攻撃を開始するには、中間者状態、プロキシサーバーの制御、ブラウザフック(BeEFなど)などが必要です。攻撃を実行するコードは、元のコードからわずかに最新化され、GitHubで squid-imposter として利用できます。

タブ/セッション間でJavaScriptを実行するにはどうすればよいですか?

この機能は、BeEFですでに利用可能です モジュール持続性 を提供します。特に、BeEFの攻撃者は、一時的な注入が必要でない限り、 man_in_the_browser モジュールと iframe_above モジュールの両方の使用を検討する必要があります。必要なのが一時的な挿入だけの場合(独自のホストされた悪意のあるサイト、XSS、またはその他の迅速なメカニズムを介するなど)、 invisible_iframe モジュールを使用して-へのリンクを提供します metasploit-framework browser_autopwnリスナー。このテクニックは、本「Gray Hat Hacking The Ethical Hacker's Handbook、4th Edition」で提供されています。この本はBeEFとMetaSploitの統合について最も完全にカバーしていると思いますが、高度な侵入テストのためのKali Linuxの習得、Daniel Dieterleによる中間セキュリティテスト、およびBrowser Hacker's Handbookもこれらのテクニックの多くに言及しています。

BeEFからXSSFへのコードを比較するのは興味深いことです。たとえば、XSSFのタブ間での永続性の維持は、 ghostify および iframeize モジュールによって実行されます。 XSSFで気に入っている点の1つは、msfconsoleコマンドラインインターフェイスへの直接統合です。 BeEFは コンソール も提供します。 Web開発者向けのHolistic InfoSecと呼ばれる進行中の本には、メタスプロイトフレームワークの統合とBeEF Consoleのセットアップを含むBeEFの設定に関する excellent section があります。著者は YouTubeチャネル も持っています。BeEFはデモ1と3で広範囲にカバーされています。XSSFコンソールは、時間のプレッシャーがかかったときに信じられないほど柔軟で、xssf_add_auto_attack detect_propertiesなどのコマンドを実装します。ライブシナリオやサイバー演習で役立ちます。 XSSFトンネルのセットアップとティアダウンは優れています。 BeEFにはより多くのモジュールがあり、追加のコンソールが必要な場合のトラブルシューティングが容易です(BeEFには、Webベースのコンソールとコマンドラインコンソールの両方、および beefconsole.rb という名前のこのサードパーティ提供のコマンドラインバージョンがあります。 )とデバッグ(例:牛肉 cliオプション )機能。特に素晴らしいのは MS Office 検出モジュール-そして hta_powershell を使用したPowerShellフレンドリーなMeterpreterが提供するInternet Explorerに対するソーシャルエンジニアリング攻撃です。最後に、BeEFは WebRTC を介してチャネルをサポートするため、ブロック上で最もクールなツールの1つになります。

7
atdre

これが彼のメソッドかどうかはわかりませんが、window.openイベントをクリックアクションに関連付けてwindow.focusを呼び出すと、ポップアンダーウィンドウが効果的に表示されます。彼らは別のウィンドウで彼らのビジネスについて行く間あなたのフックを保つのに役立ちます。キャッシュに汚染されたJavaScriptファイルがあると、対応するWebページがロードされてリソースが実行されたときにシステムをフックできます。毒されたjavascriptファイルをリソースとして使用するsite-xにアクセスするたびに、それらを入手します。これを行うにはmetasploitを調べてください。実際には、ユーザーがキャッシュをクリアする必要があります。

0
David-