今日は今年見つかった脆弱性の中でも影響度という点でも最悪かと思われるBadUSBについてお話します。
2014年7月にセキュリティ研究者がUSBの設計上の脆弱性を発見し、その脆弱性を「BadUSB」と命名して公表した。この時点では具体的なコードを提示しませんでしたが、10月に別の研究者がBadUSBについてのコードを公開しました。
目次
どんな脅威があるの?
今回発見されたBadUSBは、「USBデバイスのファームウェアを勝手に書き換えることが出来てしまう」、というものです。このことによって何が起こるでしょうか?
本来はUSBデバイスのファームウェアはPCとUSBデバイス間のデータのやり取りを行なうために、使われますが、そのファームウェアを悪意のあるコードを実行するプログラム等に書き換えられてしまうと、PC側からは通常のUSBデバイスと見えている状態で、裏で情報を抜いり、勝手に操作することが可能となるという恐ろしいことが起きます。
BadUSBが最悪な理由
このような脅威が想定される中、BadUSBが騒がれているのには、その脅威だけでなく次のようなポイントであるからと考えられます。
1.汎用的で利用範囲が広すぎる
昨今の電子機器にはほとんどUSBで接続するように作られています。USBメモリだけでなく、スマートフォン、デジカメ、プリンタ等々。ありとあらゆるところで使われているので、対象範囲が広すぎて対策を取りづらいという点が挙げられます。
2.対策が難しい
仮に対象範囲を絞れたとしても、取りうる対策は限られており、かつ利便性を損なうものであるので、現時点ではどれも難しい状況です。
取りうる対策としては、接続できるUSBデバイスを限定し、それ以外のUSBは許可しない、という厳しい運用が挙げられます。これですと業務で使う場合は、すべてのUSB機器を棚卸し、接続出来るデバイスのIDを抽出し、ホワイトリストに登録する、という流れになりますが、かなり煩雑になります。またユニークなデバイスIDを持っていないデバイスは制限がかけれない、といった問題もあります。
もう一つ考えられる対策としてファームウェアの書き換えを出来なくする、という手もあります。しかしファームウェアの書き換えが出来ないと製品の不具合が出た場合に対応出来ないなど現実的ではありません。
3.根本的な解決はずっと先
そして頭が痛いのが、問題はわかっているのだけど、根本的な解決策はすぐには対応できないこと。この脆弱性はUSBの設計上の問題とのことで、ファームウェア周辺にセキュリティ対策を施すには新しい規格を作り直す必要があるとのこと。
すでにこれだけ現行規格のUSBが出回っている以上、仮に新規格が出来たとしても全て置き換わるには数年どころでは済まないでしょう。
この様にBadUSBの問題は根が深い上、影響も大きいので今後しばらくは動向を注視していく必要があります。また現実的には難しいですが、極力出元がわからないようなUSBデバイスは接続しないようにしましょう。
Heartbleed問題の時も思いましたが、標準的に使われている仕組みで脆弱性が見つかると、影響範囲が広くて対策が本当に大変です。今はこのような情報はセキュリティに関係のある人にしか届きませんが、もっとニュースサイトなどでも積極的に取り上げて欲しいものです。
PS.
BadUSBの脆弱性を突いた攻撃をブロック出来るものではありませんが、最低限ウィルス対策はやっておきましょう。こちらのカスペルスキーは最近評判が良いですね。マルチデバイス対応なのがお薦めです。