USB メモリのファームウェアを書き換えてキーボードとして認識させてしまう「BadUSB」ですが、本当にこんなことが可能なのでしょうか。
結論から言えば、
ウェブサイトに掲載されている通りに作業することで簡単に作成することができました。
こんなイメージです。
今回の実験では USB メモリのファームウェアを書き換えて、キーボードにしてしまいます。
(見た目は USB メモリですが、実はキーボードということです。)
こんなイメージでしょうか。
まあ、気になることは、実際に手を動かして試してみる。
これ、ハム(アマチュア無線家)の習性ですね。。。
「BadUSB」については、以下のサイトをご覧ください。
記者の眼 - 記者は「BadUSB」を試してみた、そして凍りついた:ITpro
USBに設計上の致命的な脆弱性が発見され、そのコードが公開される - GIGAZINE
Psychsonを使用したBadUSBの作成方法 - にわか鯖管の苦悩日記
使った USB メモリは東芝製です。
USB メモリならどれでも動作するわけではなく、チップタイプが 2303 のものでないと動作しません。
(最初に購入したものが 2307 だったので、同じ物を2回も購入する羽目に。。。)
ファームウェアを書き換えた USB メモリを元の状態に戻す時は、チップの2番と3番のピンをショートさせる必要があります。
この作業は、チョットした油断で、関係ないピンに触ってチップを壊してしまうこともあるので特に慎重に行う必要があります。
実際の作業では、ピンをショートさせた状態のまま、USB ポートに接続する必要があるので、USB ハブを使うなど、何かひと工夫必要です。
ちなみに私は、少し太めの「針」でショートさせて USB ハブに接続しました。
私が入手したUSBメモリは、ケースの糊付けが甘く隙間があったので爪を使って簡単に空けることができました。(ケースを割らずに済みました。)
今回の実験で書き込んだ攻撃用の Payloads は、公開されているサンプルの一番上のものを使いました。
- USB メモリを USB ポートに差し込む
- 勝手にメモ帳が起動する
- 起動したメモ帳に「Hello World!!!」と勝手に書き込む
<動作>
① 3 秒待ち
② Windows + R (ファイル名を指定して実行)
③ 0.5 秒待ち
④ notepad と入力
⑤ 0.5 秒待ち
⑥ Enter 入力
⑦ 0.75 秒待ち
⑧ Hello World!!! と入力
⑨ Enter 入力
キーボード化した USB メモリは、この①から⑨までのキー入力を勝手に行なってしまいます。
年末に「BadUSB」に関する記事を見つけてからというもの、何時かは実験してみたいと思っていたのですが、最近になってやっと実験することができました。
私達にとって一番馴染みのある USB メモリにこんな重大な脆弱があったとは。。。
この問題は情報漏えいにもつながる重大な問題でもあるため、各メーカには何らかの対策を早急に講じてもらいたいと思います。
今日はハムネタではなかったのですが、「BadUSB」のようなセキュリティ上の脆弱があることをハムの皆様にも知ってもらいたいという思いから、今日のブログネタとさせていただきました。
(今、サイバーセキュリティ月間ですし・・・)
--------------- 2018/12/18 追記 ---------------
HID になるマイコン使えば、もっとお手軽に BadUSB 的なことができると思います。
そのうち、QFP なチップを USB メモリの筐体に埋め込んで、この記事のサンプルと同じことやらせる実験でもやってみますかね。