OpenHayStack adalah kerangka kerja untuk melacak perangkat Bluetooth pribadi melalui Apple's MASSIVE Find My Network. Gunakan untuk membuat tag pelacakan Anda sendiri yang dapat Anda tambahkan ke objek fisik (keyring, ransel, ...) atau mengintegrasikannya ke dalam perangkat berkemampuan Bluetooth lainnya seperti notebook.

OpenHayStack adalah aplikasi yang memungkinkan Anda membuat aksesori Anda sendiri yang dilacak oleh Apple Find My Network. Yang Anda butuhkan hanyalah Mac dan BBC Micro: Bit atau perangkat yang mampu Bluetooth lainnya. Dengan menggunakan aplikasi ini, Anda dapat melacak aksesori Anda di mana saja di bumi tanpa cakupan seluler. IPhone terdekat akan menemukan aksesori Anda dan mengunggah lokasi mereka ke server Apple ketika mereka memiliki koneksi jaringan.
OpenHayStack adalah hasil dari pekerjaan analisis reverse-engineering dan keamanan dari Apple Find My Network (atau Offline Find ). Kami di lab jaringan seluler yang aman dari TU Darmstadt mulai menganalisis temuan offline setelah pengumuman awal pada Juni 2019. Kami mengidentifikasi bagaimana perangkat Apple dapat ditemukan oleh perangkat iPhone, bahkan ketika mereka offline melalui pekerjaan ini. Seluruh sistem adalah kombinasi cerdas dari iklan Bluetooth, kriptografi kunci publik, dan database sentral dari laporan lokasi terenkripsi. Kami mengungkapkan spesifikasi bagian tertutup dari penemuan offline dan melakukan analisis keamanan dan privasi yang komprehensif. Kami menemukan dua kerentanan yang berbeda. Yang paling parah, yang memungkinkan aplikasi jahat untuk mengakses data lokasi, sementara itu telah diperbaiki oleh Apple (CVE-2020-9986). Untuk informasi lebih lanjut tentang analisis keamanan, silakan baca makalah kami. Sejak dirilis, kami menerima sedikit pers dan liputan media.
OpenHayStack adalah perangkat lunak eksperimental. Kode tidak teruji dan tidak lengkap. Misalnya, aksesori OpenHayStack menggunakan firmware kami menyiarkan kunci publik tetap dan, oleh karena itu, dapat dilacak oleh perangkat lain di dekatnya (ini mungkin berubah dalam rilis mendatang). OpenHayStack tidak berafiliasi dengan atau didukung oleh Apple Inc.
OpenHayStack terdiri dari dua komponen. Pertama, kami menyediakan aplikasi MacOS yang dapat menampilkan lokasi terakhir yang dilaporkan dari perangkat Bluetooth pribadi Anda. Kedua, gambar firmware memungkinkan perangkat Bluetooth untuk menyiarkan suar yang membuatnya dapat ditemukan oleh iPhone.
OpenHayStack membutuhkan MacOS 11 (Big Sur).
Aplikasi OpenHayStack memerlukan plugin khusus untuk Apple Mail. Ini digunakan untuk mengunduh laporan lokasi dari server Apple melalui API pribadi (Penjelasan Teknis: Plugin mewarisi hak Apple Mail yang diperlukan untuk menggunakan API ini). Oleh karena itu, prosedur pemasangan sedikit berbeda dan mengharuskan Anda untuk menonaktifkan penjaga gerbang untuk sementara waktu. Plugin kami tidak mengakses data pribadi lainnya seperti email (lihat kode sumber).
~/Library/Mail/Bundle .sudo spctl --master-disable , yang akan menonaktifkan penjaga gerbang dan memungkinkan plugin Apple Mail kami berjalan.sudo defaults write "/Library/Preferences/com.apple.mail" EnableBundles 1sudo spctl --master-enable , yang akan memungkinkan penjaga gerbang lagi.Menambahkan aksesori baru. Untuk membuat aksesori baru, Anda hanya perlu memasukkan nama untuk itu dan secara opsional memilih ikon dan warna yang sesuai. Aplikasi ini kemudian menghasilkan pasangan kunci baru yang digunakan untuk mengenkripsi dan mendekripsi laporan lokasi. Kunci pribadi disimpan di gantungan kunci Mac Anda.
Digerikan ke perangkat. Hubungkan perangkat yang didukung melalui USB ke Mac Anda dan tekan tombol Deploy di sebelah nama aksesori dan pilih yang sesuai. Alih -alih menggunakan penyebaran terintegrasi OpenHayStack, Anda juga dapat menyalin kunci publik yang digunakan untuk iklan (klik kanan pada aksesori) dan menggunakannya secara manual.
Lokasi perangkat tampilan. Ini bisa memakan waktu hingga 30 menit sampai Anda akan melihat laporan lokasi pertama di peta di sisi kanan. Peta akan selalu menampilkan semua lokasi terbaru item Anda. Anda dapat mengklik setiap item untuk memeriksa kapan pembaruan terakhir diterima. Dengan mengklik tombol Reload, Anda dapat memperbarui laporan lokasi.
Kami menjelaskan secara singkat sistem pencarian offline Apple (alias Find My Network ). Silakan merujuk ke kertas hewan peliharaan kami dan spesifikasi aksesori Apple untuk lebih jelasnya. Kami memberikan gambaran skematis (dari makalah kami) dan menjelaskan bagaimana kami mengintegrasikan berbagai langkah di OpenHayStack di bawah ini.

Untuk menggunakan Apple Find My Network, kami menghasilkan pasangan kunci publik-swasta pada kurva elips (P-224). Kunci pribadi tetap pada Mac disimpan dengan aman di gantungan kunci, dan kunci publik digunakan pada aksesori, misalnya, bit mikro yang terpasang.
Singkatnya, aksesori menyiarkan kunci publik sebagai iklan Bluetooth Low Energy (BLE) (lihat firmware). IPhone terdekat tidak akan dapat membedakan aksesori kami dari perangkat Apple asli atau aksesori bersertifikat.
Ketika iPhone terdekat menerima iklan BLE, iPhone mengambil lokasi saat ini melalui GPS, mengenkripsi itu menggunakan kunci publik dari iklan, dan mengunggah laporan terenkripsi ke server Apple. Semua iPhone di iOS 13 atau yang lebih baru melakukan ini secara default. OpenHayStack tidak terlibat dalam langkah ini.
Apple tidak tahu lokasi terenkripsi mana yang termasuk dalam akun atau perangkat Apple. Oleh karena itu, setiap pengguna Apple dapat mengunduh laporan lokasi apa pun selama mereka tahu kunci publik yang sesuai. Ini bukan masalah keamanan: semua laporan dienkripsi ujung ke ujung dan tidak dapat didekripsi kecuali orang tahu kunci pribadi yang sesuai (disimpan di gantungan kunci). Kami memanfaatkan fitur ini untuk mengunduh laporan dari Apple yang telah dibuat untuk aksesori OpenHayStack kami. Kami menggunakan kunci pribadi kami untuk mendekripsi laporan lokasi dan menunjukkan yang terbaru di peta.
Apple melindungi basis data mereka dari akses sewenang -wenang dengan mewajibkan pengguna Apple yang diautentikasi untuk mengunduh laporan lokasi. Kami menggunakan plugin Apple Mail kami, yang berjalan dengan hak istimewa yang ditinggikan, untuk mengakses informasi otentikasi yang diperlukan. Aplikasi OpenHayStack berkomunikasi dengan plugin saat mengunduh laporan. Inilah sebabnya mengapa Anda harus membuka surat saat menggunakan OpenHayStack.
Pada prinsipnya, perangkat Bluetooth apa pun dapat diubah menjadi aksesori OpenHayStack yang dapat dilacak melalui Apple Find My Network. Saat ini, kami menyediakan metode penyebaran yang nyaman dari perusahaan openHayStack kami untuk sejumlah kecil perangkat tertanam (lihat tabel di bawah). Kami juga mendukung perangkat Linux melalui skrip HCI generik kami. Jangan ragu untuk port OpenHayStack ke perangkat lain yang mendukung Bluetooth Low Energy berdasarkan kode sumber firmware kami dan spesifikasi dalam makalah kami. Silakan bagikan hasil Anda dengan kami!
| Platform | Diuji pada | Digunakan melalui aplikasi | Komentar |
|---|---|---|---|
| Nordic NRF51 | BBC Micro: Bit V1 | ✓ | Hanya mendukung NRF51822 saat ini (lihat Edisi #6). |
| Espressif ESP32 | SP32-WOOM, ESP32-WROVER | ✓ | Penempatan bisa memakan waktu hingga 3 menit. Membutuhkan Python 3. Terima kasih @fhessel . |
| Linux HCI | Raspberry pi 4 w/ raspbian | Harus mendukung mesin Linux. |

OpenHayStack Mobile adalah penerimaan ulang lengkap dari aplikasi MacOS OpenHayStack untuk smartphone. Aplikasi ini menyediakan fungsionalitas yang sama untuk membuat dan melacak aksesori dan bertujuan untuk meningkatkan kegunaan, terutama untuk pengguna baru. Berbeda dengan aplikasi MacOS, laporan lokasi tidak dapat diambil langsung pada smartphone, sehingga aplikasi memerlukan server proxy yang di -host di perangkat keras Mac untuk mengakses jaringan Find My. Server proxy dapat diakses melalui jaringan oleh banyak pengguna secara bersamaan.
Untuk terhubung ke server proxy Anda, atur URL yang benar di: OpenHayStack-Mobile/Lib/FindMy/Reports_Fetcher.dart


OpenHayStack Mobile dibangun dengan kerangka kerja flutter lintas platform dan saat ini berjalan di Android dan iOS. Informasi lebih lanjut tentang aplikasi dan instruksi penggunaan dapat ditemukan di folder OpenHayStack-Mobile dari repositori ini.
OpenHayStack dilisensikan di bawah GNU Affero General Public License v3.0 .