見出し画像

🐬フリッパーゼロは悪用され危険?



フリッパー・ゼロは、アクセス・コントロール・システムとのインタラクションのために開発された、ポータブルなたまごっちのような多機能デバイスである。 このデバイスは、RFIDやNFCタグ、無線リモコン、iButton、デジタル・アクセス・キーの読み取り、コピー、エミュレートが可能で、GPIOインターフェースも備えている。このデバイスのユーザーインターフェースは、ピクセルアートのイルカのバーチャルペットを具現化している。バーチャルペットとのインタラクションは、このデバイスの中核となるゲームメカニクスである。デバイスの機能の使い方は、ペットの外見と感情を定義する。

内蔵ゲームでは、イルカを「アップグレード」する主なメカニズムは、さまざまなハッキングツールを使用することです。無害な用途(テレビのリモコンや二酸化炭素センサーなど)も存在するが、内蔵ツールの中には、RFIDスキミング、ブルートゥース・スパミング(ブルートゥース接続を妨害し、相手の携帯電話をクラッシュさせる)、IDバッジに見られるようなRFIDチップのエミュレーション、内蔵ラジオ・クローナーを使ってガレージのドアを開ける、車のロックを解除する、ワイヤレスBadUSBとして機能するなど、犯罪に使われる可能性のあるものもある。このデバイスはAmazon.comから削除された。

CC BY-SA 4.0 File:Flipper Zero.jpg Created: 27 May 2022 Uploaded: 27 May 2022

フリッパー・ゼロは、さまざまなタイプのアクセス・コントロール・システム、無線プロトコル、RFID、近距離無線通信(NFC)、赤外線信号との相互作用のために設計されている。このデバイスを操作するために、コンピューターやスマートフォンを持つ必要はなく、5ポジションのDパッドと独立したバックボタンで操作できる。フリッパー・ゼロには、解像度128x64ピクセルのモノクロオレンジバックライトLCDスクリーンが搭載されている。外部モジュールとの接続用に、上面に汎用入出力(GPIO)ピンホールがある。ユーザー・データとファームウェア・アップデートはマイクロSDカードに保存されます。ファームウェアやユーザーデータの更新など、一部の操作には、開発者向けソフトウェアがインストールされたコンピューターやスマートフォンへの接続が必要である。

フリッパー・ゼロは、デュアルコアのARMアーキテクチャSTM32WB55マイクロコントローラーをベースにしており、256KbのRAMと1MBのフラッシュストレージを搭載している。最初のコアは64MHzのCortex-M4で、メイン・ファームウェアを実行する。2番目のコアは32 MHzのCortex-M0で、Bluetooth Low Energyプロトコルを実装するSTマイクロエレクトロニクス独自のファームウェアを実行します。300~900MHzの無線周波数帯域での無線送受信には、テキサス・インスツルメンツのCC1101[12]チップが使用されており、振幅シフト・キーイング(ASK)と周波数シフト・キーイング(FSK)の変調をサポートしている。ソフトウェア無線とは異なり、CC1101チップは生の無線信号をキャプチャできない。この制限のため、無線信号を受信する前に変調パラメータを事前に設定する必要がある。

Flipper Zeroには、CVE-2022-40363という脆弱性が報告されています。

これは、NFCのコンポーネント「nfc_device_load_mifare_ul_data」におけるバッファオーバーフローの問題です。この脆弱性により、特定のNFCファイルを使用して攻撃者がサービス拒否(DoS)を引き起こす可能性があります。この問題は、ファームウェアバージョン0.65.2以降で修正されています。

M5Stackは、フリッパー・ゼロにかなり近いデバイスと言えますが、主にマイクロコントローラーベースのIoT開発ボードとしての役割が強いです。以下に、M5Stackとフリッパー・ゼロを比較し、M5Stackの開発言語について説明します。


1. ハードウェアの類似点と違い

プロセッサ

  • M5Stack(代表例: Core2)

    • ESP32(デュアルコア、240MHz)を搭載。Wi-FiやBluetooth通信機能を標準装備。

    • ESP32は、STM32WB55と同様にIoTデバイス向けのマイコンですが、Wi-Fi通信の強さが特徴です。

  • フリッパー・ゼロ

    • STM32WB55(ARM Cortex-M4)を搭載し、BLE、NFC、赤外線通信に特化。

    • Wi-Fiはオプションモジュールを追加する必要があります。

違い:
M5StackはESP32の高いWi-Fi性能を活かしてネットワーク連携がしやすい一方、フリッパー・ゼロは通信機能が限定されている代わりにセキュリティやガジェット的用途に優れています。


ディスプレイ

  • M5Stack:

    • フルカラーのTFT液晶ディスプレイを搭載(通常2インチ程度)。

  • フリッパー・ゼロ:

    • シンプルなモノクロ液晶ディスプレイを搭載。

違い:
M5Stackのディスプレイはリッチな表示に向いており、UIを活用したプロジェクトに適しています。一方、フリッパー・ゼロのディスプレイは省電力設計。


拡張性

  • M5Stack:

    • モジュール式設計で、センサーや通信モジュール(LoRa、GPS、カメラなど)を積み重ねる形で追加可能。

    • GPIOピンを利用した拡張も簡単。

  • フリッパー・ゼロ:

    • 内蔵機能は固定されており、Wi-Fiなど一部の拡張はオプションモジュールで対応。

違い:
M5Stackは拡張性が高く、プロトタイピングに向いています。


2. 開発言語

M5Stackの開発言語

M5StackはESP32を基盤としており、以下の言語で開発可能です:

  1. MicroPython

    • ESP32で動作するPythonベースのスクリプト言語。

    • IoTデバイス制御やセンサー読み取りが簡単に記述可能。

  2. Arduino IDE(C/C++)

    • Arduinoライブラリを使って開発する、公式の推奨方法。

    • 大量のサンプルコードとチュートリアルが存在。

  3. PlatformIO

    • VS Code統合型の開発環境。

    • Arduinoベースや他のフレームワークを利用して高度なプロジェクトを構築可能。

  4. UIFlow(Blocklyベースのビジュアルプログラミング)

    • M5Stack独自のツール。初心者向けで、ドラッグ&ドロップで簡単にコードを生成できる。

フリッパー・ゼロの開発言語

  1. MicroPython

    • フリッパー・ゼロにもMicroPythonが搭載されており、スクリプトで簡単にカスタマイズ可能。

  2. C

    • ファームウェアの開発やカスタマイズにはC言語を使用。

    • 専用のSDKとビルド環境が提供されている。

比較:

  • M5Stackの方がMicroPythonやビジュアルプログラミング(UIFlow)など多様な選択肢を提供しており、開発初心者に優しいです。

  • フリッパー・ゼロはPythonまたはCを使用し、ハードウェア制御やカスタムファームウェアを重視する開発者向け。


3. 用途の違い

M5Stack

  • IoTデバイスプロトタイピング

  • 教育や趣味のプロジェクト

  • ネットワーク連携(Wi-Fiを活用)

フリッパー・ゼロ

  • セキュリティ研究

  • 他のIoTデバイスやガジェットとの相互作用

  • 単体でのツールとしての利用(特にハッキング用途)



いいなと思ったら応援しよう!

あたり帳簿
お願い致します