FindMy Flipper - AirTag ve SmartTag emülatörü
(github.com/MatthewKuKanich)- FindMy Flipper, FlipperZero'nun Bluetooth özelliklerini genişleterek Apple AirTag, Samsung SmartTag ve Tile Tracker gibi çalışmasını sağlayan bir uygulamadır
- FlipperZero'nun BLE beacon özelliğiyle SmartTag sinyallerini yayınlar; mevcut etiketleri klonlayabilir veya OpenHaystack anahtar çiftleri oluşturarak Apple FindMy ağıyla entegre olabilir
- Mevcut etiket klonlama yöntemi, AirTag, Samsung SmartTag ve Tile Tracker'ın MAC adresi ve payload verilerini alıp yerel uygulamalarla izlemeyi mümkün kılar; ancak AirTag'e pil yeniden takılırsa anahtar dönebilir ve Flipper'ın mevcut anahtarı geçersiz hale gelebilir
- AirTag anahtarı oluşturma yöntemi, gerçek bir AirTag veya Apple cihazı olmadan da kullanılabilir; ancak Docker Desktop, Python ve Git gerekir, ayrıca konum verisi almak için bir bilgisayar ve Apple ID kimlik doğrulaması kullanır
- Uygulama arka planda çalışmayı ve beacon aralığıyla iletim gücü ayarını destekler; kullanıcılar izleme cihazlarıyla ilgili gizlilik mevzuatına ve orijinal cihaz sahipliğine saygı göstermelidir
FlipperZero'yu bir takip etiketi gibi kullanan uygulama
- FindMy Flipper, FlipperZero'nun Apple AirTag, Samsung SmartTag ve Tile Tracker'ı emüle etmesini sağlayan bir uygulamadır
- FlipperZero'nun BLE beacon özelliğini kullanarak FindMy Network tarafından algılanabilecek SmartTag sinyalleri yayınlar
- Hedeflenen işlevler şunlardır
- Mevcut Apple AirTag, Samsung SmartTag ve Tile Tracker cihazlarını FlipperZero'ya klonlamak
- Gerçek bir AirTag olmadan FindMy ağı için OpenHaystack anahtar çifti oluşturmak
- FlipperZero'nun konumunu sürekli izlemek
Başlıca özellikler
-
Etiket emülasyonu
- Mevcut etiketlerin MAC adresi ve payload verileri klonlanabilir
- Gerçek bir AirTag sahibi olmadan da FindMy ağı için anahtar çifti oluşturulabilir
-
Kullanıcı ayarları
- Beacon yayın aralığı ayarlanabilir
- Görünürlük ve pil ömrü arasında denge kurmak için iletim gücü değiştirilebilir
-
Arka plan çalışması
- Uygulama arka planda çalışacak şekilde optimize edilmiştir
- FlipperZero'nun normal kullanımını durdurmadan, düşük pil tüketimiyle izlemeyi sürdürmek için tasarlanmıştır
Kurulum yöntemi
- Kurulum iki şekilde yapılabilir
- Cihaza uygun release/önceden derlenmiş FAP firmware kullanmak
- Firmware'i doğrudan
fbt/ufbtile derlemek
- Şu anda tüm firmware'ler, simgeler dahil, main branch üzerinde çalışmalıdır
SmartTag verisini edinme yöntemi
- Etiket emülasyonu verisini elde etmenin iki yolu vardır
-
Seçenek A: Mevcut etiketi klonlama
- Seçenek B: AirTag anahtarı oluşturma
-
-
Seçenek A: Mevcut etiketi klonlama
- Mevcut etiketi klonlama tercih edilen yöntemdir ve ek yapılandırma olmadan izleme yapılmasını sağlar
- Apple, Samsung ve Tile etiketleri, gerçek etiketin MAC adresi ve payload verileri klonlanarak kullanılabilir
- Bu yöntem, Apple FindMy, Samsung SmartThing ve Tile App gibi yerel uygulamalar üzerinden izlemeyi mümkün kılar
- Temel prosedür şöyledir
- Önce AirTag, Samsung SmartTag veya Tile Tracker'ı bir cihazla eşleştirin
- Kayıtlı cihazdan etiketi yaklaşık 15 dakika uzaklaştırarak Lost moduna geçmesini sağlayın
- Android'de nrfConnect veya ESP32 kullanın
- nrfConnect'te Apple sürümü gerekli Raw veriyi göstermediği için Android sürümünün kullanılması önerilir
- ESP32-WROOM veya ESP32-S3 kullanılırsa Android olmadan da gerekli veriler alınabilir
- İlgili araç olarak ESP32-AirTag-Scanner kullanılabilir
- Tarama prosedürü, filtrede etiket markası dışındaki öğeleri hariç tutmayı, RSSI değerini -40 dBm olarak ayarlamayı ve SmartTag "FindMy" cihazı olarak görünene kadar beklemeyi içerir
- Payload ve MAC adresi yakalanır yakalanmaz etiketin pili çıkarılmalıdır
- AirTag'e pil tekrar takılırsa anahtar Apple sunucularında dönebilir
- Anahtar dönerse Flipper'daki mevcut anahtar geçersiz olur
- Flipper'da kullanmaya devam etmek için AirTag kapalı tutulmalı veya pili çıkarılmış olmalıdır
- AirTag ve Flipper aynı anda kullanılamaz; gerekirse işlem tekrarlanarak Flipper işlevi geri yüklenebilir
- Yakalanan payload ve MAC Address değerleri FlipperZero uygulamasına girilir
-
Seçenek B: AirTag anahtarı oluşturma
- AirTag anahtarı oluşturma, Apple cihazı veya AirTag olmadan AirTag emüle etme yöntemidir
- Bu yöntem anahtar üretimine dayanır ve konum verisini indirmek için bir bilgisayar gerekir
- Gerekli bileşenler şunlardır
- Docker Desktop
- Python
- Git
- Depoyu klonladıktan sonra
AirTagGenerationklasöründe çalışılır
git clone https://github.com/MatthewKuKanich/FindMyFlipper.git cd AirTagGeneration- Docker Desktop'ı başlattıktan sonra şu komutla sunucu kurulur
docker run -d --restart always --name anisette-v3 -p 6969:6969 dadoum/anisette-v3-server:latest- Bu sunucu, Apple kimlik doğrulama sunucularını kandıran bir ortamı emüle eder
- Python sanal ortamı oluşturulup etkinleştirildikten sonra bağımlılıklar kurulur
python3 -m venv venv pip3 install -r requirements.txtgenerate_keys.py, AirTag için gerekli anahtarları üretir ve bunları yeni birkeysklasörüne kaydeder- Oluşturulan
.keysdosyası FlipperZero'ya aktarılıp uygulama içinden içe aktarılabilir - Uygulamanın config menüsünde "register tag" seçilir
- Etiket türü seçilir
.keysveya.txtdosyası içe aktarılır ya da manuel giriş yapılır- Manuel girişte önce MAC ardından payload girilir
- Kaydet'e basılarak kayıt tamamlanır
request_reports.py, Apple ID ve parola kimlik doğrulamasıyla gerçek zamanlı konum verisi ister- Apple giriş bilgileri auth dosyasına kaydedilir, böylece sonrasında yeniden girilmesi gerekmez
RequestReport&Map.py, son 24 saatin konum verisini etkileşimli bir haritada gösterirkeysklasöründeki hash'lenmiş reklam anahtarıyla konum raporları istenir- Aynı
.keysdosyasındaki özel anahtarla veriler çözümlenir - Çözümlenen veriler terminalde gösterilir
- Koordinatlar haritada gösterilir ve hareket rotası birleştirilir
- Konum meta verileri gösterilir ve rapor tarihi adıyla bir HTML dosyasına kaydedilir
FlipperZero uygulama yapılandırması ve ayarları
- Uygulama başlatıldıktan sonra config menüsünde
Import Tag From FileveyaRegister Tag Manuallykullanılabilir .keysdosyaları FlipperZero SD kartındakiapps_data->findmyveyaAppsData/FindMyFlipperklasörüne yerleştirilip içe aktarılabilir- nrfConnect ile kaydedilen
.txtdosyaları da aynı klasöre konularak içe aktarılabilir - Ayarlanabilir öğeler şunlardır
- Beacon Interval: FlipperZero'nun varlığını hangi sıklıkta yayınlayacağını ayarlar
- Transmit Power: İzleme menzili ile pil ömrü arasında denge kurmak için sinyal gücünü ayarlar
Uyumluluk, alternatifler ve sorumluluk
- Desteklenen hedefler şunlardır
- AirTag takibi için FindMy ağına erişen Apple cihazları
- Samsung SmartTag takibini destekleyen cihazlar ve web tarayıcıları
- Tile App üzerinden Tile Tracker
- OpenHaystack ile izleme için macOS 14'ten eski bir sürüm gerekir
- macOS 14 ve sonrasında Mail eklentisi uyumluluk sorunları vardır
- Alternatif olarak macless-haystack önerilmektedir
- Bu yöntemde de yalnızca
AirTagGenerationklasöründekigenerate_keys.pykullanılmalıdır - İlgili depodaki anahtar üretim betiği farklı bir anahtar dosyası biçimi kullanır; FindMy Flipper tarafındaki dosyalarda FlipperZero'nun düzgün içe aktarması için gereken veriler bulunur
- Bu yöntemde de yalnızca
- Bu uygulama kişisel ve eğitim amaçlıdır
- Kullanıcılar izleme cihazlarıyla ilgili yerel gizlilik mevzuatına ve düzenlemelere uymalıdır
- İzleme etiketi klonlama ve emülasyonu, orijinal cihaz sahipliğine saygı gösterilerek sorumlu biçimde kullanılmalıdır
- Bu proje Apple Inc. veya Samsung ile bağlantılı değildir
1 yorum
Hacker News yorumları
İlginç bir proje ama burada kullanılan alt bağımlılıklardan biri varsayılan olarak güvensiz görünüyor:
https://github.com/biemster/FindMy/blob/113ebf4017729b92a381...
iCloud için bir kimlik doğrulama kütüphanesi gibi görünüyor ve oluşturulan anahtarı cihaza bağlamak için MacBook device agent değerini hardcode etmiş gibi duruyor
Merkezi hizmetlerde olduğu gibi, birçok servis veya dijital varlığın bağlı olduğu hesaplarda bunu kullanmazdım. Apple bu tür kullanım hesaplarını engellese şaşırmam
Giriş için gereken benzersiz
adsidkodu da olduğu için tespit etmesi zor görünmüyorO zaman Apple neden bunu resmen desteklemiyor, bilmiyorum. iOS cihaz satışlarını itmek için mi yapıyor diye düşündürüyor
Apple masaüstü/mobil ekipmanına yaklaşık 5 bin dolar vermiş biri olarak, birkaç AirTag kaydetmek için ikinci el bir iPhone daha almak zorunda kaldığım için sinir bozucu
https://github.com/biemster/FindMy/blob/113ebf4017729b92a381...
Bilinçli olarak hiçbir zaman üçüncü taraf bir kütüphaneyi entegre etmezdim. Hâlâ
VenToyun tüm sürümlerini virüs tarayıcısından geçiriyorum ve NZ tarzı bir açığın gerçekten ortaya çıktığı anı bekliyorumBu, Apple'ın ödeme akışından çok abonelik modeliyle ilgili. Apple'ın ilginç bulacağı bir özelliği ücretsiz sunuyorsanız dikkatli olmak gerekir. Apple erişimi kesip kullanıcılardan para almaya başlayabilir
Geek'leri kızdırırken de iki kat dikkatli olmak gerekir. Cuma gecesi öfkeli uyuyup hafta sonu boyunca ürünü black-box analiz ederek implementasyonu önemsiz hâle getiren insanlar gerçekten korkutucu
Bu konsept, Apple ve benzerlerinin koyduğu stalking karşıtı özellikleri aşmak için de kullanılabilecek gibi görünüyor
Örneğin N adet donor tag kullanıp
24/Nsaatte bir dönüşümlü kullanırsanız, Apple ya da cihaz takibi açısından hedef kişinin uzun süre tek bir etiket tarafından takip edildiği görünmezBüyük bir batarya ve basit bir zamanlayıcı devresi ekleyip biperi çıkarırsanız mükemmel bir takip cihazına dönüşüyor
Bunun, pahalı ekipman taşıyan yükleri izleme bağlamında tartışıldığını hatırlıyorum. Sevkiyat aylar sürebiliyor, AirTag büyük bataryayla uzun süre dayanacak kadar verimli ve mevcut GPS çözümleri yeterli olmuyordu
Ya da AirTag “ağını” hiç kullanmayan bir GPS etiketi kullanırsınız ve döndürmeniz de gerekmez
Hâlâ Flipper'ı haftada birkaç kez kullanıyorum. Wi-Fi ve diğer frekansları destekleyen bir sonraki sürümü merakla bekliyorum
“Find My” uygulamasının aynı etiketi iki veya daha fazla konumda gördüğünde nasıl tepki verdiğini test eden oldu mu?
Bunu kullanıyorum ve harika. Güç tüketimi de pratikte yok denecek kadar az
Keşke Google'ın Find My Device ağıyla da konuşabilseydi ama Apple ağında zaten çok iyi çalışıyor
Keşke bunu ESP32-C3 gibi ucuz bir BLE cihazına port etmek mümkün olsa. Flipper'ı AirTag olarak kullanmak biraz pahalı
Ne yazık ki taklit edilecek bir donor tag gerekiyor ve bu etiketi bunu kullanırken kullanamıyorsunuz. Ya da OpenHaystack kullanmanız gerekiyor ama veri almak için Mac lazım
README.mdiçinde bunun ne olduğunu anlatan bir bağlantı olsa iyi olurdu: https://flipperzero.one/Bunu kullanmak için hangi Android uygulaması gerekiyor? Mümkünse Google Services gerektirmeyen bir uygulama olsa iyi olur
Ama bunu gerçekten “bulmak” için hangi Android uygulaması kullanılabilir? iPhone ya da Samsung cihazım yok