レッドチーム:攻撃者から見たCVE-2019-19781
本ブログ記事は、2020年5月6日に米国で公開された抄訳版です。原文はこちらからご覧頂けます。
前回の「ブルーチーム:防御する側から見たCVE-2019-19781」」では、現在確認されているインシデント対応ケースCVE-2019-19781について、防御する側の視点から説明しました。今回は引き続きBlackBerryレッドチームがこの問題について、攻撃する側の視点から説明します。攻撃者はこれを理想的な脆弱性だと考えています。こうした種類のアプライアンスは被害者のネットワークとインターネットとの橋渡しをしてくれるからです。
このホストを悪用することで、標的のネットワークを簡単に水平移動できるようにするための格好の拠点を得られます。適切に設計されていない環境では、そうしたデバイスが存在する内部ネットワークと外部との間にDMZが設けられておらず、攻撃者がいとも簡単に目的を達成してしまう可能性があります。
図1:考えられる(単純化した)ネットワークアーキテクチャの一例
脆弱性の検知
ネットワークに詳しくなくても、脆弱性スキャンを実行することで、簡単にアセットが検出され、それらのアセットの脆弱性も明らかになります。たとえば、TenableのNessus脆弱性スキャナは、SNMP、ローカルチェック、Webチェックなどのさまざまな方法でこの特定の脆弱性のチェックを実行できる4つのプラグインを備えています。
細かく調べる場合は、脆弱性をチェックするためのプラグインを1つだけ選択するか、次に示すようにMetasploitフレームワーク内で専用の補助モジュールを使用することができます。
図2:MetasploitでCVE-2019-19781スキャナを検索
脆弱性の悪用
攻撃者は、脆弱性が存在することを確認したら、それを悪用しようとします。最初、こうした脆弱性はどちらかというと手動のプロセスにより悪用されていました。しかし、コードが次々に公開されたことで、今や武器化や自動化も進んでいます。実際、誰でも自由に使用できるMetasploit Frameworkでは簡単にエクスプロイトコードを作成・実行することができ、次のスクリーンショットに示すように多くのペイロードオプションが用意されています。
図3:citrix_dir_traversal_rceエクスプロイトを通じて展開可能なMetasploitのペイロード
悪用後に考えられる行動
攻撃者が何を目的としているかによって、選択するペイロードも大きく異なってきます。しかし、多くの事例では、パーシスタンスメカニズムが水平移動を行うための手段とともに確立されます。BlackBerryのレッドチームのある取り組みにおいて、被害のあったデバイスから/flash/nsconfig/ns.confファイルを取り出すことができました。ドメイン認証情報を含むこのファイルを使用すれば、簡単に水平移動することができます。このファイルをアプライアンスから取得したネットワーク情報と組み合わせることで、攻撃者は攻撃を拡散して目的を達成することができるようになります。ネットワーク全体を移動した後は、自由にランサムウェアを展開したり、機密情報を盗んだりできます。
結論
CVE-2019-19781エクスプロイトに起因するインシデント対応の問い合わせが増加している今、私たちはこのエクスプロイトについて攻撃する側と防御する側の両方の視点から説明することで、組織がそれぞれのセキュリティ環境を見直してくれることを願っています。ブラックハットハッカーではなかった人でも、いつそのような活動を始めるとも限りません。こうした脆弱性や侵入の兆候を探すのに少しでも注力しておけば、いつか役に立つでしょう。