Hogyan használom az AirDrop-ot a Tinder helyett?

Hogyan használom az AirDrop-ot a Tinder helyett?

Az Apple készülékek kiváló Airdrop funkcióval rendelkeznek – az eszközök közötti adatküldésre készült. Ebben az esetben nincs szükség sem beállításra, sem előzetes párosításra, minden két kattintással működik a dobozból. Egy Wi-Fi-n keresztüli bővítményt használnak az adatok átvitelére, ezért az adatok átvitele óriási sebességgel történik. Ugyanakkor néhány trükk segítségével nem csak fájlokat küldhet, hanem megtudhatja annak a személynek a telefonszámát is, aki egy metrókocsiban van veled.

Az elmúlt évben ezzel a funkcióval munkába menet, tömegközlekedési eszközökön és közétkeztetésben érdekes ismeretségeket köthetek. Átlagosan naponta több új ismeretséget sikerül kötni, és néha egy új ember társaságában hagyom el a metrót.

A vágás alatt elmesélem az összes datolyaszilva.

Hogyan működik az AirDrop?

Hogyan használom az AirDrop-ot a Tinder helyett?

Az AirDrop egy protokoll fájlok peer-to-peer hálózaton belüli átvitelére. Működhet normál helyi hálózaton és éteren keresztül bármely Apple-eszköz között. Az utolsó esetet elemezzük, amikor két eszköz nem csatlakozik egy közös hálózathoz, hanem egyszerűen a közelben van, például két telefonnal utazó ember egy metrókocsiban utazik, és nem csatlakozik egy közös Wi-Fi-hez.

Hogyan használom az AirDrop-ot a Tinder helyett?
Az AirDrop-on keresztüli átvitel első szakasza egy BLE-csomag küldése

Az AirDrop-on keresztüli adatátvitel kezdeményezéséhez a kezdeményező telefonja egy BLE broadcast csomagot küld, amely kivonatolt információkat tartalmaz a kezdeményező eszközeinek tulajdonosának iCloud-fiókjáról és telefonszámáról, és javaslatot tesz az AWDL-n (Apple Wireless Direct Link) keresztüli kapcsolat létrehozására. ) protokoll, valami olyasmi, mint a Wi-Fi. Fi Direct az Android világából. Ennek a BLE-csomagnak a felépítése nagyon érdekes, tovább elemezzük.

A címzett oldalán az AirDrop három állapotú lehet:

  • Kikapcsolva - egyáltalán nem észlelhető
  • Csak kapcsolattartóknak — csak a címjegyzékében lévő névjegyekből fogadjon el fájlokat. Ebben az esetben a kapcsolattartó az a telefonszám vagy e-mail cím, amelyhez az icloud-fiók kapcsolódik. Itt ugyanaz a logika működik a fiókok összekapcsolására, mint az iMessages messenger esetében.
  • minden - a telefon mindenki számára látható lesz

Hogyan használom az AirDrop-ot a Tinder helyett?
AirDrop adatvédelmi beállítások. Az alapértelmezett állapot a „Névjegyekhez”.

Az adatvédelmi beállításoktól függően a telefon vagy folytatja a kapcsolat létrehozását az AWDL-n keresztül, vagy egyszerűen figyelmen kívül hagyja a BLE-csomagot. Ha az AirDrop „mindenki számára”-re van állítva, akkor a következő lépésben az eszközök AWDL-n keresztül csatlakoznak egymáshoz, IPv6-os hálózatot hoznak létre közöttük, amelyen belül az AirDrop normál alkalmazási protokollként működik mDNS-t használva a szabványos IP protokollon keresztül.

Hogyan használom az AirDrop-ot a Tinder helyett?

Kísérletekhez megtekintheti, hogyan működik az AWDL MacBookon. E protokoll alatt minden csere az interfészen keresztül történik awdl0, amely Wireshark vagy tcpdump segítségével könnyen rögzíthető.

Ebben a szakaszban három entitást ismerünk:

Bluetooth LowEnergy (BLE) csomag - ez a csomag olyan adatokat tartalmaz, amelyek alapján a telefon eldönti, hogy a kezdeményező benne van-e a névjegyzékében vagy sem.
Apple Wireless Direct Link (AWDL) – az Apple által gyártott Wi-Fi Direct szabadalmaztatott helyettesítője, amely akkor aktiválódik, ha a BLE-n keresztüli kommunikáció sikeres volt.
földre száll - olyan alkalmazásprotokoll, amely normál IP-hálózaton belül mDNS, HTTP stb. használatával működik. Bármilyen Ethernet hálózaton belül működik.

BLE csomagstruktúra

Úgy tűnhet, hogy ez a BLE-csomag csak egyszer repül a kezdeményezőtől a címzetthez, és akkor a csere csak AWDL-n keresztül történik. A valóságban egy AWDL kapcsolat nagyon rövid élettartamú, mindössze néhány perc vagy kevesebb. Tehát, ha a fájl címzettje válaszolni szeretne neked, akkor kezdeményezőként is fellép, és küld egy BLE csomagot.

Hogyan érti meg a fogadó oldalon lévő telefon, hogy a kezdeményező száma/e-mail címe szerepel-e a névjegyzékében vagy sem? Nagyon meglepődtem, amikor megtudtam a választ: a kezdeményező sha256 hash-ként küldi el a számát és az email címét, de nem teljesen, hanem csak az első 3 bájt.

Hogyan használom az AirDrop-ot a Tinder helyett?
Az AirDrop kezdeményezőtől származó BLE-csomag felépítése. A telefonszámból és az e-mail címből származó hashek használatával a válaszoló megérti, hogy a kezdeményező szerepel-e a névjegyzékében.

Például, ha az Apple-fiókja (más néven iCloud, más néven iMessages) a +79251234567 számhoz van kapcsolva, az abból származó hash a következőképpen kerül kiszámításra:

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

Ennek eredményeként a BLE csomagban lévő érték elszáll 07de58 telefonszámért. Ez kevésnek tűnik, de gyakran ez a három bájt is elegendő a valódi telefonszám kiderítéséhez.

Azt is fontos megjegyezni, hogy az AirDrop adatvédelmi beállítása nincs hatással a BLE-csomagban lévő adatokra. A telefonszám hash-je akkor is benne lesz benne, ha a „Mindenki számára” beállítás be van állítva. A Megosztás ablak megnyitásakor és a Wi-Fi hálózat jelszavának megadásakor egy BLE-csomag is elküldésre kerül a telefonszám kivonatával.

A BLE-csomagok szerkezetének és az azt ért lehetséges támadásoknak részletes elemzéséhez olvassa el a tanulmányt Apple Bleee és orosz fordítás Habréra.

Az Apple Bleee tanulmány kész python szkripteket publikált az adatelemzés automatizálására BLE csomagokban. Nagyon ajánlom, hogy nézze meg a kutatást és próbálja ki a programokat, sok érdekes dolog van ott.

AWDL (Apple Wireless Direct Link)

Az AWDL egy szabadalmaztatott Apple-kiegészítő a normál Wi-Fi-hez, amely olyasmit valósít meg, mint a Wi-Fi Direct. Nem teljesen tudom, hogyan működik, van egy speciális módja a csatornák bejelentésének és koordinálásának, és ez csak a saját Apple meghajtókon működik. Vagyis csak MacBookok/iPhone-ok tudnak AWDL-n keresztül csatlakozni.

A szomorú Android telefontulajdonosok még mindig csak álmodoznak egy megfelelően működő Wi-Fi Direct funkcióról.

Hogyan használom az AirDrop-ot a Tinder helyett?

De nem is olyan régen a srácok seemoo-lab írt egy teljesen nyílt forráskódú AWDL implementációt és elnevezte Nyissa meg a Wireless Link (BAGOLY). Az OWL futtatásához a Wi-Fi adapternek támogatnia kell a monitor módot és a csomaginjektálást, így nem fut minden hardveren. A webhelyen példák találhatók a Raspberry pi konfigurációjára. Ez lényegesen rosszabbul működik, mint az eredeti AWDL, például az eredetinél pár másodperc helyett ~10 másodperccel meghosszabbodik a kapcsolat beállítási ideje, de működik.

Hogyan használom az AirDrop-ot a Tinder helyett?

Ezenkívül ezek a srácok a semmiből megírták az AirDrop protokoll megvalósítását Pythonban, az úgynevezett OpenDrop. Mind az OWL-lel együtt használható az AirDrop elindításához Linuxon, mind az eredeti AWDL-lel MacOS rendszeren.

Hogyan lehet felcsavarni az AirDrop segítségével

Hogyan használom az AirDrop-ot a Tinder helyett?
Tipikus helyzet az AirDrop segítségével történő feltekeréssel

Elég unalmas elmélet, ideje elkezdeni a gyakorlást. Tehát fel van fegyverkezve minden szükséges felszereléssel, és készen áll arra, hogy előrehaladjon és felgöngyölje a labdákat csúcstechnológiával.

Először emlékeznie kell a főbb pontokra:

  • Az AirDrop csak akkor működik, ha a telefon fel van oldva – a legjobb, ha a célszemély folyamatosan a telefont nézi. Leggyakrabban ez olyan helyeken történik, ahol unalmas, például a metróban.
  • Időre van szüksége — általában a 3-5. elküldött képen történik pozitív konverzió, így legalább 5 perc nyugalomra van szüksége egy helyen. Pozitív konverziónak tartom azt a pillanatot, amikor beleegyeztél az AirDrop-on keresztül, hogy folytatod a kommunikációt a messengerben. Ezt menet közben nehéz megvalósítani, mert nem azonnal világos, hogy ki fogadta el a rakományodat, és nagy valószínűséggel felmelegszik, mielőtt megállapodna valamiben.
  • A személyre szabott kreatív jobban működik — Payloadnak nevezem azt a médiatartalmat, amelyet AirDropon keresztül küld. Egy mémet tartalmazó kép nagy valószínűséggel nem vezet sehova; a tartalomnak relevánsnak kell lennie az adott helyzetben, és világos cselekvésre ösztönöznie kell.

A klasszikus módszer - csak egy telefon

Mindenkinek megfelelő, akinek iPhone-ja van, nem igényel semmilyen különleges képességet a közösségieken kívül. Átkapcsoljuk az AirDrop-ot Mindenki módra, és lementünk a metróba. Egy hétköznapi napon (az önizoláció előtt) egy moszkvai metrókocsiban valami ilyesmit figyeltem meg:

Hogyan használom az AirDrop-ot a Tinder helyett?
Célpontok jegyzéke

Mint látható, szinte minden telefon sugározza a tulajdonos nevét, ami alapján könnyen meghatározhatjuk a nemét és elkészíthetjük a megfelelő rakományt.

Hasznos teher

Ahogy fentebb is írtam, az egyedi rakomány jobban működik. Ideális esetben a képnek név szerint kell megszólítania a tulajdonost. Korábban kreativitást kellett faragnom egy grafikus szerkesztő segítségével a jegyzetek alkalmazásban és valamiféle mobil Photoshop csonkkal. Ebből kifolyólag, mire a szükséges kép elkészült, már ki kellett szállni az autóból.

Anya barátom koteeq, konkrétan kérésemre írt egy Telegram botot, ami menet közben generálja a szükséges képeket felirattal: @AirTrollBot. Nagyon köszönöm neki, hogy ma már sokkal technológiaiabban tudok labdákat gurítani, mint korábban.

Elegendő egy szövegsort küldeni a botnak, amit az AirDrop ablakban látható előnézethez pontosan megfelelő képarányú kép formájában generál. A képen szereplő karaktert a gombok megnyomásával választhatja ki. Opcionálisan engedélyezheti Telegram bejelentkezési adatainak hozzáadását a sarokban lévő képhez.

Hogyan használom az AirDrop-ot a Tinder helyett?
Hasznos teher generátor

A legrosszabb az volt, hogy a kép azonnal megjelent az áldozat képernyőjén, minden lépés nélkül. Még csak az "elfogadás"-ra sem kellett kattintani. Látni lehetett az azonnali reakciót az arcon a rakomány betöltésekor. Sajnos az iOS 13-tól kezdve az ismeretlen ismerősök képei már nem jelennek meg a képernyőn. Íme, hogyan nézett ki korábban:

Hogyan használom az AirDrop-ot a Tinder helyett?
Hasznos teher szállítva iOS ≤12 alatt

Most az előnézet helyett csak a küldő eszközének neve jelenik meg. Ezért az egyetlen módja annak, hogy név szerint lépjen kapcsolatba az iOS ≥13-as áldozattal, ha beállítja ezt az eszköz beállításaiban, például felhívja a telefont: „Yulia, hello”. Tipp: Az eszköz nevében használhat hangulatjeleket. Természetesen ez a módszer nem olyan fényes, mint egy képnél, de nagyban növeli az „elfogadás” gomb megnyomásának esélyét.

A műveletek további leírása túlmutat egy műszaki cikk keretein, és csak az Ön képzeletén, improvizációján és humorán múlik. Csak azt tudom mondani, hogy akik csatlakoznak ehhez a játékhoz és elkezdenek válaszolni neked képekkel vagy jegyzetekkel, azok általában nagyon vidám, nyitott és érdekes emberek. Azok, akik a kép megtekintése után egyszerűen nem válaszolnak, vagy ami még rosszabb, egyszerűen elutasítják az üzenetet, általában unalmas sznobok és púposok. A félelemfaktor is gyakran szerepet játszik: a törékeny, félénk emberek félnek érintkezni egy ilyen arrogáns névtelen idegennel.

Automata komissiózási gép

Ha lusta a rakományok manuális generálásához és küldéséhez, és automatizálni szeretné a folyamatot, készíthet egy automatikus hangkiválasztó gépet, amely a háttérben AirDrop-on keresztül küld képeket mindenkinek, aki a hatótávolságon belül van. Hardverplatformnak a raspberry pi zero-t fogjuk használni, de bármelyik Linuxos számítógép megteszi, a lényeg, hogy a Wi-Fi kártya támogassa a monitor módot és a csomaginjektálást.

Hogyan használom az AirDrop-ot a Tinder helyett?
Hangszóró küldő Airdrop-on keresztül Raspberry pi zero w + UPS Lite akkumulátorpajzs

Vannak AirDrop flooder programok a Jailbreak iPhone-okhoz, ezek stabilabban működnek, mint a Raspberry pi nyílt verziói

Az OWL Raspberry pi-n történő beállítását részletesen itt ismertetjük projekt honlapja, de inkább a Kali Linux buildet használom a Raspberry Pi Zero-hoz, mert már telepítve vannak a nexmon javítások, amelyek lehetővé teszik a Wi-Fi monitor módot az rpi0-n.

Fontos megjegyezni, hogy az Airdrop (vagy inkább az AWDL) csak a BLE csomag kézhezvétele után aktiválódik a betegek számára. Ezért néhány másodperces időközönként kell elküldenünk. Ez megtehető a segédprogrammal py-bluetooth-utils. A start_le_advertising() függvény segítségével elküldöm az adatsort az Apple bleee példáiból: 000000000000000001123412341234123400.

Ha van egy működő OWL démonod, akkor elindíthatod a villámat opendrop. Van egy szkript a tárolóban flooder.py, amely mindenkinek küld egy képet kak_dela.jpeg.

Megfigyeléseim szerint a málna pi zero w monitor módban instabil. Körülbelül 20 percnyi aktív elárasztó működés után a Wi-Fi alrendszer összeomlik. A problémát a szerző írja le pwnagochi, és feltehetően túlmelegedés okozza. Szükség van egy őrzőre vagy egy stabilabb hardver használatára

Maniacello mód - Tudom a számát

Ha nem megfelelő mániákusnak akarja mutatni magát, és örökre elriasztja a vágyat, hogy továbbra is kommunikáljon veled, megpróbálhatja megtudni a közelben lévő személy telefonszámát.

Mint korábban megtudtuk, a kezdeményező által küldött BLE-csomagok az sha256 telefonszám első három bájtját tartalmazzák. Ezt a hash-t akkor lehet elkapni, amikor az áldozat a „share” gombra kattint, és elkezdi az airdrop eszközöket, vagy megérinti a Wi-Fi jelszavát egy új hálózathoz a beviteli mezőben (ilyen módon az Apple olyan barátokat keres a hatótávolságon belül, akiktől kérhet a hálózati jelszót).

Valahogy ki kell váltania a hash üzenetet az áldozattól, és el kell kapnia. Segédprogramokat használok a tárolóból Apple Bleee. Mivel az eszközök Bluetooth MAC-címei véletlenszerűek és folyamatosan változnak, más módot kell találnia a kívánt eszköz meghatározására ebben a listában. A feladatot leegyszerűsíti, hogy az iOS közvetíti a telefon aktuális állapotát, mint például: képernyő kikapcsolva, képernyő bekapcsolva, képernyőzár, feloldva stb. Ezért egyszerűen az áldozat cselekedeteinek megfigyelésével összehasonlíthatja az eszköz aktuális állapotát a táblázatban szereplő eszközzel. A legegyszerűbb, ha elkapjuk azt a pillanatot, amikor a felhasználó előveszi a telefont a zsebéből, bekapcsolja a képernyőt és ujjával vagy arcával feloldja a telefon zárolását. Mindez látható lesz a szippantásban.

Hogyan használom az AirDrop-ot a Tinder helyett?
ikon Х azt jelenti, hogy a telefon kivonatokat tartalmazó csomagot elkapták.

Az elemzőjük néha elromlik, de legtöbbször működik. A sérülékenység lényegét nem fogom teljesen újra elmondani, mivel az Apple Blee szerzői részletesen kielemezték, csak a tapasztalataimat írom le. Csak annyit mondok, hogy CSR 8510 chipen USB Bluetooth adaptert használok, mivel az sokkal stabilabban működik nálam, mint a MacBookba épített és virtuális gépbe helyezett Bluetooth adapter.

Így elkaptuk a hash-t az áldozat telefonjáról, és megkaptuk az áhított három bájtot a telefonszám hashéből.

Hogyan használom az AirDrop-ot a Tinder helyett?
Elfogták a BLE-csomagot telefonszám-kivonattal a segédprogram segítségével read_ble_state.py

Tudjuk, hogy Oroszországban minden mobilszám +79 kóddal kezdődik, és valószínűleg áldozatunk telefonja is ugyanazzal a kóddal rendelkezik. Kiderült, hogy van egy +79000000000 és +79999999999 közötti számtartományunk, ami körülbelül egymilliárd szám.

A tartomány szűkítéséhez csak azokat a kódokat vesszük figyelembe, amelyeket bármely operátor ténylegesen regisztrált, a többit pedig eldobjuk. Ennek eredményeként a tartomány fele akkora, körülbelül félmilliárd számmá válik.

Ezután az összes számból generáljuk az sha256-ot, és minden hash-ből csak az első 3 bájtot mentjük el. Ezt a listát beírjuk az Sqlite adatbázisba, és indexet építünk a keresés felgyorsítására.

Az adatbázisban lévő adatok így néznek ki:

Hogyan használom az AirDrop-ot a Tinder helyett?
Az összes orosz telefonszám és a hash első három bájtja

Ezután, miután az áldozat hash-je van, megkereshetjük az összes egyezést az adatbázisban. Általában 15-30 egyezés van hashenként.

Hogyan használom az AirDrop-ot a Tinder helyett?
Minden szám, amely megegyezik az áldozat hashével

Nyilvánvalóan nem mindegyik számot használják ténylegesen. A feleslegeseket HLR kéréssel vagy láthatatlan SMS-sel levághatjuk. 30 számból 5 található az interneten.

Hogyan használom az AirDrop-ot a Tinder helyett?
A HLR kérés eredménye. A hálózati számok zöld színnel vannak kiemelve.

Folytathatnám a számok szűrését, például hozzáadhatnám őket a Telegramhoz/Whatsapphoz, és megnézhetném az avatarokat, átnézhetném az adatbázisokat, például a Getcontact-t és így tovább. De egyszerűbbnek bizonyult, ha egyenként hívja fel mind az öt számot, és figyeli, mikor csörög az áldozat telefonja.

Hogyan használom az AirDrop-ot a Tinder helyett?
A cél található

Minden

  • A Raspberry pi-n a flooder nagyon instabil, meg kell próbálni más egylapos táblákat.
  • Egy natív Flooder iOS-re sokkal jobb lenne, de nem találtam olyat, ami iOS 12-13-on működne még jailbreak mellett sem.
  • A flooder.py szkript nagyon hülye. Valószínűleg személyre szabott képet tud létrehozni, ha a nevet a címzett eszköznevéből veszi, és kivágja az iPhone szót.
  • A telefonszám meghatározásának módszere optimalizálható, ha csak azt a tényt ellenőrizzük, hogy a szám össze van-e kapcsolva az iMessage szolgáltatással. Ez nagy valószínűséggel közel 100%-os találati arányt eredményez.

Következtetés

Ez a tökéletes szórakozás a metró számára. Van wow effektus, ez érdekli a kíváncsiskodókat. Sok volt az improvizáció, voltak nagyon vicces esetek. Kiderült, hogy sokan készen állnak arra, hogy együtt játszanak, és még a terveiket is lemondják, hogy leszálljanak a metróállomáson és felmenjenek kávézni. Az év során sok emberrel találkoztam, és néhányukkal továbbra is kommunikálok.

Néha kikapcsolom a Telegram bejelentkezést és jól szórakozom így tetszik.

Hogyan használom az AirDrop-ot a Tinder helyett?

Hogyan használom az AirDrop-ot a Tinder helyett?

Forrás: will.com

Hozzászólás