— a zsebkészülék-multitool projekt Raspberry Pi Zero alapjain, IoT és vezeték nélküli hozzáférés-ellenőrző rendszerek pentesteléséhez. Emellett egy tamagocsi is, amelyben egy kiber-delfin él. El tudja majd:
- Működni 433 MHz tartományban — távirányítók, érzékelők, elektronikus zárak és relék vizsgálatára.
- NFC — olvasni/írni és ISO-14443 kártyákat emulálni.
- 125 kHz RFID — olvasni/írni és alacsony frekvenciás kártyákat emulálni.
- iButton kulcsok — olvasni/írni és 1-Wire protokollt használó érintkező kulcsokat emulálni.
- Wi-Fi — a vezeték nélkül kapcsolt hálózatok biztonságának ellenőrzésére. Az adapter támogatja a csomaginjekciót és az ellenőrző módot.
- Bluetooth — a Linuxhoz készült bluez csomag támogatása
- Bad USB mód — USB-slave-ként csatlakozhat, és emulálhat billentyűzetet, ethernet-adaptert és egyéb eszközöket, kód injekcióhoz vagy hálózati pentesthez.
- Tamagocsi! — az alacsony energiafogyasztású mikrokontroller akkor is működik, amikor a fő rendszer ki van kapcsolva.
Izgalommal mutatom be a legambiciózusabb projektomat, amelynek ötlete évek óta foglalkoztat. Ez egy kísérlet, hogy egyetlen eszközbe egybe gyűjtsem az összes gyakran szükséges eszközt a fizikai pentesthez, miközben személyiséget is adok neki, hogy aranyos legyen. Jelenleg a projekt a kutatás-fejlesztés és a funkciók jóváhagyási szakaszában van, és meghívlak mindenkit, hogy vegyen részt a funkciók megvitatásában vagy akár a fejlesztésben. Az alábbiakban részletes leírás található a projektről.
Miért van szükség erre?
Szeretem felfedezni a körülöttem lévő világot, és folyamatosan magammal hordok különböző eszközöket ehhez. A hátizsákomban van: WiFi adapter, NFC olvasó, SDR, Proxmark3, HydraNFC, Raspberry Pi Zero (emiatt néha problémák adódnak a repülőtéren). Ezeket az eszközöket nem könnyű használni útközben, amikor az egyik kezedben egy csésze kávé van, vagy éppen biciklizel. Ülnöm kell, rendezni és elővenni a számítógépet — ez nem mindig kényelmes. Olyan eszközről álmodtam, amely képes megvalósítani a tipikus támadási forgatókönyveket, mindig készen áll és nem csupán egy összetömörített, széteső lapkák halmazát jelenti, amelyeket szigetelőszalaggal rögzítettek.
Raspberry Pi Zero W akkumulátoros UPS-Lite v1.0 shielddel, mint önálló flooder, képek küldésére Apple eszközökre AirDrop-on keresztül. Nemrég, miután nyilvánosságra hozták az AirDrop protokoll nyílt megvalósítását. és a HexWay csapatának kutatása az iOS sebezhetőségeiről , elkezdtem egy új szórakozási formát keresni: emberekkel ismerkedni a metrón, képeket küldve nekik AirDropon, és begyűjtve a telefonszámukat. Aztán automatizálni akartam ezt a folyamatot, ezért készítettem egy önálló dic-pik gépet Raspberry Pi Zero W-ből és egy akkumulátorból. Ez a téma megérne egy külön cikket, amit valahogy soha nem tudok befejezni. Minden szép és jó, de ezt a készüléket rendkívül kényelmetlen volt magammal vinni, nem lehetett zsebre tenni, mert az éles forrasztáscseppek szétszakították a nadrág anyagát. Próbáltam 3D nyomtatón házat készíteni, de az eredmény nem tetszett.
Külön köszönet Annának a Telegram-csatorna vezetőjének aki kérésomra írt egy Telegram-botot , amely képeket generál szöveggel, a Telegram felhasználónévvel és a megfelelő képarányokkal, így azok teljes mértékben megjelennek az előnézeti képen, amikor AirDrop-on küldik őket. Gyorsan generálhatsz egy képet, ami a helyzetnek megfelelő. .
A Pwnagotchi egy e-ink képernyővel és akkumulátor védőburkolattal összeszerelve. Aztán láttam egy lenyűgöző projektet . Ez olyan, mint egy tamagocsi, csak élelemként WPA-hands shake-eket és PMKID-ket fogyaszt a Wi-Fi hálózatokból, amelyeket később GPU farmokon lehet bruteforce-olni. Annyira tetszett ez a projekt, hogy több napig sétáltam a pwnagotchival az utcákon, és néztem, ahogy örül az új zsákmánynak. De ugyanazokkal a problémákkal küzdött: nem lehetett normálisan zsebre tenni, nem voltak kezelőszervei, így bármilyen felhasználói bemenet csak telefonról vagy számítógépről lehetséges. És akkor végre megértettem, hogy milyennek képzelem az ideális multitoolt, amire szükségem volt. Írtam erről , és az ötlet elnyerte a barátaim ipari tervezők tetszését, akik komoly elektronikai cuccokat készítenek. Javasolták, hogy készítsünk egy teljes értékű eszközt, ahelyett, hogy csak egy térdprototípus készüljön. Valódi gyári gyártással és minőségi alkatrészekkel. Elkezdjük keresni a design koncepcióját. Kattintható. A Flipper Zero első dizájnvázlataiA házra és a dizájnra sok időt szántunk, mert elegem volt abból, hogy minden hackertartozék úgy néz ki, mint egy kupac PCB, amit szigetelőszalaggal ragasztottak össze, és nehezen használható normálisan. A feladat egy maximálisan kényelmes és kompakt ház és eszköz kitalálása volt, amellyel könnyedén lehet dolgozni számítógép vagy telefon nélkül, és íme, mi sült ki belőle. A jelenlegi állapotot részletezzük nem végleges az eszköz koncepciója.
Mi az a Flipper Zero
Lényegében a Flipper Zero több pajzs és egy akkumulátor egy Raspberry Pi Zero körül, ami egy kijelzővel és gombokkal ellátott házba van csomagolva. Mint operációs rendszer a Kali Linuxot használja, mivel ez már tartalmazza az összes szükséges javítást, és alapból támogatja az rpi0-t. Sok különböző egylapos számítógépet megvizsgáltam: NanoPi Duo2, Banana Pi M2 Zero, Orange Pi Zero, Omega2, de mind elveszítik az rpi0-val szemben, és íme miért:
- Beépített Wi-Fi adapter, amely támogatja a monitor módot és a csomagbefecskendezést ( javítások)
- Beépített Bluetooth 4.0
- Meglehetősen jó
- Hivatalosan támogatja a Kali Linuxot, és számos kész összeállítással rendelkezik, például
- Könnyű hozzáférés az SD-kártyához, gyorsan át lehet adni nagy mennyiségű adatot
Biztosan sokan mondják majd, hogy a Raspberry Pi nem a legjobb választás egy ilyen eszközhöz, és sok érvet hoznak fel, például a magas energiafogyasztást, az alvó üzemmód hiányát, a nem nyitott hardvert stb. De ha összehasonlítjuk az összes hátrányt és előnyt, nem találtam semmit, ami jobb lenne az rpi0-nál. Ha van véleményed erről, üdvözlünk a fejlesztői fórumon .
A Flipper Zero teljesen önálló, és egy 5-pozíciós joystick segítségével működtethető, anélkül hogy további eszközökre, például számítógépre vagy telefonra lenne szükség. A menüből előhívhatók az általános támadási szcenáriók. Természetesen nem minden tehető meg a joystickkal, ezért nagyobb irányítás érdekében SSH-n keresztül csatlakozhatunk USB-n vagy Wi-Fi/Bluetooth-on keresztül. Úgy döntöttem, hogy egy régi stílusú monokróm LCD kijelzőt használok 126x64px felbontással, mint a régi Siemens telefonokon. Egyrészt ez egyszerűen klassz; a narancssárga háttérvilágítású monokróm kijelzőm számomra leírhatatlan izgalmat kelt, egyfajta retro-militarista-kiberpunk stílusban. Kiválóan látható a ragyogó napsütésben, és nagyon alacsony energiafogyasztású, kb. 400uA háttérvilágítás nélkül. Ezért mindig bekapcsolt módban lehet tartani, és mindig megjeleníti a képet. A háttérvilágítás csak a gombok lenyomásakor fog felkapcsolódni.
Példák Siemens telefonok kijelzőire. Az ilyen képernyőket még mindig gyártják különböző ipari eszközök és pénztárgépek számára. Jelenleg mi ezt a kijelzőt választottuk, .
Flipper Zero portjai. A Flipper Zero élein standard Raspberry Pi portok találhatók, be-/kikapcsoló gomb, a szíjhoz való furat és egy extra szolgáltatási port, amelyen keresztül hozzáférhetünk az UART konzolhoz, tölthetjük az akkumulátort, és új firmware-t tölthetünk fel.
433 MHz adó

A Flipper egy beépített antennával rendelkezik 433 MHz-en és a chipet használja, amely <1GHz frekvenciatartományban működik, ugyanaz, mint a népszerű . Ez képes interceptálni és elemezni távirányítók, kulcstartók, különféle okos konnektorok és zárak jeleit. Támogatja a könyvtárral való munkát, és képes dekódolni, tárolni és visszajátszani a népszerű távirányítók kódjait, hasonlóan a Az esetekben, amikor a Raspberry Pi nem tudja időben feldolgozni a jelet, a CC1111 működését a beépített mikrokontroller szabályozhatja. Tamagocsi módban a Flipper kommunikálhat a hozzá hasonlókkal, és megjelenítheti azok neveit, ahogyan azt a pwnagotchi teszi.
Bad USB
A Flipper képes USB-slave eszközöket szimulálni és billentyűzetként viselkedni payload feltöltésére, hasonlóan a . Ezen kívül Ethernet adaptert is szimulálhat DNS hamisításhoz, soros portot stb. A Raspberry Pi számára létezik egy kész keretrendszer, amely különféle támadásokat valósít meg A megfelelő támadási forgatókönyvet a joystick menüjéből lehet kiválasztani. Közben a képernyőn megjelenhet a támadás állapotáról szóló hibakeresési információ vagy valami ártalmatlan a maszkolás érdekében.
WiFi
A Raspberry Pi-be épített Wi-Fi adapter alapértelmezés szerint nem támogatja a monitorozási módot és a csomaginjekciót, de léteznek , amelyek ezt a funkciót hozzáadják. Bizonyos típusú támadásokhoz két független Wi-Fi adapter szükséges. A nehézség abban rejlik, hogy szinte minden Wi-Fi chip USB-n keresztül csatlakozik, ezért nem foglalhatjuk el az egyetlen USB-t az rpi0-on, különben megszakad az USB Slave üzemmód. Ezért szükséges a Wi-Fi adapter SPI vagy SDIO interfészen való csatlakoztatása. Nem tudok egyetlen olyan chippet sem, amely dobozból kivéve támogatja a monitorozási módot és a csomaginjekciót, és NEM USB-n csatlakozik. Ha tud egyet, kérem, ossza meg a fórumon a témában.
NFC
Az NFC modul tud olvasni/írni minden ISO-14443 kártyát, beleértve a Mifare, banki érintés nélküli kártyák PayPass/PayWave, ApplePay/GooglePay stb. Támogatja a LibNFC könyvtár. A Flipper alján található egy 13,56 MHz-es antenna, és elegendő a kártyát ráhelyezni. Jelenleg nyitott kérdés a kártyák emulálása. Szeretnék egy teljeskörű emulátort, például , de szeretném, ha a LibNFC-vel is tudnék dolgozni. Nem tudom a PN532-nél jobb chip lehetőségét, de ez nem tudja teljes mértékben emulálni a kártyákat. Ha tud jobbat, kérem írja meg a témában.
125kHz RFID
A régi alacsony frekvenciás kártyák 125 kHz még mindig széles körben használatosak a kaputelefonokban, irodai beléptetőkben stb. A flipper oldalán található egy 125 kHz-es antenna, amely képes olvasni az EM-4100 és HID Prox kártyákat, eltárolni azokat és korábban mentett kártyákat emulálni. A kártya ID-ját is át lehet adni emulálásra az interneten vagy manuálisan beírni. Így a flipper tulajdonosai távolról megoszthatják egymással a leolvasott kártyákat. Szuper.
iButton
iButton — egy régi típusú kontaktkulcs, amely még mindig népszerű a FÁK-ban. Az 1-Wire protokollon működik, és nem rendelkezik hitelesítési eszközökkel, így könnyen olvasható. A Flipper képes olvasni ezeket a kulcsokat, eltárolja az ID-t a memóriájában, kiírja az ID-t a blankokra, és önállóan emulálja a kulcsot, így azt az olvasóhoz lehet érinteni, mint egy kulcsot. Olvasó üzemmód (1-wire master)
Ebben az üzemmódban az eszköz ajtóolvasóként működik. Ha a kulcsot a kontaktusokhoz érintjük, a Flipper elolvassa az ID-t és eltárolja a memóriában. Ebben az üzemmódban a mentett ID-t is ki lehet írni egy blankára.Kulcsemulációs üzemmód (1-wire slave)
A mentett kulcsokat az 1-wire slave módban lehet emulálni. A Flipper kulcsként működik, és az olvasóhoz érinthető. A fő kihívás az volt, hogy olyan kontaktplatform konstrukciót találjunk ki, amely egyszerre használható olvasóként és kulcsként. Megtaláltuk ezt a formát, de biztos vagyok benne, hogy még jobbat is lehetne készíteni; ha tudod, hogyan, javasolj egy megoldást a fórumon a témában.
Bluetooth
Beépített Bluetooth-adapter a Raspberry Pi-be. Természetesen nem helyettesítheti az olyan eszközöket, mint a , de teljes mértékben támogatja a bluez könyvtárat, használható a Flipper mobiltelefonról történő vezérlésére, vagy különféle Bluetooth támadásokhoz, mint például , amely lehetővé teszi mobiltelefon-számok sha256 összegyűjtését, amelyek hozzá vannak kötve az Apple ID-hoz, és különböző IoT-eszközök vezérlését is.
Alacsony energiafogyasztású mikrokontroller
Mivel a Flipper túl menő ahhoz, hogy kikapcsoljuk, úgy döntöttünk, hogy egy külön alacsony energiafogyasztású mikrokontrollert építünk bele, amely működni fog, amikor a Raspberry Pi ki van kapcsolva. Ez irányítja a tamagotchi-t, ellenőrzi a Raspberry Pi indítási folyamatát, amíg az készen nem áll a kijelző kezelésére, és vezérli az áramellátást. Ugyanakkor a CC1111 chipet is vezérli, hogy kommunikáljon más Flipperekkel.
Tamagotchi üzemmód
A Flipper egy kiber-delfin hacker, aki minden digitális elem fölött uralkodik. Amikor a Raspberry Pi ki van kapcsolva, a tamagotchi üzemmódba lép, amellyel játszani és barátokat találni lehet a 433 MHz-es frekvencián. Ebben az üzemmódban a NFC funkciók valószínűleg részben elérhetők lesznek.
A karakter prototípusa a film delfinje volt amely segített agyra menni Keanu Reeves-nek és sugárzásával szétlőni a rossz fiúkat. A delfineknek van egy beépített frekvenciagenerátoruk, amellyel felfedezik a környezetüket, és veleszületett igényük van a szórakozásra és a természetes kíváncsiságra. Szükségünk van egy emberre, aki képes kidolgozni Flipper személyiségét, az egész játéktervezést, az érzelmektől kezdve a mini-játékokig. Minden gondolatot erről a témáról a megfelelő részbe lehet írni az illetékes rész.
Rólam
A nevem Pavel Zsovner, Moszkvában élek. Jelenleg a moszkvai Gyerekkorom óta mélyen szeretem felfedezni a körülöttem lévő világot: a természetet, a technológiát, az embereket. Fő specializációm: hálózatok, hardver és biztonság. Soha nem használom a 'hackker' szót, mert a médiának köszönhetően ez teljesen leértékelődött. Inkább magamra mondom, hogy 'geek', mert ez őszintébb és patetika nélkül fejezi ki a lényeget. Az életben értékelem azokat a szenvedélyes embereket, akik mélyen emocionálisan részt vesznek abban, ami érdekli őket, akiket szintén bátran lehet geeknek nevezni. A Flipper Zero az én próbálkozásom, hogy valami igazán menőt és nagyszabásút, és ugyanakkor szépet alkossak. Hiszek az open source-ban, ezért a projekt teljesen nyitott lesz. Jelenleg van egy kis csapatom, de hiányoznak a szűk értelemben kompetens emberek, különösen a rádió terén. Ezzel a poszttal remélem, hogy találok olyan embereket, akik csatlakozni szeretnének a projekthez.
Csatlakozni a projekthez
Mindenkit invitálok, akinek tetszik ez a projekt, hogy bármilyen elérhető módon részt vegyen a fejlesztésben. Ebben a szakaszban le kell zárnunk a végső funkciók listáját, hogy elkezdjük az eszköz első verziójának megvalósítását. Számos technikai kérdés van, amely jelenleg megoldásra vár.
Fejlesztőknek
Minden aktuális R&D feladatunkat a fórumon fogjuk megbeszélni . Ha Ön hardver- vagy szoftverfejlesztő, vagy bármilyen kérdése, javaslata, kritikája van — bátran írja meg a fórumra. Ez a fő hely, ahol az összes fejlesztési szakasz, közösségi finanszírozás, gyártás megbeszélése zajlik. A fórumon való kommunikáció csak angol nyelven, ne habozzon hibásan írni, a lényeg, hogy a tartalom érthető legyen.
Szavazzon a funkciókra
Fontos számunkra tudni, hogy milyen funkcióknak kell szerepelniük a flippen. Ez fogja meghatározni a fejlesztési prioritásokat. Lehet, hogy tévedek, amikor azt hiszem, hogy bizonyos funkciók fontosak, vagy éppen ellenkezőleg, kihagyok valamit. Például kétségeim vannak az iButtonnal kapcsolatban, mivel ez egy elavult technológia. Kérlek, végezd el a rövid felmérést:
Pénzt küldeni
Amikor elkészül a prototípus és a projekt készen áll a Kickstarterhez hasonló közösségi finanszírozó platformra való megjelenésre, akkor lehetőség lesz az előrendelés kifizetésére. Jelenleg személyesen támogathatsz engem kisebb étkezési adományokkal a következő linken: . A rendszeres, 1$-os adományok sokkal jobbak, mint egy nagy összeg egyszerre, mert lehetővé teszik a tervezést a jövőre nézve. Adományozási link:
Megjegyzés
A projekt nagyon korai szakaszban van, a weboldalon lehetnek hibák, görbe elrendezések és egyéb problémák, ezért ne bánts túlzottan. Kérlek, jelezd nekem az összes észlelt hibát és pontatlanságot. Ez a projekt első nyilvános említése, és a segítségeddel remélem, hogy megszüntetem az összes durvaságot, mielőtt közzétenném a nagy angol nyelvű interneteken.
Az összes megjegyzést a projektről a Telegram-csatornámon teszem közzé .
Forrás: habr.com
