
Meshtastic ダイレクトメッセージにおける CVE-2025-52464 のソフトウェアのみの概念実証
このプロジェクトは、Meshtastic ファームウェア バージョン 2.5.0 から 2.6.10 に影響を与える脆弱性 CVE-2025-52464 を実証する、ソフトウェアのみの概念実証です。
この実装は、脆弱なファームウェアの暗号動作を再現し、重複した鍵や低エントロピーの暗号鍵によって攻撃者が暗号化されたダイレクトメッセージ(DM)を復号できる仕組みを示します。また、ファームウェア バージョン 2.6.11 で導入された修正済みの動作も示します。このバージョンでは、適切な鍵生成と低エントロピー鍵の検出により攻撃を防ぎます。
crypto_engine.py Cryptographic operations (X25519, HKDF, AES-GCM)
node.py Simulated Meshtastic node
packet.py Encrypted Direct Message packet
attacker.py Passive attacker simulation
security_checker.py Low-entropy public key detection
compromised_keys.py Database of compromised public keys
simulation.py Coordinates the complete simulation
demo.py Runs the vulnerable and patched demonstrations
test_node.py
test_packet.py
test_vulnerable_key.py
test_attacker_decrypt.py
test_fixed_case.py
仮想環境を作成します(任意):
python -m venv venv
アクティベートします。
Windows:
venv\Scripts\activate
必要なパッケージをインストールします:
pip install -r requirements.txt
実行:
python demo.py
このデモは2つの実験を行います:
脆弱なファームウェア
修正済みファームウェア
以下のスクリプトは個別に実行できます:
python test_node.py
python test_packet.py
python test_vulnerable_key.py
python test_attacker_decrypt.py
python test_fixed_case.py
このプロジェクトは、Technische Universität Darmstadt の Secure Mobile Networking Lab (SEEMOO) が提供する Network Security コースのボーナスプロジェクトとして、2026年夏季学期に開発されました。
本プロジェクトは、教育および研究目的のみを意図しています。この実装は、脆弱性の原因となる暗号ワークフローをシミュレートすることにより、CVE-2025-52464 のソフトウェアのみの概念実証を提供します。完全な Meshtastic ファームウェア、LoRa 物理層、または Meshtastic の通信スタック全体を実装するものではありません。
このプロジェクトは、安全な鍵生成と暗号上の脆弱性の研究と理解を支援することを目的としており、不正または悪意のある活動に使用してはなりません。
Masoud Mehdipour
Network Security Bonus Challenge
Secure Mobile Networking Lab
TU Darmstadt