
A ZigBee hacking toolkit by Bishop Fox

ZigDiggity 2.0 を紹介します。Bishop Fox の Matt Gleason 氏と Francis Brown 氏によって作成された ZigBee ペネトレーションテストフレームワークです。Caleb Marion 氏に特に感謝します!
ZigDiggity バージョン 2 は、元のパッケージを大幅に改良したものであり、サイバーセキュリティ専門家、監査人、開発者が単一のデバイスで ZigBee ネットワークと複雑なやり取りを行えるようにすることを目的としています。

自宅で防犯システムを作動させていれば安全だと感じていますか? 私たちの新しいハッキングツールキット ZigDiggity のデモを見れば、考えが変わるかもしれません。このデモでは、「ACK 攻撃」を使ってドアセンサーと窓センサーを標的にします。ZigDiggity は、Zigbee 対応システムをテストするための最有力ツールとして登場し、これまでのすべての取り組みに取って代わるでしょう。
Zigbee は、デバイス間のシンプルなワイヤレス通信を提供する方法として人気が高まり続けており (すなわち、低電力・低トラフィック・短距離)、スマートホームオートメーションからヘルスケアに至るまでのさまざまな消費者製品に採用されています。これらのシステムによってもたらされるセキュリティ上の懸念も同様に多種多様であり、高品質な評価ツールの必要性が浮き彫りになっています。
残念ながら、既存の Zigbee ハッキングソリューションは維持がほとんど行われず、改良はおろか、荒廃した状態にあります。Zigbee ネットワークのセキュリティを評価する実用的な手段がないまま、私たちは Bishop Fox による新しいオープンソースのペンテストアーセナル、ZigDiggity を開発しました。
私たちのデモ満載のプレゼンテーションでは、Zigbee を使用する一般的なモノのインターネット (IoT) 製品と対決させることで、ZigDiggity の攻撃能力を紹介します。ニューヨーク・タイムズ紙が「まさに人間精神の勝利」と称賛するであろうこのトークで、Zigbee ハッキングの未来を体験しに来てください。... まあ、おそらく。
Raspbian のデフォルトインストール (GUI インストール、ヘッドレスではない) を使用して、次の手順を実行します。
sudo raspbi-config コマンドを使用してシリアルを有効にします。
wget http://deconz.dresden-elektronik.de/raspbian/gcfflasher/gcfflasher-latest.debsudo dpkg -i gcfflasher-latest.debsudo apt updatesudo apt -f installsudo GCFFlasher -f firmware/zigdiggity_raspbee.binsudo GCFFlasher -rpip3 install -r requirements.txt を使用して Python の要件をインストールします。sudo cp patch/zigbee.py /home/$USER/.local/lib/python3.7/site-packages/scapy/layers/zigbee.py現在のバージョンの ZigDiggity は、Raspbee での使用のみを想定して設計されています。

現在、スクリプトはリポジトリのルートにあり、すべて Python3 で実行できます。
python3 listen.py -c 15
wireshark と一緒に実行する場合、root 権限が必要になることがあります。
ack_attack.py - 指定されたネットワークに対して ACK 攻撃を実行します。beacon.py - 単一のビーコンを送信し、短時間リッスンします。近くにあるネットワークを特定するためのものです。find_locks.py - チャネル上のネットワークトラフィックを調べ、デバイスの挙動がロックのように見えるかどうかを判定します。ロックと思われるデバイスを表示します。insecure_rejoin.py - 対象ネットワークに対して安全でない再参加 (insecure rejoin) を試行します。listen.py - チャネル上でリッスンし、すべての出力を wireshark にパイプして表示します。scan.py - チャネル間を移動しながらリッスンし、データを wireshark にパイプして表示します。unlock.py - 対象のロックのロック解除を試みます。ZigDiggity バージョン 2 が使用するパターンは、可能な限り信頼性が高くなるように設計されています。このツールはまだ開発のごく初期段階にあるため、今後も改善が続くことを想定してください。
sudo apt install wireshark を使用してデバイスに wireshark をインストールします。
sudo usermod -a -G wireshark $USER)。変更を反映するには、ログアウトしてから再度ログインします。