3.8K Views
September 16, 22
スライド概要
次のイベントの講演資料です。
https://sciencepark.connpass.com/event/257056/
サイエンスパークの勉強会の資料を公開します。勉強会は2022/3現在、connpassで公開しています。 https://sciencepark.connpass.com
ミニWDDDS USBインタフェースとその脆弱性 2022/9/16 バグダス検証課 喜井 公一朗 © SCIENCEPARK CORPORATION. SP2209-E22
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 2
ミニWDDDS 1.はじめに USBインタフェースを持つPCやIoT機器に対して、悪意のあるUSBターゲッ ト(一般的にはUSBデバイス)を利用した攻撃があります。 BadUSBが有名な攻撃手法ですが、USBプロトコルなどの脆弱性をついた 攻撃ではなく、OSなどの設定の問題であるため、対策を忘れることが多いで す。 ここではさまざまなUSBターゲットをエミュレートし、BadUSBのような攻 撃への対策ができているかを検証できる評価ツールをご紹介します。 *エミュレート:ある装置がそれとは異なる別のハードウェアの環境を真似すること SP2209-E22 3
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 4
ミニWDDDS 2.BadUSBとは BadUSBとは 悪意のあるファームウェアが組み込まれたUSBターゲットを用いた コンピュータへのセキュリティ攻撃手法です キーボード ②任意のUSBターゲットに偽装する (ここではキーボード) ①悪意のあるUSBターゲットを差し込む ③悪意のあるコマンドを入力実行 して、Webからマルウェアをダウ ンロードしたりする デモ動画へ SP2209-E22 5
3.BadUSBとは 6
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 7
ミニWDDDS 3.USBの基礎の基礎 USBには「ホスト」と「ターゲット」があります。 必ず「ホスト」から何らかの要求を出さないと、「ターゲット」は 動作しません。 マウス、キーボードなど ターゲット ホスト ターゲット PC、マイコン SP2209-E22 ・ ・ ・ ・ 8
ミニWDDDS 3.USBの基礎の基礎 ホスト-ターゲット間の通信 ホストは情報の取得リクエストをターゲットに送り、ターゲットは自身の情報を返 します。その結果、ホストは対応するドライバを起動してやりとりが継続されます。 ターゲット情報の取得 ホ ス ト USBクラスや製品IDなど タ ー ゲ ッ ト 返すUSBクラスや製品IDを偽装すれば、任意のターゲット を接続したことにできます。 評価ツールでは、この偽装を行い、ホストから不要なター ゲットが認識されないかを確認することができます。 SP2209-E22 9
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 10
ミニWDDDS 4.評価環境構成図 ツールを利用することで ターゲットが別のUSBターゲットに置き換わる。 USB Wi-Fi リモートPC SP2209-E22 ホスト USBターゲット (Raspberry Pi Zero W) Tera TermなどでSSH接続し コンソール表示 11
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 12
ミニWDDDS 5.ターゲット環境設定 用意するもの 1. Raspberry Pi Zero W × 1(Raspberry Pi OS Ver:5.15.61) 2. microSDカード(32GB) × 1 3. micro USBケーブル × 2 (設定用) 1. mini HDMI-HDMIケーブル または変換アダプタ× 1 2. micro USB OTGケーブル × 1 3. micro SDカードリーダー × 1 SP2209-E22 13
ミニWDDDS 5.ターゲット環境設定 Raspberry Piに、Raspberry Pi OS(旧Raspbian)を 用意します。 SP2209-E22 14
ミニWDDDS 5.ターゲット環境設定 初回だけ、Raspberry Pi OSにてPCと通信する設定が必 要なので、デスクトップ画面から操作します。 電源供給用 USB mini HDMI Raspberry Pi本体から ホーム画面で起動できているか確認 USB(OTG)⇒マウス、 キーボード接続 SP2209-E22 15
ミニWDDDS 5.ターゲット環境設定 PCからターミナルソフトでRaspberry PiにSSHでログイン します。 Tera Termの例: Raspberry PiではSSHサービスを立ち上げておき、PCとはWiFiでピアto ピアで接続します。 RaspberryPiのIPアドレス RaspberryPiのIPアドレス RaspberryPiのIPアドレス SP2209-E22 16
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 17
ミニWDDDS 6.ツールについて Raspberry Pi上で動作するumap2を利用します • • • • SP2209-E22 https://github.com/nccgroup/umap2 元々はFace dancerというボードで使用することを目的 Pythonで動作するツールです。(Python2で動作確認済み) Python2 Ver : 2.7.18 18
ミニWDDDS 6.ツールについて Raspberry Pi側で実行するコマンド • USBターゲットスキャン 様々なUSBターゲットに偽装していきます コマンド:sudo umap2scan -P gadgetfs • USBターゲットエミュレート 指定されたUSBターゲットに偽装します コマンド:sudo umap2emulate -P gadgetfs -C リスト内のターゲット名 SP2209-E22 19
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 20
ミニWDDDS 7.ツールの動作デモ デモ環境構成 ホスト ターゲット USB Raspberry Pi Zero W Raspberry Pi 4 両機をSSH接続し エミュレートされたかを確認 リモートPC SP2209-E22 ⇒デモ 21
ミニWDDDS 目次 1.はじめに 2.BadUSBとは 3.USBの基礎の基礎 4.評価環境構成図 5.ターゲット環境設定 6.ツールについて 7.ツールの動作デモ 8.最後に SP2209-E22 22
ミニWDDDS 8.最後に これによって、BadUSBによる攻撃でIoT機器が認識するターゲットを事前に確認する ことができます。 今回のツールは、いくつかのエミュレートしたターゲットでファジングによる攻撃を 実行し評価することも可能です。 現在、BadUSBを検知する有効な対策は無いため、信頼されたメーカから提供された USB以外は使用しないでください。 今後のセミナーでは、様々な診断の評価・対策についてもご紹介できたらと思います。 SP2209-E22 23
ミニWDDDS 8.最後に - 宣伝 サイエンスパークは、オンライ ン脆弱性診断サービスを、 EdgeTech+ 2022で発表・展示 します。 ①ファイルをアップロード ②セミオートで短時間で診断 ③結果がレポート形式で返る という形で、サイエンスパーク ならではの知見を盛り込んだ診 断を行う、サブスクサービスの 提供を予定しています。 会場内セミナーも開催しますの で、ぜひ参加ご登録ください。 SP2209-E22 24
ミニWDDDS ご清聴ありがとうございました