Si e përdor AirDrop në vend të Tinder

Si e përdor AirDrop në vend të Tinder

Pajisjet Apple kanë një veçori të shkëlqyer Airdrop - është krijuar për dërgimin e të dhënave midis pajisjeve. Në këtë rast, nuk kërkohet asnjë konfigurim ose çiftim paraprak i pajisjeve; gjithçka funksionon jashtë kutisë me dy klikime. Një shtesë përmes Wi-Fi përdoret për të transferuar të dhëna, dhe për këtë arsye të dhënat transferohen me shpejtësi të jashtëzakonshme. Në të njëjtën kohë, duke përdorur disa truke, jo vetëm që mund të dërgoni skedarë, por edhe të zbuloni numrin e telefonit të personit që është në të njëjtën makinë metroje me ju.

Vitin e fundit e përdor këtë funksion për të bërë njohje interesante gjatë rrugës për në punë, në transportin publik dhe në objektet e hotelierisë publike. Mesatarisht, arrij të bëj disa njohje të reja në ditë dhe ndonjëherë largohem nga metroja në shoqërinë e një personi të ri.

Nën prerje do t'ju tregoj për të gjitha hurmat.

Si funksionon AirDrop?

Si e përdor AirDrop në vend të Tinder

AirDrop është një protokoll për transferimin e skedarëve brenda një rrjeti peer-to-peer. Mund të funksionojë si përmes një rrjeti të rregullt lokal ashtu edhe përmes ajrit midis çdo pajisjeje Apple. Ne do të analizojmë rastin e fundit, kur dy pajisje nuk janë të lidhura në një rrjet të përbashkët, por janë thjesht afër, për shembull, dy persona me telefona po udhëtojnë në një makinë metroje dhe nuk janë të lidhur me një Wi-Fi të përbashkët.

Si e përdor AirDrop në vend të Tinder
Faza e parë e transmetimit nëpërmjet AirDrop është dërgimi i një pakete BLE

Për të nisur transferimin e të dhënave nëpërmjet AirDrop, telefoni i iniciatorit dërgon një paketë transmetimi BLE, e cila përmban informacion të hashuar në lidhje me llogarinë iCloud dhe numrin e telefonit të pronarit të pajisjeve të iniciatorit, me një propozim për të krijuar një lidhje nëpërmjet AWDL (Apple Wireless Direct Link ) protokoll, diçka si Wi-Fi. Fi Direct nga bota e Android. Struktura e kësaj pakete BLE është shumë interesante, do ta analizojmë më tej.

Nga ana e marrësit, AirDrop mund të jetë në tre gjendje:

  • I fikur - nuk do të zbulohet fare
  • Vetëm për kontakte — pranoni skedarë vetëm nga kontaktet në librin tuaj të adresave. Në këtë rast, kontakti konsiderohet të jetë numri i telefonit ose emaili me të cilin është lidhur llogaria icloud. E njëjta logjikë për lidhjen e llogarive funksionon këtu si me mesazherin iMessages.
  • Per te gjithe - telefoni do të jetë i dukshëm për të gjithë

Si e përdor AirDrop në vend të Tinder
Cilësimet e privatësisë së AirDrop. Statusi i paracaktuar është vendosur në "Për kontaktet".

Në varësi të cilësimeve tuaja të privatësisë, telefoni ose do të vazhdojë të krijojë një lidhje nëpërmjet AWDL ose thjesht do të injorojë paketën BLE. Nëse AirDrop është vendosur në "për të gjithë", atëherë në hapin tjetër pajisjet do të lidhen me njëra-tjetrën përmes AWDL, do të krijojnë një rrjet IPv6 midis tyre, brenda të cilit AirDrop do të funksionojë si një protokoll i rregullt aplikimi duke përdorur mDNS mbi protokollin standard IP.

Si e përdor AirDrop në vend të Tinder

Për eksperimente, mund të shikoni se si funksionon AWDL në një MacBook. I gjithë shkëmbimi sipas këtij protokolli ndodh përmes ndërfaqes awdl0, e cila mund të kapet lehtësisht duke përdorur Wireshark ose tcpdump.

Në këtë fazë ne njohim tre entitete:

Paketa Bluetooth LowEnergy (BLE). - kjo pako përmban të dhëna në bazë të të cilave telefoni vendos nëse iniciatori është në listën e tij të kontakteve apo jo.
Lidhje direkte me valë Apple (AWDL) — një zëvendësim i pronarit për Wi-Fi Direct nga Apple, i aktivizuar nëse komunikimi nëpërmjet BLE ishte i suksesshëm.
Desantim ajror - një protokoll aplikacioni që funksionon brenda një rrjeti të rregullt IP duke përdorur mDNS, HTTP, etj. Mund të funksionojë brenda çdo rrjeti Ethernet.

Struktura e paketës BLE

Mund të duket se kjo paketë BLE fluturon vetëm një herë nga iniciatori te marrësi, dhe më pas shkëmbimi ndodh vetëm përmes AWDL. Në realitet, një lidhje AWDL ka një jetëgjatësi shumë të shkurtër, vetëm disa minuta ose më pak. Pra, nëse marrësi i skedarit dëshiron t'ju përgjigjet, ai gjithashtu do të veprojë si iniciator dhe do të dërgojë një paketë BLE.

Si e kupton telefoni në skajin marrës nëse numri/emaili i iniciatorit është në listën e tij të kontakteve apo jo? U habita shumë kur mora përgjigjen: iniciatori dërgon numrin dhe emailin e tij si një hash sha256, por jo tërësisht, por vetëm 3 bajtët e parë.

Si e përdor AirDrop në vend të Tinder
Struktura e një pakete BLE nga iniciatori AirDrop. Duke përdorur hash nga numri i telefonit dhe emaili, përgjigjësi kupton nëse iniciatori është në listën e tij të kontakteve.

Për shembull, nëse llogaria juaj e Apple (aka iCloud, aka iMessages) është e lidhur me numrin +79251234567, hash-i prej saj do të llogaritet si kjo:

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

Dhe si rezultat, vlera në paketën BLE do të largohet 07de58 për një numër telefoni. Kjo duket se nuk mjafton, por shpesh këto tre bajt mjaftojnë për të zbuluar numrin e vërtetë të telefonit.

Është gjithashtu e rëndësishme të mbani mend se cilësimi i privatësisë AirDrop nuk ndikon në të dhënat në paketën BLE. Hash-i i numrit të telefonit do të përmbahet në të, edhe nëse është vendosur cilësimi "Për të gjithë". Gjithashtu, një paketë BLE me një hash të numrit të telefonit dërgohet kur hapet dritarja Share dhe kur futet fjalëkalimi për rrjetin Wi-Fi.

Për një analizë të hollësishme të strukturës së paketave BLE dhe sulmeve të mundshme mbi të, lexoni studimin Apple Bleee dhe ruse përkthim në Habré.

Studimi i Apple Bleee publikoi skriptet e gatshme python për automatizimin e analizës së të dhënave në paketat BLE. Unë rekomandoj shumë të kontrolloni kërkimin dhe të provoni programet, ka shumë gjëra interesante atje.

AWDL (Lidhja e drejtpërdrejtë me valë e Apple)

AWDL është një shtesë pronësore e Apple për Wi-Fi të rregullt që zbaton diçka si Wi-Fi Direct. Nuk e di plotësisht se si funksionon, ekziston një mënyrë e veçantë për të shpallur dhe koordinuar kanalet, dhe funksionon vetëm në drejtuesit e pronarit të Apple. Kjo do të thotë, vetëm MacBooks/iPhones mund të lidhen përmes AWDL.

Pronarët e trishtuar të telefonave Android ende po ëndërrojnë vetëm për një funksion Wi-Fi Direct që funksionon siç duhet.

Si e përdor AirDrop në vend të Tinder

Por jo shumë kohë më parë djemtë nga lookmoo-lab shkroi një zbatim plotësisht me burim të hapur të AWDL dhe e quajti atë Hapni lidhjen me valë (BUF). Për të ekzekutuar OWL, përshtatësi Wi-Fi duhet të mbështesë modalitetin e monitorit dhe injektimin e paketave, kështu që nuk funksionon në çdo pajisje. Faqja ka shembuj të konfigurimit në Raspberry pi. Kjo funksionon dukshëm më keq se AWDL origjinale, për shembull, koha e konfigurimit të lidhjes zgjatet me ~ 10 sekonda në vend të disa sekondave për origjinalin, por funksionon.

Si e përdor AirDrop në vend të Tinder

Gjithashtu, këta djem shkruan nga e para një zbatim të protokollit AirDrop në Python, të quajtur OpenDrop. Mund të përdoret si në lidhje me OWL për të nisur AirDrop në Linux ashtu edhe me AWDL origjinal në macOS.

Si të grumbulloheni përmes AirDrop

Si e përdor AirDrop në vend të Tinder
Situata tipike me rrotullimin përmes AirDrop

Mjaft teori e mërzitshme, është koha të filloni të praktikoni. Kështu që ju jeni të armatosur me të gjitha pajisjet e nevojshme dhe jeni gati për të ecur përpara dhe për të rrotulluar topa duke përdorur teknologjinë e lartë.

Së pari ju duhet të mbani mend pikat kryesore:

  • AirDrop do të funksionojë vetëm nëse telefoni është i shkyçur - është më mirë nëse objektivi është vazhdimisht duke parë telefonin. Më shpesh kjo ndodh në vendet ku është e mërzitshme, për shembull në metro.
  • Duhet kohë — zakonisht, një konvertim pozitiv ndodh në imazhin e 3-5-të të dërguar, kështu që ju nevojiten të paktën 5 minuta kohë qetësie në një vend. Unë e konsideroj një konvertim pozitiv si momentin kur ju ranë dakord përmes AirDrop për të vazhduar komunikimin në messenger. Kjo është e vështirë për t'u zbatuar në fluturim, sepse nuk është menjëherë e qartë se kush e pranoi ngarkesën tuaj dhe ka shumë të ngjarë që do të ngroheni përpara se të bini dakord për diçka.
  • Krijimtaria e personalizuar funksionon më mirë — Unë e quaj payload përmbajtjen e medias që dërgoni përmes AirDrop. Vetëm një foto me një meme ka shumë të ngjarë të mos çojë askund; përmbajtja duhet të jetë e përshtatshme për situatën dhe të ketë një thirrje të qartë për veprim.

Metoda klasike - vetëm një telefon

I përshtatshëm për të gjithë ata që kanë një iPhone, nuk kërkon ndonjë aftësi të veçantë përveç atyre sociale. Kalojmë AirDrop në modalitetin "Të gjithë" dhe zbresim në metro. Në një ditë normale (para izolimit) në një makinë të metrosë së Moskës, vura re diçka të tillë:

Si e përdor AirDrop në vend të Tinder
Lista e objektivave

Siç mund ta shihni, pothuajse të gjithë telefonat transmetojnë emrin e pronarit, me të cilin ne mund të përcaktojmë lehtësisht gjininë e tij dhe të përgatisim ngarkesën e duhur.

Ngarkesa

Siç shkrova më lart, një ngarkesë unike funksionon më mirë. Idealisht, fotografia duhet t'i drejtohet pronarit me emër. Më parë, më duhej të skalitja krijimtarinë duke përdorur një redaktues grafik në aplikacionin e shënimeve dhe një lloj cung Photoshop celular. Si rezultat, në kohën kur u vizatua fotografia e kërkuar, ishte tashmë e nevojshme të dilte nga makina.

Miku im Anya koteeq, konkretisht me kërkesën time, shkroi një bot Telegram që gjeneron fotot e nevojshme me një mbishkrim në fluturim: @AirTrollBot. E falënderoj shumë për faktin që tani mund të rrotulloj topa shumë më teknologjikisht se më parë.

Mjafton t'i dërgoni robotit një rresht teksti dhe ai do ta gjenerojë atë në formën e një imazhi që përputhet saktësisht me raportin e pamjes për pamjen paraprake në dritaren AirDrop. Mund të zgjidhni një karakter në figurë duke shtypur butonat. Mund të aktivizoni gjithashtu opsionalisht shtimin e hyrjes në Telegram në foton në qoshe.

Si e përdor AirDrop në vend të Tinder
Gjenerator i ngarkesës

Pjesa më e keqe ishte se fotografia u shfaq menjëherë në ekranin e viktimës pa asnjë veprim. Nuk është dashur as të klikoni "pranoj". Ju mund të shihni reagimin e menjëhershëm në fytyrë nga ngarkimi i ngarkesës. Fatkeqësisht, që nga iOS 13, fotografitë nga kontaktet e panjohura nuk shfaqen më në ekran. Ja si dukej më parë:

Si e përdor AirDrop në vend të Tinder
Ngarkesa e dorëzuar në iOS ≤12

Tani, në vend të një pamje paraprake, shfaqet vetëm emri i pajisjes së dërguesit. Prandaj, mënyra e vetme për të kontaktuar me emër një viktimë me iOS ≥13 është ta vendosni atë në cilësimet e pajisjes tuaj, për shembull, telefononi "Yulia, përshëndetje". Këshillë: Mund të përdorni emoji në emrin e pajisjes. Sigurisht, kjo metodë nuk është aq e ndritshme sa me një foto, por rrit shumë mundësinë për të klikuar butonin "pranoj".

Përshkrimi i mëtejshëm i veprimeve është përtej qëllimit të një artikulli teknik dhe varet vetëm nga imagjinata, improvizimi dhe humori juaj. Mund të them vetëm se ata që i bashkohen kësaj loje dhe fillojnë t'ju përgjigjen me foto ose duke dërguar shënime janë zakonisht njerëz shumë të gëzuar, të hapur dhe interesantë. Ata që, pasi e shikojnë foton, thjesht nuk përgjigjen, ose më keq, thjesht e refuzojnë mesazhin, zakonisht janë snob dhe mendjemëdhenj të mërzitshëm. Faktori i frikës gjithashtu shpesh luan një rol: njerëzit e brishtë, të ndrojtur kanë frikë të ndërveprojnë me një të huaj anonim kaq arrogant.

Makinë automatike për marrje

Nëse jeni shumë dembel për të gjeneruar dhe dërguar ngarkesa me dorë, dhe dëshironi të automatizoni procesin, mund të krijoni një makinë automatike të zgjedhjes së zërit, e cila në sfond do t'u dërgojë fotografi nëpërmjet AirDrop të gjithëve brenda rrezes. Ne do të përdorim raspberry pi zero si një platformë harduerike, por çdo kompjuter me Linux do ta bëjë këtë, gjëja kryesore është që karta Wi-Fi të mbështesë modalitetin e monitorit dhe injektimin e paketave.

Si e përdor AirDrop në vend të Tinder
Dërguesi i altoparlantit nëpërmjet Airdrop bazuar në raspberry pi zero w + mburojë baterie UPS Lite

Ka programe AirDrop flooder për iPhone Jailbreak, ato funksionojnë më të qëndrueshme se versionet e hapura në raspberry pi

Vendosja e OWL në raspberry pi përshkruhet në detaje në uebsajti i projektit, por preferoj të përdor ndërtimin e Kali Linux për Raspberry Pi Zero sepse tashmë ka të instaluara arna nexmon për të aktivizuar modalitetin e monitorit Wi-Fi në rpi0.

Është e rëndësishme të mbani mend se Airdrop (ose më mirë AWDL) aktivizohet për pacientët vetëm pas marrjes së një pakete BLE. Prandaj, ne duhet ta dërgojmë atë në intervale prej disa sekondash. Kjo mund të bëhet duke përdorur programin py-bluetooth-utils. Duke përdorur funksionin start_le_advertising(), unë dërgoj vargun e të dhënave nga shembujt e Apple bleee: 000000000000000001123412341234123400.

Pasi të keni një demon që funksionon OWL, atëherë mund të lëshoni pirunin tim opendrop. Ekziston një skenar në depo flooder.py, e cila i dërgon të gjithëve një foto kak_dela.jpeg.

Sipas vëzhgimeve të mia, raspberry pi zero w është i paqëndrueshëm në modalitetin e monitorimit. Pas rreth 20 minutash funksionimi aktiv të përmbytjes, nënsistemi Wi-Fi prishet. Problemi është përshkruar nga autori pwnagotchi, dhe me sa duket shkaktohet nga mbinxehja. Është e nevojshme të sigurohet një roje ose të përdoret një pajisje më e qëndrueshme

Modaliteti Maniacello - Unë e di numrin tuaj

Nëse dëshironi të tregoni veten si një maniak joadekuat dhe të dekurajoni përgjithmonë dëshirën për të vazhduar komunikimin me ju, mund të përpiqeni të zbuloni numrin e telefonit të personit që është afër.

Siç mësuam më herët, paketat BLE të dërguara nga iniciatori përmbajnë tre bajtët e parë të numrit të telefonit sha256. Ky hash mund të kapet kur viktima klikon butonin "share" dhe fillon të skanojë pajisjet airdrop ose prek fjalëkalimin Wi-Fi për një rrjet të ri në fushën e hyrjes (në këtë mënyrë, Apple kërkon miq brenda rrezes nga të cilët mund të kërkoni fjalëkalimi i rrjetit).

Ju do të duhet të aktivizoni disi mesazhin hash nga viktima dhe ta kapni atë. Unë jam duke përdorur shërbime nga depoja Apple Bleee. Meqenëse adresat MAC Bluetooth të pajisjeve janë të rastësishme dhe vazhdimisht ndryshojnë, do t'ju duhet të gjeni një mënyrë tjetër për të përcaktuar pajisjen e dëshiruar në këtë listë. Detyra thjeshtohet nga fakti që iOS transmeton gjendjen aktuale të telefonit si: ekrani i fikur, ekrani i ndezur, ekrani i kyçur, i shkyçur, etj. Prandaj, thjesht duke vëzhguar veprimet e viktimës, mund të krahasoni gjendjen aktuale të pajisjes me pajisjen në tabelë. Mënyra më e lehtë është të kapni momentin kur përdoruesi nxjerr telefonin nga xhepi, ndez ekranin dhe zhbllokon telefonin me gisht ose fytyrë. E gjithë kjo do të jetë e dukshme në sniffer.

Si e përdor AirDrop në vend të Tinder
ikonë Х do të thotë që u kap një pako me hash telefoni.

Analisti i tyre ndonjëherë prishet, por më shpesh funksionon. Unë nuk do të tregoj plotësisht thelbin e cenueshmërisë, pasi ajo u analizua në detaje nga autorët e Apple Blee, unë do të përshkruaj vetëm përvojën time. Unë thjesht do të them që përdor një përshtatës USB Bluetooth në një çip CSR 8510, pasi funksionon shumë më i qëndrueshëm për mua sesa përshtatësi Bluetooth i integruar në një MacBook dhe i futur në një makinë virtuale.

Kështu që ne kapëm hash-in nga telefoni i viktimës dhe morëm tre bajtët e lakmuar nga hash-i i numrit të telefonit.

Si e përdor AirDrop në vend të Tinder
Përgjuar paketën BLE me hash numrin e telefonit duke përdorur programin read_ble_state.py

Ne e dimë se në Rusi të gjithë numrat celularë fillojnë me kodin +79 dhe, ka shumë të ngjarë, telefoni i viktimës sonë ka të njëjtin kod. Rezulton se kemi një gamë numrash nga +79000000000 deri në +79999999999, rreth një miliard numra.

Për të ngushtuar diapazonin, marrim vetëm kodet që janë aktualisht të regjistruara me çdo operator dhe hedhim poshtë pjesën tjetër. Si rezultat, diapazoni bëhet gjysmë i madh, rreth gjysmë miliardë numra.

Më pas, ne gjenerojmë sha256 nga të gjithë numrat dhe ruajmë vetëm 3 bajtet e para nga çdo hash. Ne e futim këtë listë në bazën e të dhënave Sqlite dhe ndërtojmë një indeks për të shpejtuar kërkimin.

Kështu duken të dhënat në bazën e të dhënave:

Si e përdor AirDrop në vend të Tinder
Të gjithë numrat e telefonit rus dhe tre bajtët e parë të hash-it

Më pas, duke pasur hash-in e viktimës, ne mund të kërkojmë për të gjitha ndeshjet në bazën e të dhënave. Zakonisht ka 15-30 ndeshje për hash.

Si e përdor AirDrop në vend të Tinder
Të gjithë numrat që përputhen me hash-in e viktimës

Natyrisht, jo të gjithë këta numra janë përdorur në të vërtetë. Ne mund të ndërpresim ato të panevojshme duke përdorur një kërkesë HLR ose një SMS të padukshëm. Nga 30 numra, 5 u gjetën në internet.

Si e përdor AirDrop në vend të Tinder
Rezultati i kërkesës HLR. Numrat e rrjetit janë theksuar me të gjelbër.

Mund të vazhdoj të analizoj numrat, për shembull, t'i shtoj të gjithë në Telegram/Whatsapp dhe të shikoj avatarët, të kontrolloj nëpër bazat e të dhënave si Getcontact etj. Por doli të ishte më e lehtë të telefononit të pesë numrat një nga një dhe të shikonit kur bie telefoni i viktimës.

Si e përdor AirDrop në vend të Tinder
Objekti i vendosur

Të gjithë

  • Përmbytja në raspberry pi është shumë e paqëndrueshme, duhet të provoni dërrasa të tjera të vetme.
  • Një flooder amtare për iOS do të ishte shumë më mirë, por nuk mund të gjeja një që funksionon në iOS 12-13 edhe me jailbreak.
  • Skripti flooder.py është shumë budalla. Ndoshta mund të gjenerojë një fotografi të personalizuar duke marrë emrin nga emri i pajisjes së marrësit dhe duke prerë fjalën iPhone.
  • Metoda e përcaktimit të një numri telefoni mund të optimizohet duke kontrolluar vetëm faktin që numri është i lidhur me iMessage. Kjo ka shumë të ngjarë t'ju japë afër një normë goditjeje prej 100%.

Përfundim

Ky është argëtimi i përsosur për metro. Ka një efekt wow, njerëzit kureshtarë janë të interesuar për këtë. Kishte shumë improvizime, kishte raste shumë qesharake. Rezulton se shumë njerëz janë gati të luajnë së bashku dhe madje të anulojnë planet e tyre në mënyrë që të zbresin në stacionin tuaj të metrosë dhe të shkojnë për të pirë kafe. Gjatë vitit takova shumë njerëz dhe vazhdoj të komunikoj me disa prej tyre.

Ndonjëherë e çaktivizoj hyrjen në Telegram dhe argëtohem si kjo.

Si e përdor AirDrop në vend të Tinder

Si e përdor AirDrop në vend të Tinder

Burimi: www.habr.com

Shto një koment