Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
openhaystack — 自分だけの「AirTags」🏷を今日から作ろう!Appleの大規模なFind Myネットワークを介して個人用Bluetoothデバイスを追跡するためのフレームワーク。 | Kitploit
ツール/GitHubGitHub/seemoo-lab/openhaystack
Bluetoothセキュリティリバースエンジニアリングワイヤレスセキュリティ暗号化プライバシーハードウェアとIoTセキュリティ論文と研究学習と教育
GitHubseemoo-lab/openhaystack

openhaystack

自分だけの「AirTags」🏷を今日から作ろう!Appleの大規模なFind Myネットワークを介して個人用Bluetoothデバイスを追跡するためのフレームワーク。

リポジトリを見る
13.2k668642ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ウェブサイト

OpenHaystackアプリケーションのアイコン OpenHaystack

OpenHaystackは、Appleの巨大なFind Myネットワークを介して個人のBluetoothデバイスを追跡するためのフレームワークです。これを使用して、物理的な物体(キーホルダー、バックパックなど)に取り付けられる独自の追跡 タグ を作成したり、ノートPCなど他のBluetooth対応デバイスに統合したりできます。

アプリのスクリーンショット

目次

  • OpenHaystack とは?
    • 歴史
    • 免責事項
  • OpenHaystack の使い方
    • システム要件
    • インストール
    • 使用方法
  • AppleのFind Myネットワークはどのように機能するのか?
    • ペアリング
    • 紛失
    • 発見
    • 検索
  • 他のBluetoothデバイスを追跡する方法
  • OpenHaystack Mobile
  • 著者
  • 参考文献
  • ライセンス

OpenHaystack とは?

OpenHaystackは、AppleのFind Myネットワークによって追跡される独自のアクセサリを作成できるアプリケーションです。必要なものはMacとBBC micro:bitまたは他のBluetooth対応デバイスだけです。 このアプリを使用すると、携帯電話の電波が届かない場所でも、世界中どこでもアクセサリを追跡できます。近くのiPhoneがあなたのアクセサリを発見し、ネットワーク接続があるときにその位置をAppleのサーバーにアップロードします。

歴史

OpenHaystackは、Appleの Find Myネットワーク(または オフラインファインディング)のリバースエンジニアリングとセキュリティ分析作業の成果です。TU DarmstadtのSecure Mobile Networking Labの私たちは、2019年6月の最初の発表後にオフラインファインディングの分析を開始しました。この作業を通じて、AppleデバイスがオフラインであってもiPhoneデバイスによってどのように発見されるかを特定しました。システム全体は、Bluetoothアドバタイズメント、公開鍵暗号、および暗号化された位置レポートの中央データベースの巧妙な組み合わせです。私たちはオフラインファインディングの非公開部分の仕様を公開し、包括的なセキュリティとプライバシーの分析を行いました。 私たちは2つの異なる脆弱性を発見しました。最も深刻なものは、悪意のあるアプリケーションが位置データにアクセスできるようにするもので、その後Appleによって修正されました(CVE-2020-9986)。 セキュリティ分析の詳細については、私たちの論文をお読みください。 リリース以来、私たちはかなりのプレスやメディアの報道を受けました。

免責事項

OpenHaystackは実験的なソフトウェアです。コードはテストされておらず、不完全です。例えば、私たちのファームウェアを使用するOpenHaystackアクセサリは固定の公開鍵をブロードキャストするため、近くの他のデバイスによって追跡可能です(これは将来のリリースで変更される可能性があります)。OpenHaystackはApple Inc.とは提携しておらず、承認も受けていません。

OpenHaystack の使い方

OpenHaystackは2つのコンポーネントで構成されています。第一に、個人のBluetoothデバイスの最後に報告された位置を表示できるmacOSアプリケーションを提供しています。第二に、ファームウェアイメージにより、BluetoothデバイスがiPhoneによって発見可能にするビーコンをブロードキャストできるようになります。

システム要件

OpenHaystackにはmacOS 11(Big Sur)が必要です。

インストール

OpenHaystackアプリケーションは、Apple Mail用のカスタムプラグインを必要とします。これは、プライベートAPIを介してAppleのサーバーから位置情報レポートをダウンロードするために使用されます(技術的な説明:このプラグインは、このAPIを使用するために必要なApple Mailのエンタイトルメントを継承します)。 そのため、インストール手順は少し異なり、一時的にGatekeeperを無効にする必要があります。 当社のプラグインは、メールなどの他のプライベートデータには一切アクセスしません(ソースコードを参照)。

  1. GitHubページからコンパイル済みのバイナリリリースをダウンロードします。
    代替方法: Xcodeを介してソースからアプリケーションをビルドします。
  2. OpenHaystackを開きます。~/Library/Mail/BundleにMailプラグインをインストールするよう求められます。
  3. ターミナルを開き、sudo spctl --master-disableを実行します。これによりGatekeeperが無効になり、Apple Mailプラグインを実行できるようになります。
  4. Apple Mailを開きます。環境設定 → 一般 → プラグインを管理... に移動し、OpenHaystackMail.mailbundle の横にあるチェックボックスをオンにします。
    • プラグインを管理... ボタンが表示されない場合は、ターミナルで次のコマンドを実行します sudo defaults write "/Library/Preferences/com.apple.mail" EnableBundles 1
  5. アクセスを許可し、Mailを再起動します。
  6. ターミナルを開き、sudo spctl --master-enableを入力します。これによりGatekeeperが再び有効になります。

使用方法

新しいアクセサリの追加。 新しいアクセサリを作成するには、名前を入力し、必要に応じて適切なアイコンと色を選択するだけです。その後、アプリは位置情報レポートの暗号化と復号に使用される新しい鍵ペアを生成します。秘密鍵はお使いのMacのキーチェーンに保存されます。

デバイスへのデプロイ。 対応デバイスをUSBでMacに接続し、アクセサリ名の横にある_デプロイ_ボタンを押して、該当するものを選択します。 OpenHaystackの統合デプロイ機能を使用する代わりに、アドバタイズに使用する公開鍵をコピー(アクセサリを右クリック)して手動でデプロイすることもできます。

デバイスの位置情報の表示。 右側の地図に最初の位置情報レポートが表示されるまで、最大30分かかる場合があります。地図には常にすべてのアイテムの最新の位置情報が表示されます。各アイテムをクリックすると、最後の更新がいつ受信されたかを確認できます。 再読み込みボタンをクリックすると、位置情報レポートを更新できます。

Appleの「Find My」ネットワークはどのように機能しますか?

Appleのオフライン探索システム(別名Find Myネットワーク)について簡単に説明します。詳細については、当社のPETS論文とAppleのアクセサリ仕様を参照してください。以下に概略図(当社の論文より)を示し、OpenHaystackで各ステップをどのように統合しているかを説明します。

Find Myの概要

ペアリング (1)

AppleのFind Myネットワークを使用するために、楕円曲線(P-224)上で公開鍵と秘密鍵のペアを生成します。秘密鍵はMac上にキーチェーンで安全に保存され、公開鍵はアクセサリ(例:接続されたmicro:bit)にデプロイされます。

紛失 (2)

要するに、アクセサリは公開鍵をBluetooth Low Energy(BLE)アドバタイズとしてブロードキャストします(ファームウェアを参照)。 近くのiPhoneは、当社のアクセサリを本物のAppleデバイスや認定アクセサリと区別することができません。

発見 (3)

近くのiPhoneがBLEアドバタイズを受信すると、iPhoneはGPSを介して現在の位置情報を取得し、アドバタイズからの公開鍵を使用して暗号化し、暗号化されたレポートをAppleのサーバーにアップロードします。 iOS 13以降のすべてのiPhoneは、デフォルトでこれを行います。OpenHaystackはこのステップには関与しません。

検索 (4)

Appleは、どの暗号化された位置情報がどのAppleアカウントやデバイスに属するかを把握していません。そのため、Appleユーザーは誰でも、対応する公開鍵さえ知っていれば任意の位置情報レポートをダウンロードできます。これはセキュリティ上の問題ではありません。すべてのレポートはエンドツーエンドで暗号化されており、対応する秘密鍵(キーチェーンに保存)を知らなければ復号できません。私たちはこの機能を活用して、OpenHaystackアクセサリ用に作成されたレポートをAppleからダウンロードしています。私たちは秘密鍵を使って位置情報レポートを復号し、最新のものを地図上に表示します。

Appleは、位置情報レポートをダウンロードする際に認証済みのAppleユーザーを要求することで、データベースへの任意のアクセスを防いでいます。 私たちは、昇格した権限で動作するApple Mailプラグインを使用して、必要な認証情報にアクセスします。OpenHaystackアプリは、レポートのダウンロード中にプラグインと通信します。そのため、OpenHaystackの使用中はMailを開いたままにしておく必要があります。

他のBluetoothデバイスを追跡するには?

原則として、あらゆるBluetoothデバイスを、Appleの「Find My」ネットワーク経由で追跡可能なOpenHaystackアクセサリに変えることができます。 現在、私たちは少数の組み込みデバイス向けに、OpenHaystackファームウェアの便利なデプロイ方法を提供しています(下の表を参照)。また、汎用HCIスクリプトによるLinuxデバイスのサポートも行っています。 私たちのファームウェアのソースコードと私たちの論文の仕様に基づいて、Bluetooth Low Energyをサポートする他のデバイスへのOpenHaystackの移植をぜひお試しください。結果をぜひ共有してください!

プラットフォームテスト済み環境アプリ経由でデプロイコメント
Nordic nRF51BBC micro:bit v1✓現時点ではnRF51822のみをサポートしています(issue #6を参照)。
Espressif ESP32SP32-WROOM、ESP32-WROVER✓デプロイには最大3分かかる場合があります。Python 3が必要です。@fhesselに感謝します。
Linux HCIRaspberry Pi 4 w/ RaspbianあらゆるLinuxマシンをサポートするはずです。

セットアップ

OpenHaystack Mobile

OpenHaystack Mobileは、OpenHaystack macOSアプリケーションをスマートフォン向けに完全に再実装したものです。このアプリはアクセサリを作成・追跡するための同じ機能を提供し、特に新しいユーザーにとっての使いやすさを向上させることを目指しています。macOSアプリケーションとは異なり、位置情報レポートをスマートフォン上で直接取得することはできないため、このアプリはFind MyネットワークにアクセスするためにMacハードウェア上でホストされるプロキシサーバーを必要とします。プロキシサーバーには、複数のユーザーが同時にネットワーク経由でアクセスできます。

プロキシサーバーに接続するには、以下で正しいURLを設定してください: openhaystack-mobile/lib/findMy/reports_fetcher.dart

OpenHaystack Mobileは、クロスプラットフォームのFlutterフレームワークで構築されており、現在AndroidとiOSで動作します。アプリの詳細情報と使用方法については、このリポジトリのopenhaystack-mobileフォルダを参照してください。

著者

ツールをダウンロード