組み込みシステム特有のセキュリティ問題を掘り下げる(2/2 ページ)

» 2007年05月09日 08時00分 公開
[ITmedia]
前のページへ 1|2       

 この組み込みシステムには、汎用システムと共通する点があると同時に、組み込みシステムならではの特殊性もあると同氏は述べた。

 まず「共通のアタックベクターには共通の攻撃が可能。音声ファイルや画像処理のバッファオーバーフロー、設定CGIのクロスサイトスクリプティングのように、同じ機能には同じような脆弱性が存在する可能性がある」(鵜飼氏)。こうした脆弱性については、汎用システムで得られたノウハウを活用することで対応可能という。

 一方、組み込みシステムならではの特殊性もいくつか挙げられた。1つは、ハードウェアそのものの脆弱性を付かれる可能性だ。2つめは「プログラムに不正入力を行うのではない、新たな攻撃様式」(同氏)で、物理的な仕組みを掌握したり、不正操作/異常動作を誘発させるといった手法が考えられる。3つめは、新たなアタックベクターだ。細工の施されたカードのように、特殊な入力デバイスを用いる方法がその例で、これは汎用システムにおける「悪意あるサイトに誘導するWebページ」の役割を果たすことになる。

 また組み込みシステムには、環境の特殊性もあると鵜飼氏は述べた。汎用システムの仕組みが開かれているのに対し、組み込みシステムでは汎用APIの仕様は非公開であることが多く、CPU命令も汎用システム――IA32のそれとは異なる。

 このため、攻撃者にとって技術的なハードルは高いといえる。しかし「1998年頃には、Windowsを狙うエクスプロイトなど不可能だと言われていたが、現実には可能になっている。歴史は繰り返される可能性が高い」(鵜飼氏)

 事実、同氏が、ブロードバンドルータやネットワークカードを対象に攻撃を試みたところ、コードの挿入/実行やファームウェアの書き換え、Rootkitの混入といった動作が確認できたという。

 こうした攻撃に対する対策は、まずファームウェアの脆弱性を減らすこと、そして、バッファオーバーフロー保護のように攻撃を無効化する対策を導入すること。さらに、基板に攻撃者にとってのヒントを残さず、BGAパッケージを採用するなど、「攻撃者に解析されないよう、どこかで攻撃者が挫折するようにしておくことが大事」だとした。さらに、Rootkitの挿入などを防ぐためには、ファームウェアのROM化やクローズドアーキテクチャの採用などを検討するのも1つの手だという。

 「WindowsやUNIXなどが堅牢になった結果、攻撃者の目は組み込みシステムに行っている。その上、今や普通のOSにはほとんど見られない古典的な脆弱性が残っているケースが多く、歴史を繰り返す可能性がある」と鵜飼氏は警鐘を鳴らし、開発プロセスの見直しや事後対応のノウハウの蓄積が今後必要になってくると述べた。特に、組み込みシステム特有の脆弱性や脅威が存在することから、設計段階での十分なレビューが重要な役割を果たすという。

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ