プロックスマーク3

プロックスマーク3
Proxmark3の最初のバージョンは、もともとJonathan Westhuesによって設計されました。
発明日2007
FPGA
  • ザイリンクス スパルタンII
プロセッサアトメル AT91SAM7S64
メモリ64 KB フラッシュ

Proxmark3は、無線周波数識別(RFID)のセキュリティ分析、研究開発のための多目的ハードウェアツールです。高周波(13.56MHz)と低周波(125/134kHz)の両方の近接型カードをサポートし、ほとんどのRFIDプロトコルの読み取り、エミュレーション、ファジングブルートフォース攻撃を可能にします。 [ 1 ]

元々はジョナサン・ウェストヒューズによって開発され、オープンソースハードウェアとして公開されましたが、後に開発者コミュニティによって採用され、ハードウェアとソフトウェアの両方においてオリジナルバージョンと比較して大幅に改良されました。Proxmark3は、RFIDアクセス制御システムを研究するセキュリティ研究者の大規模なコミュニティを集め、彼らは独自の研究に使用しながらプロジェクトを拡張・維持しています。[ 2 ]オリジナルのProxmark3ハードウェアプラットフォームは、商用バージョンを含む新しいデバイスバージョンの基盤となりました。[ 1 ]

技術仕様

Proxmark3は、フィールドプログラマブルゲートアレイ(FPGA)技術をベースとしており、高性能な低レベルアナログ信号処理、変調、復調を実現します。復調されたフレームは別のマイクロコントローラで処理されます。この構成により、Proxmark3のソフトウェアにあらゆるRFIDプロトコルを実装することが可能になります。

Proxmark3 ハードウェアブロック

アンテナ

低周波(LF)125kHzと134kHz、高周波(HF)13.56MHz用に、独立した2つのアンテナ回路が採用されています。当初は、両方のアンテナは共通のヒロセ製4ピンUSBコネクタで接続されていましたが、接続が不安定な場合がありました。その後の改良により、アンテナごとに別々のコネクタを使用するようになりました。

ADC

8 ビットのアナログ - デジタル コンバータ(ADC) は、アンテナ回路からアナログ信号を受信し、それをデジタル化して FPGA にデジタル信号を出力します。

FPGA

フィールドプログラマブルゲートアレイは、CPUからデータを送信する際の低レベル変調と、ADCからの信号を受信する際の復調の両方を行います。オンオフ変調(OOK)、振幅偏移変調(ASK)など、様々な変調を処理できます。FPGAは、カード用の電磁場を生成するリーダーとして、またはリーダーフィールドを待機するカードとして動作します。

CPU

ARMマイクロコントローラはプロトコル部分を担当します。フレーム(マンチェスターミラーなど)のエンコードとデコード、そしてより高度な機能を実行します。CPUは信号処理後にFPGAに応答を返すことで、トランスポート層を実装します。CPUはまた、PCクライアントアプリケーションとのUSB通信も管理します。[ 3 ]

フラッシュメモリ

フラッシュメモリはファームウェアの保存に使用されます。Proxmark3の初期バージョンでは64KBのフラッシュメモリしか搭載されていませんでしたが[ 4 ]、ファームウェアの開発が進むにつれてメモリ容量が不足し、512KBのバージョンが登場しました[ 5 ] 。

ファームウェア自体は、ARMコードとFPGAイメージ(ARMによってロードされる)で構成されています。FPGAは、SPIポート(ARMがマスター)または汎用SSPを介してARMと通信します。SPIはFPGAの設定に使用され、SSPは無線で送信されるデータに使用されます。[ 6 ]

ソフトウェア

Proxmark3が開発された当時、SDRはアクセスが困難な技術でした。そのため、FPGAMCUを分割したアーキテクチャが設計されました。FPGAは変調/復調などの低レベル機能を処理し、マイクロコントローラは高レベル機能(コマンドラインインターフェイス、プロトコルエンコード/デコードなど)を処理します。FPGA / MCUアーキテクチャは技術的には時代遅れですが、ハードウェアリビジョンを通じて変更されていませんでした。これにより、異なるバージョンで同じファームウェアを使用でき、コードベースが大きくなりました。しかし、時間の経過とともにProxmark3のコードベースはますます断片化され、ハードウェアの不安定性が現れ始めました。その結果、一部の実装ではコードを改良して最適化し(例:Proxmark3 RDV4)、他の実装では元のProxmark3コードベースを使用しています(例:Proxmark3 EVO)。[ 5 ]

Proxmark3 RDV4の一般的なコマンド

Proxmark3 ソフトウェアは 3 つの部分に分かれています。

  • PCクライアント(アプリケーション層) – Proxmark3の機能を呼び出すPCアプリケーション。データの表示、信号の分析、Proxmark3の管理に使用されます。その後、Proxmark3の新しいバージョンでは、モバイルアプリを使用してBluetooth接続されたデバイスを制御できるようになりました。
  • CPUファームウェア(トランスポート層) –プロトコルメッセージ、フォーマット、キューを管理するARMファームウェア。CLIツールも提供します
  • FPGAファームウェア(物理層) - Xilinx Spartan IIファームウェアは、 DSP (信号の変調/復調)を担当します。
Proxmark3クライアントアプリケーションはデータサンプルをプロットします

以前のファームウェアでは、クライアントとProxmark3の接続にUSB HIDプロトコルが使用されていました。受信したサンプルをPCにリアルタイムでストリーミングすることは不可能でした。CPUはクライアントからのコマンドを受信し、それを実行し、結果をメモリバッファに保存していました。クライアントは、CPUにバッファされたデータを取得するために、新しいコマンドを送信する必要がありました。[ 7 ]新しいファームウェアバージョンでは、クライアントとの通信にCDCシリアルインターフェースが使用されています。 [ 2 ]

信号サンプルは PC クライアントによって処理され、受信したデータをプロットして未知の信号の分析に役立てることができます。

コミュニティ

2007年のProxmark3のリリース以来、多くのRFID愛好家がその機能を拡張してきました。ISO/IEC 14443-A規格をサポートするファームウェアのリリースと、 Mifare Classicへの攻撃が成功した事例の出現以降、Proxmark3コミュニティは急速に成長しました。 Proxmark3フォーラム(登録が必要)は、電子アクセス制御(EAC)システムに重点を置くセキュリティ研究者が頻繁に訪れる、RFIDシステムの脆弱性に関する議論の主要なハブの1つになりました。 Proxmarkコミュニティには、LibNFCなど、他のRFID研究ツールの開発者もいます。[ 8 ]その後、EACシステムのセキュリティに関するトピックに関するテキストと音声の両方の議論をホストするために、コミュニティのDiscordサーバーが作成されました。 2021年末の時点で約3000人のメンバーがいました。

研究ではProxmark3が使用された

Mifare Classic カードの攻撃:

  • ダークサイド攻撃(ナイメーヘン/オークランドグループ、2009年)– カードの任意のセクターから少なくとも1つのキーを復元する。すべてのカードで有効だが、時間がかかる。libnfcスタックのmfoc(Mifareオフラインクラッカー)ツールを使用。
  • ネスト攻撃(ニコラス・T・クルトワ、2009年) – 1つのセクターが既知の鍵で暗号化されている場合、他のセクターは短時間で解読可能です。この攻撃の改良版であるハードネスト攻撃もあります。libnfcスタックのmfcuk(Mifare Classicユニバーサルツールキット)ツールを使用します。[ 9 ]

Mifare Classic 用紙:

  • MIFARE Classicへの実践的な攻撃[ 10 ]

Mifare DESFire用紙:

HID iClass 論文:

  • 闇の奥地 – HID iCLASSセキュリティの未知の奥地を探る[ 12 ]

ヒタグ紙:

  • 360秒で消える:Hitag2によるハイジャック[ 13 ]

メガモス紙:

  • Megamos Cryptoの解体:車両イモビライザーのワイヤレスロックピッキング[ 14 ]

NFCペーパー:

  • NFC対応携帯電話に対する実践的な攻撃[ 15 ]

参考文献

  1. ^ a b Chantzis, Fotios (2021). 『実践的IoTハッキング:モノのインターネット攻撃の決定版ガイド』 Ioannis Stais, Paulino Calderon, Evangelos Deirmentzoglou, Beau Woods. サンフランシスコ. ISBN 978-1-7185-0091-4. OCLC  1178868866 .{{cite book}}: CS1 メンテナンス: 場所の発行元が見つかりません (リンク)
  2. ^ a b Yang, Qing (2018). 『ラジオの内側:攻撃と防御ガイド』 Lin Huang. シンガポール. ISBN 978-981-10-8447-8. OCLC  1029352620 .{{cite book}}: CS1 メンテナンス: 場所の発行元が見つかりません (リンク)
  3. ^クレパルディ、パウロ、ピメンタ、テイルズ(2017年11月29日)。無線周波数識別( RFID )。BoD – Books on Demand。ISBN 978-953-51-3629-3
  4. ^ 「HF/LF RFID用テスト機器」 cq.cx. 2021年9月15閲覧
  5. ^ a b "Proxmark 3 | Proxmark" . proxmark.com . 2021年9月15日閲覧
  6. ^ 「ハードウェアの説明 · Proxmark/proxmark3 Wiki」 . GitHub . 2021年9月15日閲覧。
  7. ^ R., Garcia, FD Koning Gans, GT de Verdult (2012).チュートリアル: Proxmark, the Swiss Army Knife for RFID Security Research: Tutorial at 8th Workshop on RFID Security and Privacy (RFIDSec 2012) . Nijmegen: Radboud University Nijmegen, ICIS. OCLC 1247335104 . {{cite book}}: CS1 maint: 複数の名前: 著者リスト (リンク)
  8. ^ Koning Gans, Gerhard de (2013). Outsmarting smart cards . [Sl: sn] ISBN 978-94-6191-675-4. OCLC  830879913 .
  9. ^ Courtois, Nicolas (2009). 「MiFare Classicへのカードのみによる攻撃、またはオイスターカードを盗んで世界中の建物に侵入する方法」(PDF) . UCL Discovery . 2021年9月16日閲覧
  10. ^ de Koning Gans, Gerhard; Hoepman, Jaap-Henk; Garcia, Flavio D. (2008)、「MIFARE Classicへの実践的攻撃」、スマートカード研究と高度なアプリケーション、コンピュータサイエンスの講義ノート、vol. 5189、ベルリン、ハイデルベルク:Springer Berlin Heidelberg、pp.  267– 282、arXiv0803.2285doi10.1007/978-3-540-85893-5_20ISBN 978-3-540-85892-8S2CID  1280839{{citation}}: CS1 maint: ISBNによる作業パラメータ(リンク
  11. ^フリン、ロリー. 「公共交通機関で使用されているMIFARE DESFire EV1スマートカードへの攻撃の可能性に関する調査」(PDF) . 2021年9月16日閲覧
  12. ^ 「Heart of Darkness - HID iCLASSセキュリティの未知の奥地を探る」(PDF) 2021年9月16日閲覧。
  13. ^ロエル・ヴェルダルト;ガルシア、フラビオ。ジョセップ・バラシュ (2012)。360 秒で消滅: Hitag2 によるハイジャック。 [Sl] : USENIX アソシエーション。OCLC 1247338434 
  14. ^ Verdult, Roel; Garcia, Flavio; Ege, Baris. 「Megamos Cryptoの解体:車両イモビライザーのワイヤレス解錠」(PDF)2015年9月10日時点のオリジナルよりアーカイブ(PDF) 。 2023年2月4日閲覧
  15. ^ Verdult, Roel; Kooman, Francois (2011年2月). 「NFC対応携帯電話に対する実践的な攻撃」. 2011年第3回近距離無線通信国際ワークショップ. pp.  77– 82. doi : 10.1109/NFC.2011.16 . hdl : 2066/92208 . ISBN 978-1-61284-176-2. S2CID  16296134 .