やじうまPC Watch

ソフトウェア無線を使ってドローンをハイジャックする技術

~トレンドマイクロが手法を解説

 去る10月26日、東京でセキュリティに関するカンファレンス「PacSecセキュリティ・カンファレンス 2016」が青山ダイヤモンドホールで行なわれた。この中でトレンドマイクロのジョナサン・アンダーソン氏は、「ソフトウェア定義無線を使ってDSMxスペクトラム拡散周波数ホッピングのドローン・リモコンを攻撃する」と題した、興味深い発表を行なった。

 一般的なドローンは、いわゆるラジコンと同様、無線のリモコンを使って操作する。このリモコンとドローン間の通信は現在、2.4GHz帯が広く使われている。その中でも特にメジャーなのがDSMxで、周波数ホッピング(FHSS)、直接シーケンス・スペクトラム拡散(DSSS)、符号多分割多元接続(CDMA)、ガウス型周波数偏移変調(GFSK)といった技術が使われている。

 一方で近年、ハードウェアの性能向上やソフトウェア無線(SDR)が流行りつつある。SDRは本来ハードウェアに実装される部品の代わりに、PCまたは組み込みソフトによって無線通信を実現するものだ。これにより、無線で転送されているものを、PCなどで容易に解析できるようになった。余談だが、これは身近なものでも結構あり、例えば秋葉原などで1,000円程度で手に入るワンセグチューナーも、SDR対応チップ(RealtekのRTL2832U)が使われていたりする。

 これによって実現可能となったのが、無線の解析だ。無線は先ほど述べたようなFHSSやDSSS、CDMA、GFSKといった技術で盗聴されにくくなっているが(一部技術は電波干渉を避ける意味もある)、SDRによって、市販されているハードウェアで解析できるようになったわけだ。

 具体的な解析方法については公開されているスライドを参照されたいが、アンダーソン氏らSDRによる解析で、DSMxが同じパケットを繰り返して送信していることを見つけ、PN符号化アルゴリズムのリバースに成功。総当り攻撃によって、通信を確立させるための手段を導き出した。

 ただ攻撃にはミリ秒以下のタイミングが必要なため、同氏らは組込みシステムを設計した。96MHz駆動のCortex-M4を搭載したUSB開発ボード「Teensy V3.2」や、Superbit CYRF無線、そのほか多数のパーツを用いて制作されたこのシステムは「ICARUS」と呼ばれ、DSMxリモコンに接続することで、任意のDSMx採用ドローンをハイジャックできるようになる。

 本体の上部にはシステムの情報が表示され、下のLEDにチャンネルマップ、およびPWMのデコード結果を表示する。ハイジャックのターゲットを検出すると、ドローンに対してユニークIDを自動で生成し、ハイジャックを行なう。以降、ハイジャッカー側のリモコンでしかそのドローンを操作できなくなる。

 当然、ICARUSは市販されておらず、悪意のあるハイジャックを目的としたものではないが、講演でアンダーソン氏は、無限制御システムはこのような悪意のあるものを考慮して設計されるべきであるとしたほか、SDR側も多様化しているので、高度な攻撃を可能としているため警戒が必要であるとまとめている。

【動画】ドローンハイジャックシステム「ICARUS」