Tinder yerine AirDrop'u nasıl kullanırım

Tinder yerine AirDrop'u nasıl kullanırım

Apple cihazlarının mükemmel bir Airdrop özelliği vardır; cihazlar arasında veri göndermek için yapılmıştır. Bu durumda, cihazların kurulumuna veya ön eşleştirilmesine gerek yoktur; her şey iki tıklamayla kutudan çıktığı gibi çalışır. Veri aktarımı için Wi-Fi üzerinden bir eklenti kullanılır ve bu nedenle veriler çok yüksek hızlarda aktarılır. Aynı zamanda bazı hileler kullanarak hem dosya göndermekle kalmıyor, hem de sizinle aynı metro vagonunda bulunan kişinin telefon numarasını da öğrenebiliyorsunuz.

Geçen yıl bu işlevi işe giderken, toplu taşıma araçlarında ve halka açık yiyecek içecek işletmelerinde ilginç tanıdıklar edinmek için kullanıyorum. Ortalama olarak günde birkaç yeni tanıdık edinmeyi başarıyorum ve bazen metrodan yeni biriyle birlikte ayrılıyorum.

Kesimin altında size tüm hurmalardan bahsedeceğim.

AirDrop nasıl çalışır?

Tinder yerine AirDrop'u nasıl kullanırım

AirDrop, eşler arası ağ içinde dosya aktarımına yönelik bir protokoldür. Hem normal bir yerel ağ üzerinden hem de herhangi bir Apple cihazı arasında kablosuz olarak çalışabilir. İki cihazın ortak bir ağa bağlı olmadığı, ancak yakınlarda olduğu, örneğin telefonları olan iki kişinin bir metro vagonunda seyahat ettiği ve ortak bir Wi-Fi'ye bağlı olmadığı son durumu analiz edeceğiz.

Tinder yerine AirDrop'u nasıl kullanırım
AirDrop aracılığıyla iletimin ilk aşaması bir BLE paketi göndermektir

AirDrop aracılığıyla veri aktarımını başlatmak için, başlatıcının telefonu, AWDL (Apple Wireless Direct Link) aracılığıyla bir bağlantı kurma teklifiyle birlikte, başlatıcının cihazlarının sahibinin iCloud hesabı ve telefon numarası hakkında karma bilgiler içeren bir BLE yayın paketi gönderir. ) protokolü, Android dünyasından Wi-Fi.Fi Direct gibi bir şey. Bu BLE paketinin yapısı çok ilginç, onu daha detaylı analiz edeceğiz.

Alıcı tarafında AirDrop üç durumda olabilir:

  • Kapalı - hiçbir şekilde algılanmayacak
  • Yalnızca kişiler için — yalnızca adres defterinizdeki kişilerden gelen dosyaları kabul edin. Bu durumda kişi, icloud hesabının bağlı olduğu telefon numarası veya e-posta adresi olarak kabul edilir. Hesapları bağlamak için aynı mantık, iMessages messenger'da olduğu gibi burada da çalışır.
  • Tüm - telefon herkes tarafından görülebilecek

Tinder yerine AirDrop'u nasıl kullanırım
AirDrop gizlilik ayarları. Varsayılan durum "Kişiler için" olarak ayarlanmıştır.

Gizlilik ayarlarınıza bağlı olarak telefon ya AWDL aracılığıyla bağlantı kurmaya devam edecek ya da BLE paketini yok sayacaktır. AirDrop "herkes için" olarak ayarlanmışsa, bir sonraki adımda cihazlar birbirlerine AWDL aracılığıyla bağlanacak, aralarında bir IPv6 ağı oluşturacak ve AirDrop, standart IP protokolü üzerinden mDNS kullanarak normal bir uygulama protokolü olarak çalışacaktır.

Tinder yerine AirDrop'u nasıl kullanırım

Deneyler için AWDL'nin MacBook'ta nasıl çalıştığını izleyebilirsiniz. Bu protokol kapsamındaki tüm alışverişler arayüz aracılığıyla gerçekleşir awdl0Wireshark veya tcpdump kullanılarak kolaylıkla yakalanabilir.

Bu aşamada üç varlığı biliyoruz:

Bluetooth LowEnergy (BLE) paketi - bu paket, telefonun başlatıcının kişi listesinde olup olmadığına karar vermesine dayalı verileri içerir.
Apple Kablosuz Doğrudan Bağlantı (AWDL) — BLE aracılığıyla iletişim başarılı olursa etkinleştirilen, Apple'ın Wi-Fi Direct'inin tescilli bir alternatifi.
havadan yardım - mDNS, HTTP vb. kullanarak normal bir IP ağı içinde çalışan bir uygulama protokolü. Herhangi bir Ethernet ağı içerisinde çalışabilir.

BLE paket yapısı

Bu BLE paketinin başlatıcıdan alıcıya yalnızca bir kez uçtuğu ve ardından değişimin yalnızca AWDL aracılığıyla gerçekleştiği görülüyor. Gerçekte, bir AWDL bağlantısının ömrü çok kısadır; yalnızca birkaç dakika veya daha kısa. Yani dosyanın alıcısı size yanıt vermek isterse, aynı zamanda başlatıcı olarak hareket edecek ve bir BLE paketi gönderecektir.

Alıcı taraftaki telefon, başlatıcının numarasının/e-postasının kişi listesinde olup olmadığını nasıl anlıyor? Cevabı öğrendiğimde çok şaşırdım: başlatıcı numarasını ve e-postasını sha256 karma olarak gönderir, ancak tamamen değil, yalnızca ilk 3 bayt.

Tinder yerine AirDrop'u nasıl kullanırım
AirDrop başlatıcısından gelen bir BLE paketinin yapısı. Yanıtlayan kişi, telefon numarası ve e-postadaki karmaları kullanarak, başlatıcının kişi listesinde olup olmadığını anlar.

Örneğin, Apple hesabınız (diğer adıyla iCloud, diğer adıyla iMessages) +79251234567 numarasına bağlıysa, bu hesaptan elde edilen hash şu şekilde hesaplanacaktır:

echo -n "+79251234567" | shasum -a 256
07de58621e5d274f5844b6663a918a94cfd0502222ec2adee0ae1aed148def36

Sonuç olarak BLE paketindeki değer uçup gidecek 07de58 bir telefon numarası için. Bu yeterli görünmüyor, ancak çoğu zaman bu üç bayt gerçek telefon numarasını bulmak için yeterlidir.

AirDrop gizlilik ayarının BLE paketindeki verileri etkilemediğini de unutmamak gerekir. "Herkes için" ayarı ayarlanmış olsa bile telefon numarasının karması burada yer alacaktır. Ayrıca, Paylaş penceresi açıldığında ve Wi-Fi ağının şifresi girildiğinde telefon numarasının karmasını içeren bir BLE paketi gönderilir.

BLE paketlerinin yapısının ve ona yönelik olası saldırıların ayrıntılı analizi için çalışmayı okuyun elma kanaması ve rusça Habré'ye çeviri.

Apple Bleee çalışması, BLE paketlerinde veri analizini otomatikleştirmek için hazır python komut dosyaları yayınladı. Araştırmaya göz atmanızı ve programları denemenizi şiddetle tavsiye ederim, orada pek çok ilginç şey var.

AWDL (Apple Kablosuz Doğrudan Bağlantısı)

AWDL, Wi-Fi Direct gibi bir şeyi uygulayan, normal Wi-Fi'ye özel bir Apple eklentisidir. Nasıl çalıştığını tam olarak bilmiyorum, kanalları duyurmanın ve koordine etmenin özel bir yolu var ve yalnızca tescilli Apple sürücülerinde çalışıyor. Yani AWDL aracılığıyla yalnızca MacBook'lar/iPhone'lar bağlanabilir.

Üzücü Android telefon sahipleri hâlâ yalnızca düzgün çalışan bir Wi-Fi Direct işlevinin hayalini kuruyor.

Tinder yerine AirDrop'u nasıl kullanırım

Ama çok uzun zaman önce, adamlar Görünüşe göre-laboratuvar AWDL'nin tamamen açık kaynaklı bir uygulamasını yazdı ve buna adını verdi Kablosuz Bağlantıyı Aç (BAYKUŞ). OWL'yi çalıştırmak için Wi-Fi bağdaştırıcısının monitör modunu ve paket enjeksiyonunu desteklemesi gerekir; dolayısıyla her donanımda çalışmaz. Sitede Raspberry pi üzerinde konfigürasyon örnekleri bulunmaktadır. Bu, orijinal AWDL'den önemli ölçüde daha kötü çalışır; örneğin, bağlantı kurulum süresi orijinal için birkaç saniye yerine ~10 saniye uzatılır, ancak işe yarar.

Tinder yerine AirDrop'u nasıl kullanırım

Ayrıca bu adamlar Python'da AirDrop protokolünün bir uygulamasını sıfırdan yazdılar. Açık Bırak. AirDrop'u Linux'ta başlatmak için OWL ile birlikte ve macOS'ta orijinal AWDL ile birlikte kullanılabilir.

AirDrop aracılığıyla nasıl toparlanırsınız?

Tinder yerine AirDrop'u nasıl kullanırım
AirDrop aracılığıyla yuvarlanmayla ilgili tipik durum

Yeterince sıkıcı teori, uygulamaya başlama zamanı. Yani gerekli tüm ekipmanlarla donatılmışsınız ve yüksek teknolojiyi kullanarak ilerlemeye ve topları yuvarlamaya hazırsınız.

Öncelikle ana noktaları hatırlamanız gerekir:

  • AirDrop yalnızca telefonun kilidi açıksa çalışır – hedefin sürekli telefona bakması en iyisidir. Çoğu zaman bu, örneğin metroda sıkıcı olan yerlerde olur.
  • zaman gerek — genellikle gönderilen 3-5. görüntüde olumlu bir dönüşüm meydana gelir, bu nedenle tek bir yerde en az 5 dakika sessiz zamana ihtiyacınız vardır. AirDrop aracılığıyla messenger'da iletişim kurmaya devam etmeyi kabul ettiğiniz anın olumlu bir dönüşüm olduğunu düşünüyorum. Bunu anında uygulamak zordur çünkü yükünüzü kimin kabul ettiği hemen belli olmaz ve büyük olasılıkla bir konuda anlaşmaya varamadan ısınacaksınız.
  • Kişiselleştirilmiş reklam öğesi daha iyi sonuç verir — AirDrop aracılığıyla gönderdiğiniz medya içeriğini payload olarak adlandırıyorum. Sadece meme içeren bir resim büyük olasılıkla hiçbir yere varmayacaktır; içerik durumla alakalı olmalı ve net bir harekete geçirici mesaj içermelidir.

Klasik yöntem – sadece bir telefon

iPhone sahibi olan herkes için uygundur, sosyal beceriler dışında herhangi bir özel beceri gerektirmez. AirDrop'u Herkes moduna geçirip metroya iniyoruz. Normal bir günde (kendi kendini tecrit etmeden önce) Moskova metro vagonunda şöyle bir şey gözlemledim:

Tinder yerine AirDrop'u nasıl kullanırım
Hedeflerin listesi

Gördüğünüz gibi hemen hemen tüm telefonlar sahibinin adını yayınlıyor, bu sayede cinsiyetini kolayca belirleyebiliyor ve uygun yükü hazırlayabiliyoruz.

Yük

Yukarıda yazdığım gibi benzersiz bir payload daha iyi çalışır. İdeal olarak, resim sahibine ismiyle hitap etmelidir. Daha önce, notlar uygulamasındaki bir grafik düzenleyiciyi ve bir tür mobil Photoshop taslaklarını kullanarak yaratıcılığı şekillendirmem gerekiyordu. Sonuç olarak, gerekli resim çizildiğinde arabadan inmek zaten gerekliydi.

Arkadaşım Anya koteeq, özellikle benim isteğim üzerine, gerekli resimleri anında bir başlıkla oluşturan bir Telegram botu yazdı: @AirTrollBot. Artık topları eskisinden çok daha teknolojik olarak yuvarlayabildiğim için kendisine çok teşekkür ediyorum.

Bot'a bir satır metin göndermek yeterlidir ve bunu AirDrop penceresindeki önizlemenin en boy oranıyla tam olarak eşleşen bir görüntü biçiminde oluşturacaktır. Düğmelere basarak resimdeki bir karakteri seçebilirsiniz. Ayrıca isteğe bağlı olarak Telegram giriş bilgilerinizi köşedeki resme eklemeyi de etkinleştirebilirsiniz.

Tinder yerine AirDrop'u nasıl kullanırım
Yük üreteci

En kötü yanı ise resmin herhangi bir işlem yapılmadan anında kurbanın ekranında gösterilmesiydi. "Kabul et"e tıklamanıza bile gerek yoktu. Yükün yüklenmesinden itibaren yüzdeki anlık tepkiyi görebiliyordunuz. Maalesef iOS 13'ten itibaren tanımadığınız kişilerden gelen resimler artık ekranda gösterilmiyor. İşte daha önce nasıl görünüyordu:

Tinder yerine AirDrop'u nasıl kullanırım
iOS ≤12'de sunulan yük

Artık önizleme yerine yalnızca gönderenin cihazının adı gösteriliyor. Bu nedenle, iOS ≥13 olan bir kurbanla adıyla iletişime geçmenin tek yolu, bunu cihazınızın ayarlarında ayarlamak, örneğin telefonu "Yulia, merhaba" olarak adlandırmaktır. İpucu: Cihaz adında emoji kullanabilirsiniz. Elbette bu yöntem resimdeki kadar parlak değildir ancak “kabul et” butonuna basılma şansını büyük ölçüde artırır.

Eylemlerin daha ayrıntılı açıklaması teknik bir makalenin kapsamı dışındadır ve yalnızca hayal gücünüze, doğaçlamanıza ve mizahınıza bağlıdır. Sadece şunu söyleyebilirim ki, bu oyuna katılıp size resimlerle veya not göndererek yanıt vermeye başlayanlar genellikle çok neşeli, açık ve ilginç insanlardır. Resme baktıktan sonra yanıt vermeyen veya daha kötüsü mesajı reddedenler genellikle sıkıcı züppe ve iffetli kişilerdir. Korku faktörü de sıklıkla bir rol oynar: Kırılgan, çekingen insanlar böylesine kibirli, isimsiz bir yabancıyla etkileşime girmekten korkarlar.

Otomatik toplama makinesi

Yükleri manuel olarak oluşturup gönderemeyecek kadar tembelseniz ve süreci otomatikleştirmek istiyorsanız, arka planda AirDrop aracılığıyla menzil içindeki herkese resim gönderecek otomatik bir ses toplama makinesi yapabilirsiniz. Donanım platformu olarak Raspberry Pi Zero'yu kullanacağız, ancak Linux'lu herhangi bir bilgisayar bunu yapacaktır, asıl önemli olan Wi-Fi kartının monitör modunu ve paket enjeksiyonunu desteklemesidir.

Tinder yerine AirDrop'u nasıl kullanırım
Raspberry pi sıfır w + UPS Lite pil kalkanını temel alan Airdrop yoluyla hoparlör gönderici

Jailbreak iPhone'lar için AirDrop Flooder programları mevcut, Raspberry Pi'de açık versiyonlara göre daha stabil çalışıyorlar.

Raspberry pi'de OWL kurulumu şu adreste ayrıntılı olarak açıklanmaktadır: proje web sitesi, ancak Raspberry Pi Zero için Kali Linux yapısını kullanmayı tercih ediyorum çünkü rpi0'da Wi-Fi monitör modunu etkinleştirmek için zaten nexmon yamaları yüklü.

Airdrop'un (veya daha doğrusu AWDL'nin) hastalar için ancak BLE paketi aldıktan sonra etkinleştirildiğini unutmamak önemlidir. Bu nedenle birkaç saniyelik aralıklarla göndermemiz gerekiyor. Bu yardımcı program kullanılarak yapılabilir py-bluetooth-utils. start_le_advertising() işlevini kullanarak, Apple bleee örneklerinden veri dizesini gönderiyorum: 000000000000000001123412341234123400.

Çalışan bir OWL arka plan programınız olduğunda, çatalımı başlatabilirsiniz. açık damla. Depoda bir komut dosyası var flooder.pyherkese bir resim gönderen kak_dela.jpeg.

Gözlemlerime göre raspberry pi sıfır w monitör modunda kararsız. Yaklaşık 20 dakikalık aktif sel baskınından sonra Wi-Fi alt sistemi çöküyor. Sorun yazar tarafından açıklanmıştır Pwnagotchive muhtemelen aşırı ısınmadan kaynaklanıyor. Bir gözlemci sağlamak veya daha kararlı bir donanım kullanmak gereklidir

Maniacello modu - Numaranı biliyorum

Kendinizi yetersiz bir manyak olarak göstermek ve sizinle iletişim kurmaya devam etme arzusunu sonsuza kadar caydırmak istiyorsanız, yakınınızdaki kişinin telefon numarasını bulmayı deneyebilirsiniz.

Daha önce öğrendiğimiz gibi, başlatıcı tarafından gönderilen BLE paketleri sha256 telefon numarasının ilk üç baytını içerir. Bu karma, kurban "paylaş" düğmesine tıklayıp airdrop cihazlarını taramaya başladığında veya giriş alanında yeni bir ağ için Wi-Fi şifresine dokunduğunda yakalanabilir (bu şekilde Apple, menzil içinde talep edebileceğiniz arkadaşları arar) ağ şifresi).

Bir şekilde kurbandan gelen karma mesajı tetiklemeniz ve onu yakalamanız gerekecek. Depodaki yardımcı programları kullanıyorum elma kanaması. Cihazların Bluetooth MAC adresleri rastgele olduğundan ve sürekli değiştiğinden, bu listede istediğiniz cihazı belirlemenin başka bir yolunu bulmanız gerekecektir. Görev, iOS'un telefonun mevcut durumunu şu şekilde yayınlamasıyla basitleştirilmiştir: ekran kapalı, ekran açık, kilit ekranı, kilit açık vb. Bu nedenle sadece mağdurun hareketlerini gözlemleyerek cihazın mevcut durumunu tablodaki cihazla karşılaştırabilirsiniz. En kolay yol, kullanıcının telefonu cebinden çıkardığı, ekranı açtığı ve telefonun kilidini parmağıyla veya yüzüyle açtığı anı yakalamaktır. Bütün bunlar sniffer'da görülecektir.

Tinder yerine AirDrop'u nasıl kullanırım
ikon Х telefon karmalarını içeren bir paketin yakalandığı anlamına gelir.

Ayrıştırıcıları bazen bozulur, ancak çoğu zaman işe yarar. Güvenlik açığının özünü tamamen tekrar anlatmayacağım, çünkü Apple Blee'nin yazarları tarafından ayrıntılı olarak analiz edildi, sadece deneyimimi anlatacağım. Sadece CSR 8510 yongasında bir USB Bluetooth adaptörü kullandığımı söyleyeceğim, çünkü bu benim için MacBook'ta yerleşik ve sanal bir makineye takılan Bluetooth adaptöründen çok daha kararlı çalışıyor.

Böylece kurbanın telefonundan hash'i yakaladık ve telefon numarasının hash'inden imrenilen üç baytı aldık.

Tinder yerine AirDrop'u nasıl kullanırım
Yardımcı program kullanılarak telefon numarası karması içeren BLE paketi ele geçirildi read_ble_state.py

Rusya'da tüm cep telefonu numaralarının +79 koduyla başladığını ve büyük olasılıkla kurbanımızın telefonunun da aynı koda sahip olduğunu biliyoruz. +79000000000 ila +79999999999 arasında bir sayı aralığımız olduğu ortaya çıktı, yani yaklaşık bir milyar sayı.

Aralığı daraltmak için yalnızca herhangi bir operatöre gerçekten kayıtlı olan kodları alıp geri kalanını atıyoruz. Sonuç olarak, aralık yarısı kadar genişler, yani yaklaşık yarım milyar sayı olur.

Daha sonra tüm sayılardan sha256 üretiyoruz ve her karmadan yalnızca ilk 3 baytı kaydediyoruz. Bu listeyi Sqlite veritabanına giriyoruz ve aramayı hızlandırmak için bir indeks oluşturuyoruz.

Veritabanındaki veriler şöyle görünür:

Tinder yerine AirDrop'u nasıl kullanırım
Tüm Rus telefon numaraları ve karmanın ilk üç baytı

Daha sonra kurbanın karma değerini alarak veri tabanındaki tüm eşleşmeleri arayabiliriz. Genellikle karma başına 15-30 eşleşme vardır.

Tinder yerine AirDrop'u nasıl kullanırım
Kurbanın karma değeriyle eşleşen tüm sayılar

Açıkçası, bu sayıların hepsi aslında kullanılmıyor. Gereksiz olanları bir HLR talebi veya görünmez bir SMS kullanarak kesebiliriz. 30 numaradan 5'i çevrimiçi olarak bulundu.

Tinder yerine AirDrop'u nasıl kullanırım
HLR isteğinin sonucu. Ağ numaraları yeşil renkle vurgulanır.

Rakamları incelemeye devam edebilirdim, örneğin hepsini Telegram/Whatsapp'a ekleyebilir ve avatarlara bakabilir, Getcontact gibi veritabanlarını kontrol edebilirdim. Ancak beş numarayı da tek tek aramanın ve kurbanın telefonunun ne zaman çaldığını izlemenin daha kolay olduğu ortaya çıktı.

Tinder yerine AirDrop'u nasıl kullanırım
Hedefin yeri belirlendi

tüm

  • Raspberry pi'deki sel çok dengesiz, diğer tekli kartları denemeniz gerekiyor.
  • İOS için yerel bir Flooder çok daha iyi olurdu, ancak iOS 12-13'te jailbreak ile bile çalışan bir tane bulamadım.
  • Flooder.py betiği çok aptalca. Muhtemelen adı alıcının cihaz adından alıp iPhone kelimesini keserek kişiselleştirilmiş bir resim oluşturabilir.
  • Bir telefon numarasını belirleme yöntemi, yalnızca numaranın iMessage'a bağlı olup olmadığının kontrol edilmesiyle optimize edilebilir. Bu büyük olasılıkla size %100'e yakın bir isabet oranı verecektir.

Sonuç

Bu metro için mükemmel bir eğlence. Wow etkisi var, meraklılar bu konuyla ilgileniyor. Çok fazla doğaçlama vardı, çok komik vakalar vardı. Pek çok insanın metro istasyonunuzda inip kahve içmeye çıkmak için oyuna katılmaya ve hatta planlarını iptal etmeye hazır olduğu ortaya çıktı. Yıl boyunca pek çok insanla tanıştım ve bazılarıyla iletişim kurmaya devam ediyorum.

Bazen Telegram girişini kapatıyorum ve eğleniyorum böyle.

Tinder yerine AirDrop'u nasıl kullanırım

Tinder yerine AirDrop'u nasıl kullanırım

Kaynak: habr.com

Yorum ekle