Help us understand the problem. What is going on with this article?

【改造】DJI Phantom 3 Standard の脆弱性でWiFiダウンリンクの電波出力を上げる

More than 3 years have passed since last update.

ftpから設定を書き換えて無線出力を上げるハックがMITの論文で示されている。
2016/08/20時点での最新のファームウェアだけ確認。
また、2017年はじめごろリリースのファームウェア All-in-One firmware Version: v1.8.10 にアップデートしても、以下の説明で設置するバックドアのtelnetd はそのまま生きていた。

また、ミスるとWiFiが起き上がらなくなってbrick(文鎮化)する。
なお実験にあたっては、電波の漏洩しない電波暗室か、上げた出力が法令規制値内に収まる国でやること。
とはいえ、日本の電波法では無線LANは1Wの出力まで許可されている。27dBm は 500mW なのでセーフ。

論文は Security Analysis of DJI Phantom 3 Standard

手順

FTPアクセス → telnetd を起動するようにする(ある種のバックドア) → telnet でWiFi設定を変更

telnet起動まで

とりあえず、いじるためにドローンとコントローラでtelnetを起動させる。

  • PCでドローンのコントローラーに接続。
  • 192.168.1.1 (コントローラ) や 192.168.1.2 (ドローン) にFTPアクセスする
    • root / Big~9China
  • 192.168.1.1 (コントローラ) や 192.168.1.2 (ドローン) でそれぞれ同じファイルを書き換え
    • telnetd -l /bin/ash &/sbin/djiled.sh の2行目に追記する
  • とりあえず iw list をしてみてWiFi出力が 20dBm (だったかな?)であることを確認

起動スクリプト書き換え

telnetが起動したら、いよいよ起動スクリプトを書き換える。
ここからrcSをいじるので文鎮化の危険あり。

sed -i 's/GB/OK/g' /etc/init.d/rcS
echo "iw reg set US" >>/etc/init.d/rcS
echo "iw dev wlan0 set txpower limit 2700" >>/etc/init.d/rcS

これでアメリカ合衆国用のWiFi出力となる。

最後に再起動したあと、telnetで iw list をしてみて 27dBm となっていたら成功。
また、iw reg get で以下のように country US になっていれば成功。

/ # iw reg get
country US: DFS-FCC
        (2402 - 2472 @ 40), (N/A, 30), (N/A)
        (5170 - 5250 @ 80), (N/A, 17), (N/A)
        (5250 - 5330 @ 80), (N/A, 23), (0 ms), DFS
        (5735 - 5835 @ 80), (N/A, 30), (N/A)
        (57240 - 63720 @ 2160), (N/A, 40), (N/A)

なにか抜けてるかもしれないので実験にあたっては原文やフォーラムを熟読のこと。

P3Std 無線系について

  • 上位のP3Adv, P3Proとは無線周りがかなり違う
    • 上位機種は2.4GHzではあるがLightbridgeでWiFiではない
    • これら機種ではコントローラの2本のアンテナを使って送受信
  • コントロール周波数は日本仕様だけ 920MHz 、海外は5.8GHzとか
    • P3Sdのコントローラから生えてる1本のアンテナはコントロール用のこれ
    • アンテナの形状も違う
  • ライブ映像や、ドローンの各種情報ダウンリンクはWiFi 2.4GHz
    • アンテナは平面アンテナがコントローラ内部に内蔵(ジンバルのノブがあったりするコントローラーの両肩の位置に計2つ)
    • 本実験ではこの部分をmodify
  • ドローン本体、コントローラ(プロポ)共に 20MHz 幅の 2.4GHz WiFi
    • チャンネルは2だったが環境によって違うかもしれない
    • コントローラ側では、SSIDを発信するものとドローンと通信する部分が同じWiFiモジュールで動作している模様
keiya
筑波大生です
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away