Awesome Embedded and IoT Security
Embedded and IoT Securityを扱う資料や関連プロジェクトをまとめたAwesomeリストです。
目次
ソフトウェアツール
組み込み機器・IoT機器およびファームウェアを分析するためのソフトウェアツールです。
分析フレームワーク
- EXPLIoT - Metasploitに似た、IoTに特化したペンテストフレームワーク。
- FACT - The Firmware Analysis and Comparison Tool - ファームウェアの抽出、各種プラグインを用いた分析、異なるファームウェアバージョンの比較を含む、フル機能の静的解析フレームワーク。
- Improving your firmware security analysis process with FACT - FACTに関するカンファレンス講演 :tv:。
- FwAnalyzer - カスタマイズしたルールに基づいてファームウェアのセキュリティを分析します。CIに似たDevSecOpsの追加ステップとして意図されています。
- HAL – The Hardware Analyzer - ゲートレベルのネットリストを対象とする包括的なリバースエンジニアリングおよび操作フレームワーク。
- HomePWN - IoT機器のペンテスト向けスイスアーミーナイフ。
- IoTSecFuzz - ハードウェア、ソフトウェア、通信の各IoT層に対するセキュリティ分析を自動化するフレームワーク。
- Killerbee - ZigBeeおよびIEEE 802.15.4ネットワークをテスト・監査するフレームワーク。
- PRET - プリンター悪用ツールキット。
- Routersploit - 組み込み機器の悪用に特化したフレームワーク。
分析ツール
- Binwalk - バイナリから「興味深い」ものを探索し、任意のファイルを抽出します。
- cwe_checker - バイナリ実行ファイル中の脆弱なパターンを検出します。x86、ARM、MIPSのELFをサポートし、ベアメタルは実験的にサポートします。
- emba - 組み込み機器のLinuxベースのファームウェアを分析します。
- Firmadyne - ファームウェアをエミュレートし、ペンテストを試みます。
- Firmwalker - 抽出済みファームウェアイメージから、興味深いファイルと情報を検索します。
- Firmware Slap - 共記号解析と関数クラスタリングにより、ファームウェアの脆弱性を発見します。
- Ghidra - CPUアーキテクチャとエンディアンを指定して任意のバイナリを扱える、ソフトウェアリバースエンジニアリングスイート。
- Radare2 - 一般的な形式と任意のバイナリも扱えるソフトウェアリバースエンジニアリングフレームワークで、充実したコマンドラインツールセットを備えます。
- Trommel - 抽出済みファームウェアイメージから、興味深いファイルと情報を検索します。
抽出ツール
- FACT Extractor - コンテナ形式を自動検出し、対応する抽出ツールを実行します。
- Firmware Mod Kit - 複数のコンテナ形式向け抽出ツール。
- The SRecord package - EPROMファイルを操作するツール群(多数のバイナリ形式を変換可能)。
支援ツール
その他のツール
- Cotopaxi - 特定のIoTネットワークプロトコルを使用する、Internet of Things機器のセキュリティテスト向けツールセット。
- dumpflash - 低レベルのNAND Flashダンプおよび解析ユーティリティ。
- flashrom - フラッシュチップを検出、読み込み、書き込み、検証、消去するツール。
- Samsung Firmware Magic - Samsung SSDファームウェア更新を復号します。
ハードウェアツール
- Bus Blaster - UARTやJTAGなどのハードウェアデバッグポートを検出して操作します。
- Bus Pirate - UARTおよびJTAGのようなハードウェアデバッグポートを検出して操作します。
- Shikra - UARTやJTAGなどのハードウェアデバッグポートを検出して操作します。ほかのプロトコルにも対応します。
- JTAGULATOR - JTAGのピン配置をすばやく検出します。
- Saleae - 多数のプロトコルをサポートする使いやすいロジックアナライザー :euro:。
- Ikalogic - Saleaeロジックアナライザーの代替品 :euro:。
- HydraBus - NFC機能を持つBus Pirateに似た、オープンソースのマルチツールハードウェア。
- ChipWhisperer - グリッチ攻撃およびサイドチャネル攻撃を検出します。
- Glasgow - さまざまなデジタルインターフェースを探索・デバッグするためのツール。
- J-Link - 複数の異なるCPUコア向けUSB給電JTAGデバッグプローブ :euro:。
Bluetooth BLEツール
- UberTooth One - Bluetooth実験に適したオープンソースの2.4 GHz無線開発プラットフォーム。
- Bluefruit LE Sniffer - 使いやすいBluetooth Low Energyスニファー。
ZigBeeツール
- ApiMote - IEEE 802.15.4/ZigBeeシステムのセキュリティを学び評価するためのZigBeeセキュリティ研究用ハードウェア。Killerbee互換。
- Atmel RZUSBstick - 販売終了製品。持っていれば幸運です。IEEE 802.15.4、6LoWPAN、ZigBeeネットワークを含む幅広い低消費電力無線アプリケーション向けの開発、デバッグ、デモ用ツール。Killerbee互換。
- Freakduino - IEEE 802.15.4プロトコルスニファーに変換できる、低コストのバッテリー駆動無線Arduinoボード。
SDRツール
- RTL-SDR - 初心者向けの最も安価なSDR。500 kHzから1.75 GHzまでのライブ無線信号周波数を受信する、コンピュータベースのラジオスキャナーです。
- HackRF One - 1 MHzから6 GHzまでの無線信号を送信または受信できるソフトウェア定義無線周辺機器(半二重)。
- YardStick One - 半二重のサブ1 GHz無線トランシーバー。
- LimeSDR - 100 KHzから3.8 GHzまでの無線信号を送信または受信できるソフトウェア定義無線周辺機器(全二重)。
- BladeRF 2.0 - 47 MHzから6 GHzまでの無線信号を送信または受信できるソフトウェア定義無線周辺機器(全二重)。
- USRP B Series - 70 MHzから6 GHzまでの無線信号を送信または受信できるソフトウェア定義無線周辺機器(全二重)。
RFID NFCツール
- Proxmark 3 RDV4 - 低周波(125kHz)から高周波(13.56MHz)タグまで扱える、強力な汎用RFIDツール。
- ChamaleonMini - NFCセキュリティ分析向けのプログラム可能で携帯できるツール。
- HydraNFC - 読み取り、書き込み、クラック、スニッフィング、エミュレーションを行える強力な13.56MHz RFID / NFCプラットフォーム。
書籍
- 2020, Fotios Chantzis, Evangel Deirme, Ioannis Stais, Paulino Calderon, Beau Woods: Practical IoT Hacking
- 2020, Jasper van Woudenberg, Colin O’Flynn: The Hardware Hacking Handbook: Breaking Embedded Security with Hardware Attacks
- 2019, Yago Hansen: The Hacker’s Hardware Toolkit: The best collection of hardware gadgets for Red Team hackers, Pentesters and security researchers
- 2019, Aditya Gupta: The IoT Hacker’s Handbook: A Practical Guide to Hacking the Internet of Things
- 2018, Mark Swarup Tehranipoor: Hardware Security: A Hands-on Learning Approach
- 2018, Mark Carney: Pentesting Hardware - A Practical Handbook (DRAFT)
- 2018, Qing Yang, Lin Huang Inside Radio: An Attack and Defense Guide
- 2017, Aditya Gupta, Aaron Guzman: IoT Penetration Testing Cookbook
- 2017, Andrew Huang: The Hardware Hacker: Adventures in Making and Breaking Hardware
- 2016, Craig Smith: The Car Hacker’s Handbook: A Guide for the Penetration Tester
- 2015, Keng Tiong Ng: The Art of PCB Reverse Engineering
- 2015, Nitesh Dhanjan: Abusing the Internet of Things: Blackouts, Freakouts, and Stakeouts
- 2015, Joshua Wright , Johnny Cache: Hacking Wireless Exposed
- 2014, Debdeep Mukhopadhyay: Hardware Security: Design, Threats, and Safeguards
- 2014, Jack Ganssle: The Firmware Handbook (Embedded Technology)
- 2013, Andrew Huang: Hacking the XBOX
研究論文
- 2020, Oser et al: SAFER: Development and Evaluation of an IoT Device Risk Assessment Framework in a Multinational Organization
- 2019, Agarwal et al: Detecting IoT Devices and How They Put Large Heterogeneous Networks at Security Risk
- 2019, Almakhdhub et al: BenchIoT: A Security Benchmark for the Internet of Things
- 2019, Alrawi et al: SoK: Security Evaluation of Home-Based IoT Deployments
- 2019, Abbasi et al: Challenges in Designing Exploit Mitigations for Deeply Embedded Systems
- 2019, Song et al: PeriScope: An Effective Probing and Fuzzing Framework for the Hardware-OS Boundary
- 2018, Muench et al: What You Corrupt Is Not What You Crash: Challenges in Fuzzing Embedded Devices
- 2017, O’Meara et al: Embedded Device Vulnerability Analysis Case Study Using Trommel
- 2017, Jacob et al: How to Break Secure Boot on FPGA SoCs through Malicious Hardware
- 2017, Costin et al: Towards Automated Classification of Firmware Images and Identification of Embedded Devices
- 2016, Kammerstetter et al: Embedded Security Testing with Peripheral Device Caching and Runtime Program State Approximation
- 2016, Chen et al: Towards Automated Dynamic Analysis for Linux-based Embedded Firmware
- 2016, Costin et al: Automated Dynamic Firmware Analysis at Scale: A Case Study on Embedded Web Interfaces
- 2015, Shoshitaishvili et al:Firmalice - Automatic Detection of Authentication Bypass Vulnerabilities in Binary Firmware
- 2015, Papp et al: Embedded Systems Security: Threats, Vulnerabilities, and Attack Taxonomy
- 2014, Zaddach et al: Avatar: A Framework to Support Dynamic Security Analysis of Embedded Systems’ Firmwares
- 2014, Alimi et al: Analysis of embedded applications by evolutionary fuzzing
- 2014, Costin et al: A Large-Scale Analysis of the Security of Embedded Firmwares
- 2013, Davidson et al: FIE on Firmware: Finding Vulnerabilities in Embedded Systems using Symbolic Execution
ケーススタディ
- Binary Hardening in IoT products
- Cracking Linksys “Encryption”
- Deadly Sins Of Development - 現実の不適切な実装例を複数紹介するカンファレンス講演 :tv:。
- Dumping firmware from a device’s SPI flash with a buspirate
- Hacking the DSP-W215, Again
- Hacking the PS4 - PS4のセキュリティの入門。
- IoT Security@CERN
- Multiple vulnerabilities found in the D-link DWR-932B
- Pwning the Dlink 850L routers and abusing the MyDlink Cloud protocol
- PWN Xerox Printers (…again)
- Reversing Firmware With Radare
- Reversing the Huawei HG533
無料トレーニング
- CSAW Embedded Security Challenge 2019 - CSAW 2019 Embedded Security Challenge(ESC)。
- Embedded Security CTF - Microcorruptionによる組み込みセキュリティCTF。
- Hardware Hacking 101 - BSides Munich 2019のワークショップ。
- IoTGoat - OpenWrtを基にした、意図的に脆弱なファームウェア。
- Rhme-2015 - 最初のriscure Hack meハードウェアCTFチャレンジ。
- Rhme-2016 - Riscure Hack me 2は低レベルハードウェアCTFチャレンジです。
- Rhme-2017/2018 - Riscure Hack Me 3の組み込みハードウェアCTF 2017-2018。
ウェブサイト
- Hacking Printers Wiki - プリンターに関するあらゆる情報。
- OWASP Embedded Application Security Project - 開発のベストプラクティスとハードウェア・ソフトウェアツールのリスト。
- OWASP Internet of Things Project - IoTの一般的な脆弱性と攻撃対象領域。
- Router Passwords - メーカー別に並べた既定ログイン資格情報のデータベース。
- Siliconpr0n - ICリバースエンジニアリングに関するWiki/アーカイブ。
ブログ
- RTL-SDR
- /dev/ttyS0’s Embedded Device Hacking
- Exploiteers
- Hackaday
- jcjc’s Hack The World
- Quarkslab
- wrong baud
- Firmware Security
- PenTestPartners
- Attify
- Patayu
- GracefulSecurity - Hardware tag
- Black Hills - Hardware Hacking tag
チュートリアルと技術的背景
- Azeria Lab - ARM関連の各種チュートリアル。
- JTAG Explained - 保護されたログインシェルにおけるUARTおよびJTAGのバイパスを解説します。
- Reverse Engineering Serial Ports - PCB上のデバッグパッドの見つけ方を詳しく解説するチュートリアル。
- UART explained - UARTプロトコルの詳細な説明。
YouTubeチャンネル
- Flashback Team - 組み込み機器の脆弱性を発見・悪用する方法を段階的に解説するハッカー二人組。
- StackSmashing - 組み込み機器のリバースエンジニアリングとハードウェアハッキング。
カンファレンス
組み込みおよびIoTセキュリティに焦点を当てたカンファレンスです。
- Hardwear.io
- EU、ハーグ、9月。
- 米国、サンタクララ、6月。
貢献
貢献を歓迎します。まず貢献ガイドラインを読んでください。
ライセンス
法律で可能な限り、Fraunhofer FKIEはこの著作物に関するすべての著作権および関連する権利または隣接権を放棄しています。