— een project voor een draagbare multitool gebaseerd op Raspberry Pi Zero voor pentests van IoT en draadloze toegangscontrolesystemen. En daarnaast is het een tamagotchi waarin een cyberdolfijn leeft. Het zal in staat zijn om:
- Te werken in het 433 MHz-bereik — voor het onderzoeken van afstandsbedieningen, sensoren, elektronische sloten en relais.
- NFC — om ISO-14443 kaarten te lezen/schrijven en te emuleren.
- 125 kHz RFID — om laagfrequente kaarten te lezen/schrijven en te emuleren.
- iButton-sleutels — om contactsleutels die werken volgens het 1-Wire protocol te lezen/schrijven en te emuleren.
- Wi-Fi — voor het testen van de beveiliging van draadloze netwerken. De adapter ondersteunt pakketinjecties en monitormodus.
- Bluetooth — ondersteunt het bluez-pakket voor Linux
- Bad USB-modus — kan zich als USB-slave aansluiten en een toetsenbord, ethernetadapter en andere apparaten emuleren voor code-injectie of netwerkpentests.
- Tamagotchi! — de microcontroller met een laag energieverbruik werkt wanneer het hoofd systeem is uitgeschakeld.
Ik kijk er met spanning naar uit om mijn meest ambitieuze project voor te stellen, een idee dat ik jarenlang heb gekoesterd. Dit is een poging om alle vaak benodigde tools voor fysieke pentests in één apparaat samen te brengen, en daarbij een persoonlijkheid toe te voegen zodat het schattig is. Op dit moment bevindt het project zich in de R&D-fase en de goedkeuring van functionaliteit, en ik nodig iedereen uit om deel te nemen aan de discussie over functies of zelfs deel te nemen aan de ontwikkeling. Onder de lijn staat een gedetailleerde beschrijving van het project.
Waarom is dit nodig?
Ik hou ervan om alles om me heen te verkennen en sleep constant verschillende tools met me mee. In mijn rugzak heb ik: WiFi-adapter, NFC-lezer, SDR, Proxmark3, HydraNFC, Raspberry Pi Zero (dit leidt soms tot problemen op de luchthaven). Het is niet zo eenvoudig om al deze apparaten onderweg te gebruiken als je in één hand een kop koffie hebt of op een fiets rijdt. Je moet gaan zitten, alles uitpakken, de computer erbij pakken — dat is niet altijd handig. Ik droomde van een apparaat dat typische aanvalsscenario's kon uitvoeren, altijd klaar zou zijn voor gebruik en tegelijkertijd geen stapel afgebroken printplaten was, vastgeplakt met ducttape.
Raspberry Pi Zero W met een batterij UPS-Lite v1.0 als een autonome flooder om afbeeldingen naar Apple-apparaten via AirDrop te sturen. Onlangs, nadat een open implementatie van het AirDrop-protocol was gepubliceerd, en een onderzoek van de mensen van HexWay over kwetsbaarheden in iOS , ik begon me op een nieuwe manier te vermaken: mensen in de metro leren kennen door ze foto's te sturen via AirDrop en hun telefoonnummers te verzamelen. Toen wilde ik dit proces automatiseren en maakte een autonome dick-pic machine van een Raspberry Pi Zero W en een batterij. Dit onderwerp verdient een apart artikel, dat ik maar niet kan afmaken. Alles was goed, maar dit apparaat was uiterst onhandig om mee te nemen, je kon het niet in je zak stoppen omdat scherpe soldeerpunten de stof van de broek scheurden. Ik probeerde de behuizing met een 3D-printer te printen, maar het resultaat beviel me niet.
Een speciaal dankwoord aan Anna Kotsjov, de manager van het Telegram-kanaal die op mijn verzoek een Telegram-bot schreef , die afbeeldingen genereert met tekst, Telegram-gebruikersnamen en de juiste beeldverhouding, zodat ze volledig worden weergegeven in de preview bij verzending via AirDrop. Je kunt snel een afbeelding genereren die geschikt is voor de situatie; het ziet eruit als .
Pwnagotchi in aanbouw met een e-ink scherm en batterijshield. Toen zag ik een geweldige project . Het is als een tamagotchi, maar in plaats van voedsel eet het WPA-handshakes en PMKID van Wi-Fi-netwerken, die dan kunnen worden gebroken op GPU-boerderijen. Ik vond dit project zo leuk dat ik een paar dagen met mijn pwnagotchi door de straten liep en keek hoe hij blij was met zijn nieuwe vangst. Maar het had al diezelfde problemen: je kon het niet goed in je zak stoppen, er waren geen bedieningsorganen, dus elke gebruikersinvoer was alleen mogelijk via een telefoon of computer. En toen begreep ik eindelijk hoe ik de ideale multitool zag die ik miste. Ik schreef hierover en het idee viel in de smaak bij mijn vrienden, industrial designers die serieuze elektronische dingen maken. Ze stelden voor om een volwaardig apparaat te maken, in plaats van een DIY-project op de knieën. Met echte fabriekproductie en prima op maat gemaakte onderdelen. We begonnen met het zoeken naar een designconcept. Klikbaar. Eerste schetsen van het ontwerp van Flipper Zero. Er is veel tijd besteed aan de behuizing en het ontwerp, omdat ik het zat ben dat alle hackapparaten eruitzien als een hoop PCB's, bijeengehouden door isolatietape en moeilijk te gebruiken zijn. De taak was om een zo handig en compact mogelijk apparaat te bedenken dat autonoom kan worden gebruikt zonder computer of telefoon, en dit is wat eruit gekomen is. Hierna wordt het huidige niet definitieve concept van het apparaat beschreven.
Wat is Flipper Zero?
In wezen is Flipper Zero een aantal shields en een batterij rondom een Raspberry Pi Zero, verpakt in een behuizing met een scherm en knoppen. Als besturingssysteem wordt Kali Linux gebruikt, aangezien dit al alle nodige patches bevat en standaard ondersteuning biedt voor rpi0. Ik heb naar veel verschillende single-board computers gekeken: NanoPi Duo2, Banana Pi M2 Zero, Orange Pi Zero, Omega2, maar al deze zijn inferieur aan rpi0 en hier is waarom:
- Ingebouwde Wi-Fi adapter, die monitormodus en packet injection ondersteunt ( patches)
- Ingebouwde Bluetooth 4.0
- Redelijk goede
- Officieel ondersteund door Kali Linux en heeft een aantal kant-en-klare builds zoals
- Gemakkelijke toegang tot de SD-kaart, waardoor je snel een grote hoeveelheid gegevens kunt overdragen.
Zeker zullen velen zeggen dat Raspberry Pi niet de beste keuze is voor zo'n apparaat en zullen ze talloze argumenten aanhalen, zoals hoog energieverbruik, gebrek aan slaapstand, niet-open hardware, enz. Maar als ik alle nadelen en voordelen vergelijk, heb ik niets beter gevonden dan rpi0. Als je hier iets over te zeggen hebt, welkom op het ontwikkelaarsforum .
Flipper Zero is completely standalone and can be controlled using a 5-position joystick without additional devices like a computer or phone. You can call standard attack scenarios from the menu. Of course, not everything can be done with the joystick, so for more control, you can connect via SSH over USB or Wi-Fi/Bluetooth. I decided to use an old-school monochrome LCD display with a resolution of 126x64px like the ones on old Siemens phones. Firstly, it's just cool; the monochrome screen with orange backlighting gives me indescribable joy, a kind of retro-military-cyberpunk vibe. It's easily visible in bright sunlight, and it has very low power consumption, around 400uA with the backlight off. Therefore, it can be kept in Always-On mode and always display an image. The backlight will turn on only when keys are pressed.
Examples of screens on Siemens phones. Such screens are still produced for various industrial devices and cash registers. Currently, we chose .
Ports of Flipper Zero. On the edges, Flipper Zero has standard Raspberry Pi ports, a power/backlight button, a strap hole, and an additional service port that allows access to the UART console, charge the battery, and upload new firmware.
433 MHz transmitter

Flipper has a built-in antenna at 433 MHz and the chip , for operation in the <1GHz range, just like in the popular device . It can intercept and analyze signals from remote controls, key fobs, various smart sockets, and locks. It supports working with the library and can decode, store, and replay popular remote control codes, similar to . In cases where Raspberry Pi cannot process the signal in time, the built-in microcontroller can control the CC1111 operation. In tamagotchi mode, Flipper can communicate with similar devices and display their names, just like pwnagotchi.
Bad USB
Flipper can emulate USB slave devices and pretend to be a keyboard for payload injection, similar to . It can also emulate an Ethernet adapter for DNS spoofing, a serial port, etc. For Raspberry Pi, there is a ready-made framework implementing various types of such attacks Het juiste aanvalsscenario kan worden geselecteerd via het menu met de joystick. Op het scherm kan debug-informatie over de status van de aanval worden weergegeven of iets onschuldig ter camouflage.
WiFi
De ingebouwde Wi-Fi adapter van de Raspberry Pi ondersteunt oorspronkelijk geen monitor-modus voor pakketinjectie, maar er zijn , die deze functie toevoegen. Voor bepaalde soorten aanvallen zijn twee onafhankelijke Wi-Fi adapters nodig. Het probleem is dat bijna alle Wi-Fi chips via USB zijn aangesloten, en we kunnen de enige USB-poort op de rpi0 niet bezet houden, anders werkt de USB Slave-modus niet meer. Daarom is het nodig om de SPI of SDIO interface te gebruiken om de Wi-Fi adapter aan te sluiten. Ik ken geen enkele chip die standaard monitor-modus en pakketinjectie ondersteunt zonder via USB aangesloten te zijn. Als je er een kent, laat het me dan weten op het forum in het onderwerp
NFC
De NFC-module kan alle ISO-14443 kaarten lezen/schrijven, inclusief Mifare, contactloze bankkaarten PayPass/PayWave, ApplePay/GooglePay, enzovoort. Ondersteund door de LibNFC-bibliotheek. Onderin de Flipper zit een antenne op 13,56 MHz, en voor het werken met de kaart is het voldoende om deze erbovenop te leggen. Momenteel is de vraag van kaartemulatie nog open. Ik zou graag een volledige emulator willen zoals , maar ik wil ook de mogelijkheid hebben om met LibNFC te werken. Ik ken geen andere chipvarianten dan de NXP PN532, die echter niet in staat is om kaarten volledig te emuleren. Als je een betere optie kent, laat het me weten in het onderwerp
125kHz RFID
Oude laagfrequente kaarten van 125 kHz worden nog steeds veel gebruikt in intercomsystemen, kantoorpassen, enzovoort. Aan de zijkant van de Flipper is er een 125 kHz antenne, hij kan EM-4100 en HID Prox kaarten lezen, deze opslaan in het geheugen en eerder opgeslagen kaarten emuleren. Ook kan het ID van de kaart voor emulatie via internet worden verzonden of handmatig worden ingevoerd. Op deze manier kunnen Flipper-eigenaren gelezen kaarten op afstand naar elkaar verzenden. Geweldig.
iButton
iButton — een oud type contactsleutels die nog steeds populair zijn in de GOS. Ze functioneren via het 1-Wire protocol en hebben geen authenticatiemiddelen, waardoor ze gemakkelijk kunnen worden gelezen. De Flipper kan deze sleutels lezen, de ID opslaan in het geheugen, de ID op blanken schrijven en de sleutel zelf emuleren, zodat deze als een sleutel tegen de lezer kan worden gehouden. Lezer modus (1-wire master)
In deze modus functioneert het apparaat als een deurlezer. Door de sleutel tegen de contacten te houden, leest de Flipper de ID en slaat deze op in het geheugen. In dezelfde modus kan ook de opgeslagen ID op een blanke worden geschreven.Sleutel emulatiemodus (1-wire slave)
Opgeslagen sleutels kunnen worden geëmuleerd in de 1-wire slave modus. De Flipper fungeert als de sleutel en kan tegen de lezer worden gehouden. De grootste uitdaging was het bedenken van een ontwerp voor het contactoppervlak dat zowel als lezer als sleutel kon worden gebruikt. We hebben zo'n vorm gevonden, maar ik ben ervan overtuigd dat het nog beter kan, en als je een idee hebt, deel het dan op het forum in het betreffende onderwerp.
Bluetooth
Ingebouwde Bluetooth-adapter in de Raspberry Pi. Natuurlijk kan het niet worden vervangen door apparaten zoals , maar het wordt volledig ondersteund door de bluez bibliotheek, kan worden gebruikt om de Flipper te besturen vanaf een smartphone of voor verschillende aanvallen op bluetooth zoals , wat het mogelijk maakt om sha256 te verzamelen van de mobiele telefoonnummers die aan Apple ID zijn gekoppeld, en ook om diverse IoT-apparaten te beheren.
Microcontroller met een laag stroomverbruik
Aangezien de Flipper te gaaf is om uit te schakelen, hebben we besloten om een aparte microcontroller met een laag stroomverbruik erin te plaatsen die werkt wanneer de Raspberry Pi is uitgeschakeld. Deze zal het tamaguchi beheren, het opstartproces van de Raspberry Pi controleren tot het klaar is om het scherm te beheren en de voeding beheren. Het zal ook de CC1111-chip beheren voor communicatie met andere Flippers.
Tamaguchi modus
De Flipper is een cyber-dolfijn hacker die alle digitale elementen beheerst. Wanneer de Raspberry Pi is uitgeschakeld, schakelt hij over naar de tamaguchi modus, waarmee je kunt spelen en vrienden kunt maken op de frequentie van 433 MHz. In deze modus zijn waarschijnlijk gedeeltelijk NFC-functies beschikbaar.
Het personage is geïnspireerd op de dolfijn uit de film die de hersenen van Keanu Reeves hielp hacken en met zijn straling de slechte jongens vermaakte. Dolfijnen hebben een ingebouwde frequentiegenerator waarmee ze alles om zich heen verkennen, evenals een aangeboren behoefte aan vermaak en natuurlijke nieuwsgierigheid. We hebben iemand nodig die een persoonlijkheid voor Flipper kan bedenken, het hele game-ontwerp, van emoties tot mini-games. Al je ideeën hierover kunnen worden geschreven in het bijbehorende gedeelte.
Over mij
Mijn naam is Pavel Zhivner, ik woon in Moskou. Op dit moment leid ik de Moskou . Mijn hele leven ben ik gefascineerd door alles om me heen: de natuur, technologie, mensen. Mijn belangrijkste specialisatie: netwerken, hardware en beveiliging. Ik probeer nooit het woord "hacker" te gebruiken, omdat het door de media en publiciteit volledig in waarde is gedaald. Ik noem mezelf graag een "nerd" omdat het eerlijker en zonder poespas de essentie blootlegt. In het leven waardeer ik gepassioneerde mensen die zich diep emotioneel betrokken voelen bij wat hen interesseert, en die ook gerust nerds genoemd kunnen worden. Flipper Zero is mijn poging om iets echt indrukwekkends en groots te creëren, en tegelijkertijd mooi. Ik geloof in open source, dus het project zal volledig open zijn. Op dit moment heb ik een klein team, maar we hebben mensen nodig met gespecialiseerde kennis, vooral in radio. Met deze post hoop ik mensen te vinden die zich bij het project willen aansluiten.
Deelname aan het project
Ik nodig iedereen uit die dit project leuk vindt, om op elke mogelijke manier deel te nemen aan de ontwikkeling. In deze fase moeten we de definitieve lijst van functies goedkeuren, zodat we kunnen beginnen met de implementatie van de eerste versie van het apparaat. Er zijn veel technische vragen die op dit moment niet zijn opgelost.
Voor ontwikkelaars
We zullen al onze huidige R&D-taken op het forum bespreken . Als je een hardware- of softwareontwikkelaar bent, of als je vragen, advies, voorstellen of kritiek hebt, aarzel dan niet om deze op het forum te schrijven. Dit is de belangrijkste plek waar de discussie over alle fasen van de ontwikkeling, crowdfunding en productie zal plaatsvinden. Communicatie op het forum is alleen in het Engels, aarzel niet om onhandig te schrijven, het belangrijkste is dat de betekenis duidelijk is.
Stem op functies
Het is voor ons heel belangrijk om te weten welke functies de flipper moet hebben. Dit zal de prioriteiten in de ontwikkeling bepalen. Misschien denk ik ten onrechte dat bepaalde functies belangrijk zijn, of mis ik juist iets. Ik heb bijvoorbeeld twijfels over de iButton, aangezien dit een verouderde technologie is. Daarom verzoek ik je om een korte enquête in te vullen:
Stuur geld
Wanneer het prototype klaar is en het project klaar is om op een crowdfundingplatform zoals KickStarter gebracht te worden, kun je je pre-order betalen. Op dit moment kun je me persoonlijk steunen met kleine donaties voor voedsel via . Reguliere donaties van 1$ zijn veel beter dan een groot bedrag in één keer, omdat ze helpen om vooruit te kunnen plannen. Donatielink:
Disclaimer
Het project bevindt zich in een zeer vroeg stadium; de site kan fouten, kromme opmaak en andere problemen bevatten, dus wees niet al te hard met kritiek. Meld me alstublieft alle gevonden fouten en onnauwkeurigheden. Dit is de eerste publieke vermelding van het project, en met jouw hulp hoop ik alle hobbels te verhelpen voordat ik het publiceer in de grote Engelstalige online wereld.
Alle aantekeningen over het project publiceer ik op mijn Telegram-kanaal .
Bron: habr.com
