Door Peter de Boer

Doktersteam

Biometrische beveiliging usb-sticks ook niet de oplossing

27-04-2007 • 10:20

53

Multipage-opmaak

Inleiding

Onlangs publiceerden we een artikel over de Secustick. Ondanks de claims op de website bleek de stick niet zo veilig als werd gedacht. Leverancier USB-Secured.com greep dat artikel aan om zijn met vingerafdruk beveiligde sticks ter test bij de redactie aan te bieden. Was dat wel zo verstandig? Huistechneut en inmiddels vermaard usb-stick-hacker Sprite_tm heeft zich enkele uren vermaakt met de sticks.

USB-Secured.com logoUSB-Secured.com levert twee verschillende uitvoeringen van zijn beveiligde sticks: de witte US-A2 (vreemd genoeg blauw op de afbeeldingen op de website van de leverancier) en de zilverkleurige US-A1. De eerste beschikt over een opslagcapaciteit van 1GB, een met 256bits-aes-encryptie beveiligde partitie voor zaken die de eigenaar graag voor zichzelf wil houden en een onbeveiligde partitie voor minder geheime bestanden. Vingerafdrukherkenning moet garant staan voor een optimale beveiliging. De US-A1 wordt in de markt gezet als de extra beveiligde uitvoering: alle functies zijn beveiligd middels een vingerafdruk. De zilveren versie heeft ook meer mogelijkheden: zo kunnen bestanden met een scan van de vingertop versleuteld worden en wachtwoorden van websites bewaard worden. De stick kan ook een versleuteld virtueel bestandssysteem op de lokale harde schijf creëren en ten slotte kan hij gebruikt worden om de Windows-pc van de eigenaar te ver- en ontgrendelen.

De sticks zijn momenteel niet in de detailhandel verkrijgbaar maar worden alleen in het b2b-kanaal aangeboden voor een bedrag vanaf 69 euro. De leverancier heeft ze in China laten ontwikkelen en voor de software wordt gebruik gemaakt van een pakket van Symwave.

USB-Secured.com doos met zilveren stick
De zilveren usbstick in verpakking

Beide sticks worden geleverd in een kartonnen verpakking, met een kleine gebruiksaanwijzing en een draagkoord en in het geval van het zilverkleurige exemplaar komt daar nog een usb-verlengkabel bij. Deze sticks claimen niet dat ze zichzelf vernietigen, dus we konden zonder risico voor lijf en leden de beide sticks openen. Het demonteren is niet onmogelijk, maar de sticks zijn degelijk genoeg om ze in het dagelijkse gebruik voldoende te beschermen. Zowel de US-A1 als de US-A2 bevat redelijk standaard hardware: een chip die de communicatie tussen de usb-poort, het geheugen en de vingerafdruksensor regelt, 1GB nand-flashgeheugen en een vingerafdruksensor.

De software

De twee sticks worden geleverd met verschillende software, maar het principe van beide programma's is gelijk. De eerste keer dat een stick wordt gebruikt, moet er tenminste één vinger worden gescand. De US-A2 ondersteunt het inloggen op een Windows-computer, dus kunnen ook de Windows-logingegevens ingevoerd worden. Bij de US-A1 kan nog de grootte van de onbeveiligde partitie ingesteld worden.

USB-Secured.com software
Schermafbeelding van de software

Beide sticks emuleren een cd-rom-station om gebruik te kunnen maken van de autorunfunctionaliteit die Windows biedt. Op het moment dat een stick in de computer wordt geplugd, start een programma dat om de vingerafdruk vraagt. Als de juiste vinger herkend wordt emuleert de witte variant een extra schijfstation. De zilveren uitvoering geeft dan de beveiligde partitie in het geëmuleerde cd-rom-station weer. Beide sticks hebben een icoon in de taakbalk om de verschillende functies te kunnen gebruiken, maar de zilveren uitvoering moet daartoe eerst een programma installeren. Het zal dus niet mogelijk zijn deze stick te gebruiken zonder over beheerdersrechten te beschikken.

USB-Secured.com extra mogelijkheden software

De zilveren stick

USB-Secured.com zilveren stickOp de site van de leverancier staat dat de gegevens op het zilveren exemplaar met aes-encryptie zijn beveiligd; het lijkt er echter op dat dit alleen bij de witte stick het geval is. We besloten daarom de beveiliging van het zilveren exemplaar als eerste te testen. Er zijn twee Windows-programma’s die gebruikt worden door de stick. Het eerste is het programma dat automatisch opstart bij het gebruiken van de stick en is verantwoordelijk voor het vrijgeven van de beveiligde partitie. Het tweede programma zorgt voor de overige functionaliteit van de stick, zoals het inloggen op websites en toegang tot je favorieten. Beide programma’s maken gebruik van dezelfde database met vingerafdrukken, maar werken voor de rest volledig onafhankelijk van elkaar: als je al bent ‘ingelogd’ op het beveiligde gedeelte van de schijf zul je nogmaals je vinger moeten laten scannen om de andere mogelijkheden te gebruiken.

Zoals gezegd emuleert de stick een cd-romstation op het moment dat hij op een pc aangesloten wordt. Het autorunprogramma dat dan opstart, is in feite een gecomprimeerd bestand dat zichzelf uitpakt naar de tempdirectory van de ingelogde Windows-gebruiker, beheerderrechten zijn daarvoor dus niet nodig. Er worden tijdens het uitpakken verschillende dll-bestanden en een uitvoerbaar bestand in de tijdelijke directory geplaatst. We besloten het .exe-bestand in de debugger te laden.

USB-Secured.com tijdelijke bestanden van de zilveren stick

Na enig onderzoek van de verschillende routines in het programma viel ons oog op een functie in een van de bijgeleverde dll’s. De naam van de routine, MediaChange2Flash, deed een lichtje branden, immers het programma verwisselt het geëmuleerde cd-rom-station voor de beveiligde partitie als een juiste vingerafdruk wordt herkend. Gezien de naam van de routine leek het logisch te veronderstellen dat deze routine hier verantwoordelijk voor is. We probeerden de aanroep van een willekeurige andere functie - CheckSensorStatus - te verwisselen voor een aanroep naar de MediaChange2Flash-routine. Na het starten van het programma kwam er een foutmelding: ‘No device found’. Echter, op hetzelfde moment werd de beveiligde partitie in de Windows-verkenner zichtbaar; de beveiliging van de opgeslagen bestanden was al bezweken. Helemaal waardeloos is de stick op dit moment nog niet, de opgeslagen wachtwoorden, favorieten, het virtuele bestandssysteem en alle andere zaken die door het tweede programma worden afgehandeld hebben voor het benaderen nog steeds een vingerafdruk nodig. We besloten te kijken of dat zo zou blijven.

USB-Secured.com debugvenster zilveren stick

Na een hoop gezoek door het woud van elkaar aanroepende dll-bestanden bleek dat het valideren van een vingerafdruk in een bepaalde routine plaatsvindt: bHMFVVerify. Door een aantal goede en foute vingerafdrukken in het systeem te traceren konden we de werking van de routine vrij snel achterhalen. In de eerste stappen wordt de kwaliteit van de afdruk gecontroleerd: is de afdruk een normale vingerafdruk? In de daarop volgende routine wordt uiteindelijk de gescande afdruk vergeleken met een afdruk in de database. Het bleek relatief eenvoudig een stukje code te schrijven die de routine aanpast: na het toevoegen van deze code werd iedere willekeurige vingerafdruk als een geldige scan herkend. Door slechts 1 byte in een dll-bestand aan te passen was ook de tweede beveilingsbarriere van de zilveren stick geslecht.

Het is bij de stick overigens ook mogelijk als extra beveiliging een wachtwoord op te geven. We hebben niet meer uitgebreid naar deze mogelijkheid gekeken, maar de ervaring die we bij het bekijken van het programma in de debugger hebben opgedaan sterkt ons in het vermoeden dat deze beveiliging op dezelfde eenvoudige wijze te omzeilen is. De eerste stick heeft het verloren, nu de tweede nog.

De witte stick

USB-Secured.com witte stickDe beveiliging van de witte stick werkt zoals gezegd door een gedeelte van de ruimte op de stick te versleutelen met 256bit-aes-encryptie. We hebben niet onderzocht of de gebruikte encryptiemethode werkelijk aes is, maar dat ligt wel voor de hand: het is een zeer betrouwbare en eenvoudig te implementeren techniek. Juist omdat een goede implementatie van het aes-algoritme zo sterk is besloten we onze aandacht op de sleutel te richten. Die moet zich immers op de stick bevinden om de versleutelde data weer vrij te geven. De witte stick gebruikt slechts een enkel programma om alle functies vrij te geven. Een voordeel hiervan is dat er geen extra software op de pc hoeft te worden geïnstalleerd. De werkwijze is verder gelijk aan de vorige stick: het inpluggen van het apparaatje zorgt voor een geëmuleerd cdrom-station en autorun.exe plaatst een aantal bestanden in een tijdelijke directory.

USB-Secured.com tijdelijke bestanden van de witte stick
Tijdelijke bestanden van de witte versie

De applicatie werd weer in de debugger geladen en binnen de kortste keren wisten we een routine te vinden in ‘truedisk.dll’ die de verschillende bewerkingen op de versleutelde schijf uitvoert. Ook het commando om het beveiligde gedeelte als onbeveiligde schijf te mounten wordt vanuit deze dll gegeven. We plaatsten een breakpoint in de routine en na het invoeren van een geldige vingerafdruk hadden we de beschikking over de juiste sleutel. Het leek nu eenvoudig de locatie van de opgeslagen sleutel op de stick op te sporen, die hebben we immers nodig om andere sticks waarvan we niet zelf een vingerafdruk hebben ingegeven te kraken. Hoe goed we echter ook zochten, we konden de locatie niet achterhalen - noch in het versleutelde bestand, noch in het geheugen, noch in de programmaroutines was enig spoor van de key te vinden. Een kleine tegenslag.

USB-Secured.com debugvenster witte stick (klein)
Debugvenster witte stick, klik voor groter.

We lieten ons echter niet uit het veld slaan. We konden met de kennis van de goede sleutel niet de locatie van de opgeslagen sleutel terugvinden en moesten daarom kiezen voor een andere aanpak: via het programma opsporen welke routines de sleutel aanroepen en zo de locatie proberen te achterhalen. Na enige tijd wisten we de routine te vinden die verantwoordelijk is voor het valideren van de vingerafdruk. Door deze aan te passen op dezelfde manier als bij de zilveren stick leken we al snel resultaat te hebben geboekt: het programma accepteerde een onjuiste vingerafdruk als de juiste. Helaas bleef het hier voorlopig bij. De decryptieroutine in truedisk.dll kreeg blijkbaar niet de juiste sleutel: de ‘ontsleutelde’ data bleek onleesbaar.

SleutelNa een aantal uren zweten en - toegegeven - schelden konden we eindelijk achterhalen waar het tot nu toe fout ging. De juiste encryptiesleutel is gekoppeld aan iedere vinger die in de database is ingevoerd. Op het moment dat een afdruk wordt verwijderd via de software, wordt de afdruk niet uit de database verwijderd maar overschreven met willekeurige data. Dit betekent dat als een routine wordt aangepast om een willekeurige vingerafdruk als de juiste te accepteren, een verkeerde sleutel aan de decryptieroutine wordt doorgegeven. We moesten verder graven. Een andere routine werd door ons aangepast zodat de juiste vinger werd herkend. Hier ging het even mis, tijdens het experimenteren bleek dat we per ongeluk de eerste vingerafdruk uit de database hadden verwijderd. Hierdoor werd wederom een verkeerde sleutel gebruikt. De oplossing bleek eenvoudig: eerst een foute scan aan het programma doorgeven en pas daarna een goede afdruk emuleren. Eindelijk werd de goede sleutel gebruikt en waren de opgeslagen gegevens vrij toegankelijk.

Het kostte behoorlijk meer tijd, maar uiteindelijk konden we toch weer bij de versleutelde gegevens. Het is wel lastiger dan bij de vorige sticks, maar nog steeds goed te doen.

Waarom zijn deze sticks kwetsbaar?

'Hackers ahead'-bordWat is nu de reden dat deze sticks kwetsbaar bleken voor onze hackpogingen? Bij de zilveren stick is het eenvoudig te verklaren. De beveiligde partitie is verborgen door de controller totdat een speciale instructie hem vertelt de gegevens zichtbaar te maken. Door simpelweg deze instructie te vervalsen kunnen deze gegevens ontsluierd worden. De witte stick maakt het door het gebruik van encryptie een stuk lastiger. Het gebruik van vingerafdrukherkenning wordt ook regelmatig als zeer betrouwbaar aangemerkt. Toch maakt het toepassen deze techniek de stick juist kwetsbaarder dan wanneer een wachtwoord gebruikt zou worden. Dat klinkt verrassend, maar we zullen dit toelichten.

Als een programma gebruikmaakt van een wachtwoord als sleutel voor de encryptie van gegevens, hoeft de sleutel niet ergens te worden opgeslagen. Het programma wordt opgestart en met het ingevoerde wachtwoord als key kunnen de gegevens ontsleuteld worden. Nergens in het programma of op de computer staat de goede sleutel opgeslagen. De enige voorwaarde is dat de gebruiker het juiste wachtwoord onthoudt.

VingerafdrukEen vingerafdruk is echter verre van precies. Als dezelfde vinger twee keer achter elkaar gescand wordt zullen er al subtiele verschillen in de uitkomst zitten. Onder meer de manier waarop een vinger over de sensor beweegt heeft al invloed op de scan. Bij het vergelijken van een vingerafdruk wordt daarom altijd een beetje tolerantie toegestaan. Je kunt hierdoor niet de vingerafdruk gebruiken als sleutel om gegevens te beveiligen, daarvoor is een exacte sleutel nodig die niet wijzigt. De systemen die gebruik maken van een vingerafdruk zullen dus altijd een iets andere weg moeten bewandelen: ze versleutelen de gegevens met een willekeurige key, en deze sleutel wordt ergens verstopt. Als een juiste vingerafdruk wordt herkend kan de sleutel opgehaald worden en gebruikt worden om de gegevens weer vrij te geven. Het zal inmiddels duidelijk zijn dat dit een ernstige kwetsbaarheid betekent: als de software de sleutel kan benaderen, kan een kwaadwillende dat ook.

Dit probleem is op twee manieren te omzeilen. Ten eerste kan er natuurlijk een wachtwoord gebruikt worden, zoals bijvoorbeeld Truecrypt dat doet, maar dit werkt zoals gezegd niet bij een systeem dat is gebaseerd op een vingerafdruk. De tweede methode is om de toegang tot het programma zo moeilijk mogelijk te maken. Om dit te bereiken zal de controller van de stick de volledige validatie van de vingerafdruk moeten doen. In theorie zou een goede hacker alsnog gegevens van de microcontroller kunnen halen, maar dit is echt vele malen moeilijker dan het hacken van de software. Het nadeel is uiteraard dat een hardwareoplossing ook vele malen duurder is.

Conclusie

Op de vorige test kwamen verschillende reacties - waaronder die van de fabrikant - dat de sticks voldoende veiligheid bieden, immers kan niet iedereen dezelfde dingen uitvoeren als die wij in deze tests hebben gedaan. Het is echter niet onmogelijk, en de kans dat iemand een handig neefje heeft die het wel kan is zeer zeker realistisch. Daarnaast kan in alle gevallen een aangepaste softwareversie via internet worden verspreid zodat iedereen ongeoorloofd gegevens van de stick kan halen, en als dat gebeurt is de beveiliging alsnog vrijwel volledig waardeloos.

In eerste instantie was de leverancier nog niet helemaal zeker van ons onderzoek. Toen we echter de inhoud van een tweede set opgestuurde sticks aan hem konden tonen was hij overtuigd en reageerde hij heel sportief op de resultaten. Hij gaf aan blij te zijn met onze test. 'Ik wil graag een goed product aan mijn klanten leveren, als blijkt dat dat niet het geval is zal ik er alles aan doen om de problemen op te lossen. Alle klanten zullen op de hoogte gesteld worden van de (on)mogelijkheden van de door ons geleverde sticks. We zullen de aanbevelingen die Tweakers.net ons heeft gedaan gaan verwerken in een nieuwe, beter beveiligde, stick.'

TruecryptIn het geval van deze twee sticks zal onze conclusie duidelijk zijn: beide sticks bieden voldoende gebruiksgemak, zo is het inloggen op een website via het lezen van een vingerafdruk wel handig, en - niet onbelangrijk - het gadget- en patsgehalte ligt behoorlijk hoog. Op het punt van beveiliging schieten ze echter te kort en zou ons advies nog steeds een oplossing met Truecrypt of een vergelijkbaar programma zijn.

Tweakers.net is weer veel dank verschuldigd aan Jeroen, alias Sprite_tm. Op zijn website is een Engelse versie van dit artikel te lezen.

Reacties (53)

53
53
17
2
0
36
Wijzig sortering
Ik gebruik hier een RiTech BioSlimDisk, deze is geheel software en driver loos maar geeft pas toegang tot de disk als je een vinger opgelegd heb (niet overheen schuiven, maar echt opleggen)
De veiligere sticks bestaan dus wel ;)
De Bioslimdisk is al gekraakt. De data is NIET geencrypt op de disk. FoxIT heeft daar een rapport over geschreven.

http://www.techworld.nl/a...g-usb-geheugensticks.html
En jij hebt een paar duizend euro uitgegeven om dat rapport in te kunnen zien?

In de link die jij geeft staat namelijk helemaal niets concreets over de veiligheid van de Bioslimdisk!
En het rapport is niet openbaar.
Aangezien RiTech het over smaad en laster heeft denk ik niet dat ze als beste uit het onderzoek zijn gekomen.

Maar ik ben benieuwd of deze zelfde truck ook zou lukken met de Safeboot Phantom. Aangezien de mensen van Safeboot beweren dat hun stick "overeind" bleef in die test.
Elk systeem is kraakbaar, dus ik zou niet te vroeg juichen.

Bovendien vind ik dat beveiliging kraakbaar moet blijven, het moment dat mijn vinger de enige mogelijkheid wordt, is het misschien voor sommigen te verleidelijk om mijn vinger mee te nemen als ze mijn stick stelen. Zoveel is beveiliging mij nu ook weer niet waard.
Als je gegevens zo belangrijk zijn, dat mensen bereid zijn ledematen af te snijden om er aan te raken, zou het dan niet beter zijn je gegevens op een gewone stick te plaatsen. Uiteraard versleuteld door zoiets als opengpg met een sleutelsterkte van 2048 bits of meer.

Hopelijk nemen ze dan gewoon de stick mee zonder te denken aan een mogelijke beveiliging.

Niks is waterdicht en ze kunnen je nog altijd martelen of anders onder druk zetten om de sleutel te bemachtigen maar 't wordt wél plotseling véél meer werk ... en tijdrovender ...
Een vingerafdrukscan is altijd maximaal geencrypt, nooit gehast en daar ligt een beetje het probleem.
Wat betreft de variatie in vingerafdrukken die niet leiden to een exacte key... Kan er geen gebruik gemaakt worden van drempel waardes om zo tot een exacte key te komen bij het scannen van afdrukken?

Op die manier zou een vingerafdruk, naar mijn mening, exact hetzelfde werken als een wachtwoord.

Ik ben overigens blij te zien dat ze gekozen hebben voor AES encryptie voor die witte stick, al zie ik liever 512bits of hoger dan 256.
De toegang beperken is allemaal wel leuk en aardig, maar als dat het enige obstakel is, dan is dat toch wel een beetje zorgwekkend.

*Denkt aan analogie van windows beveiliging; de zware gietijzeren deur met tig sloten in een tuin met een haag van 20 cm hoog*

-R-
Als ik mij niet vergis worden door politionele instanties gewerkt met een minimum aantal punten van overenkomst gewerkt om een vingerafdruk als rechtsgeldig te laten toebehoren aan een persoon.

Wat jij dus voorstelt is: als een vingerafdruk bestaat uit a + b + c + d +e + f + g = sleutel en je hebt a + c + e + f + g of a + b + e + f dat je dan al de geldige sleutel hebt ...

lijkt me ook niet waterdicht ... kan je nog altijd de sleutel achterhalen door een brute force mi
Nou, niet zo simplistisch gezien.
Wat ik in gedachten had, was niet het weglaten van informatie, maar drempels in te stellen zodat bij elke scan dezelfde waarde eruit komt.

Als het ware converteer je op deze manier de collectie van 'afgeronde' herkenningspunten naar een string van bytes welke weer een sleutel is. Natuurlijk geldt hier hetzelfde als voor elke andere sleutel; hoe meer bytes, hoe groter de bruteforce tijd.

Als er uit een vinger afdruk maar 5 herkenningspunten naar voren kunnen komen, dan is de vingerafdruk wellicht niet veilig genoeg.
Ales er 32 kunt krijgen, dan heb je toch een stevige key.

-R-
Helemaal mee eens. Als de vingerafdruk niet als sleutel fungeert betekent het dat de sleutel in het geheugen van de USB-stick staat. Net als bij DRM ben je dan binnen als je de geheugenplaats weet te achterhalen.

Security through obscurity dus.
Ofwel ga je je drempels te streng instellen zodat, bvb iemand die een litteken krijgt dwars over z'n vingerafdruk, de drempelwaarde niet meer haalt en dus niet meer aan z'n gegevens kan.

Ofwel stel je je drempels te laag in zodat het makkelijk te kraken valt ...

Tenzij je zegt: een combinatie van drie vingers is nodig om tot een geldige sleutel te komen zodat je het aantal variaties ook groter maakt.
lol... vingerafdrukken brute-forcen... :o
Wil je op een koop-zondag in de stad gaan staan ofzo? ;)
Welke vingerafdruk je ook pakt, er komt altijd een sleutel in de vorm van een bitstream uit. Deze bitstream is uiteraard gewoon te brute-forcen.
Misschien ongelukkig uitgedrukt maar ik denk dat het doenbaar moet zijn als je uitgaat van het feit dat je moet bijhouden welke geldige combinaties van de onderdelen een vingerafdruk leiden tot een geldige sleutel ...
Wat betreft de variatie in vingerafdrukken die niet leiden to een exacte key
Er zijn best technieken waarbij er een vaste bitstream afgeleid wordt uit een biometrie. Zie bv http://www.springerlink.com/content/4n9f1vpwmm6aqdt0/ .

Deze bitstream heeft echter niet een zodanige lengte dat je hem direct als sleutel kunt gebruiken. Dat geldt echter voor alle biometrie omdat de hoeveelheid informatie te gering is (<128bits bv).
Toch lijkt dat me een betere beveiliging dan in een geheim hoekje van de stick de sleutel te verstoppen. Desnoods scan je zoveel vingerafdrukken tot je wel genoeg key-materiaal hebt, Als je dan met deelsleutels werkt kan je daarmee ook het probleem oplossen dat je een vinger kwijtraakt of verwondt.
Of je vergroot het met een formule.
Inderdaad, toen ik las dacht ik ook (zoals de secustick) het moet op hardware niveau (controller) gebeuren en niet in de software. Echter over de kosten. Indien je een ASIC maakt en alles in 1 chip laat is het voor een goede hacker al niet meer te doen. En tegenwoordig is het voor een microcontroller ook al goed te beveiligen. De code is zogoed als niet meer uit te lezen. (Tevens kunnen de programmeer pinnen worden opgeblazen voor extra veiligheid).

Het is jammer dat dit soort beveiligingen op software berusten die op een systeem worden uitgevoerd waar je alle toegang tot hebt... Tevens hoort de encryptie/decryptie van de bestanden op een controller te gebeuren en niet op de PC!!

Echter heb ik wel de volste vertrouwen dat dit soort zaken wel komen. Voor veiligheid van je gegevens is geen prijs gebonden en een prijs van 60 euro (voor software) tegenover 100 euro (hardware) is dan ook snel gemaakt. Door dit soort review en testen dagen jullie de fabrikanten uit wat een zeer goede zaak is.

Nu maar hopen dat een hardware matig oplossing ook goed wordt gemaakt en niet van die rare fouten zoals de secustick
Interresant punt. Echter dan kun je het altijd nog als black-boxing gaan beschouwen..

Knoop een lijntje aan alle mogelijke pinnetjes en probeer te achterhalen wat er gebeurd. Een soort van hardware-debugger. Het is wel vele maler moeilijker maar het is niet te bewijzen ondoenlijk.
En dan is er ook altijd nog de mogelijkheid het dakje van de IC er af te halen en de inhoud uit te lezen met een STM.

http://www.geocities.com/spm_stm/
@eaquitas: Wat heb je dan? Als je encryptie sleutel is gekoppeld met je vinger afdruk heb je nog niets.

Wat je dan hebt is het programma van de microcontroller. Zoals je geen sleutel hebt kun je nog niets, dus de vingerafdruk
Wat ik niet snap is waarom alle dlls van die goede namen hadden en de code ook, hadden ze niet zo'n leuk *onleesbaarmaak programma (alle variabelen en bestanden krijgen namen die super op elkaar lijken maar door net een ander accentje van elkaar verschillen)* over de code kunnen gooien, dan had het ontzettend veel langer geduurd om de stick te kraken.
@therat10430:

Langer duren en moeilijker maken is niet hetzelfde natuurlijk. Daarnaast kun je met wat creatief debuggen al heel snel door zoiets heen komen.

Zoals de conclusie inderdaad al is: Een vingerafdruk oplossing is per definitie verkeerd omdat de sleutel moet worden opgeslagen. Je kunt dan met software en hardware moeilijker maken de sleutel te vinden, maar het zal altijd lukken.

Een oplossing waarbij de gegevens encryptie hebben en je zelf de sleutel moet onthouden is veel veiliger en kost gelukkig niets. Maak je gebruik van een a-symmetrische encryptie dan kun je zelfs andere mensen jouw public key geven en zo dus je collega vragen wat documentjes erop te gooien zonder dat hij de rest van de documenten op de stick kan lezen. (Je kan dan die key gewoon onbeveiligd op de stick zetten)

Zulke software is gratis te vinden en biedt een goede beveiliging, het werkt dan ook gewoon met alle soorten USB sticks, memory cards etc.

Enig probleem is dat het geheel maar zo sterk is als de zwakste schakel. Helaas blijkt het vaak de mens te zijn die de zwakste schakel is, en daar doe je niets aan ben ik bang.
jah, leg er gewoon een stukje 'security through obscority' bovenop ipv een routine 'useThisRoutineToHackTheUSBStick'....
waarom crypten ze zo'n exe niet met bijv armadillo ofzo? knappe jongen die hem dan nog kan kraken in ollydbg...
Ach.. USB snoopen is ook weer niet zo lasting. En als je eenmaal door hebt dat met welk usb commando de stick geunlocked wordt, is deze stick ook nergens meer.
Laat het programmaatje eerst scannen op aanwezige debuggers, sniffers, loggers en snoopers. Deze desnoods killen en waarschuwingen geven. En natuurlijk eerst een virusscan. Die U3 dingen doen nu alles pas achteraf. Laat ze de grootte van de read-only partitie wat groter maken.
Die U3 onzin... dan stopt iemand de stick in een Linux machine en kan hij "opeens" alles gewoon lezen.
Sorry hoor, maar een USB stick die 'alles' gaat scannen in een tijd dat rootkits voor hardware scanners verborgen kunnen blijven? Een goed beveiligde USB stick vertrouwd nooit de host computer, zeker niet om zijn code goed uit te voeren of juiste informatie over het systeem of de software erop te geven. Bijtend zuur in de USB stick en vingerafdrukherkenning op de stick monteren en volledig in hardware doen. Als je hem open probeert te maken is alles weg.
De eindgebruiker moet toch wel een manier hebben om bij de gegevens te komen. Uiteindelijk moet deze persoon toch een PC een zekere mate van vertrouwen geven. Als de eindgebruiker de gegevens kan benaderen, is het mogelijk om alle opgeslagen informatie te copieeren. Kortom, je moet een inschatting kunnen maken van de integriteit van het systeem waar de beveiligde informatie mee gelezen wordt.
Als ik het zo een beetje begrijp wil je dus een USB stick welke een hardwarematige beveiliging kent als eerste laag. De tweede laag kan je softwarematig doen via truecrypt, een lompe 2Kbit sleutel.

Dan wordt het zelfs voor de NSA lastig om je data te achterhalen.
Het beste is om de vingerafdruk matching in hardware te steken. Dan heb je een simpele black box met drie I/O lijnen: vinger-afdruk input, NAND flash en USB. Indien de vingerafdruk matched, kan je het flash-geheugen gaan decrypteren met een intern gegenereerde en opgeslagen sleutel.

Niemand kan de vingerafdruk brute-forcen, want de chip zal waarschijnlijk wel een dikke 2 seconden moeten rekenen voor hij een vingerafdruk gecontroleerd heeft. En de key is onmogelijk aan te geraken; ik wil de persoon nog wel tegenkomen die een 90nm-chip openkrast en de data-lijnen voor het geheugen afluistert ;-).

Maar helaas, een chip die zowel AES als vinger-afdruk sensor is, is een duur dingetje. Hoewel zoiets in ASIC volgens mij echt wel te doen moet zijn.
Was er laatst niet die ophef dat de regeringsinstantiex in de VS een backdoor hadden?

Naja dan is je data toch nog bet veilig voor criminelen :)
Staan de vingerafdrukken van de eigenaar al niet gewoon op de stick, inclusief op de scanner? Of staat in de gebruiksaanwijzing dat je het ding na elk gebruik met witte handschoentjes aan helemaal schoon moet poetsen...
Wederom een mooi artikel, het gedeelte over de fingerprint-scanner deed me ook een beetje denken aan een aflevering van MythBusters, waarin ze een vingerafdrukscanner kraken (met gelvingers e.d. :))

Ben benieuwd of de fabrikant de nieuwere versie ook zal laten testen, of dat andere fabrikanten misschien iets opsturen, dit zijn namelijk wel meesterlijke 'reviews' :)
Volgens mij maken ze de vingers op het laasts na met geprinte papiertjes die ze nat maken en zo alles wat vingerafdrukken scant weten open te breken...
Ik ben benieuwd of dit ook met de apparaatjes van SafeBoot gedaan kan worden...
Ik heb er ook nog wel 1 op de wishlist dan:

Wij hebben sinds kort de aladdin eToken Pro (simpelste uitvoering) in gebruik. Die heeft een klein card OS-je die alleen intern de private key vasthoudt.

Je private key kan alleen gekopieerd worden op of gegenereerd in de eToken. Er uithalen kan nooit meer (claimen ze) enkelt vernietigen. Als je dus een mailtje signed, dan loopt dat dus door je eToken heen.


linkje: http://www.aladdin.com/etoken/
linkje eToken Pro: http://www.aladdin.com/etoken/pro/usb.asp
Toch wel verrassend dat ook deze sticks nog relatief simpel kraakbaar zijn.

Die tweede in ieder geval niet meer op simpel wizzkid niveau. Nu moest er toch op stevig gehacked worden, op een niveau dat je niet op iedere hoek van de straat tegenkomt. In die zin is de stick relatief veilig. Maar je staat er toch verbaast van dat er niet een echt veilige stick gemaakt wordt. I.p.v. het geld aan een biometrische gagdet gehalte te besteden, hadden ze beter een hardware oplossing kunnen maken.


HEEL goed dat er nu aandacht aan besteedt wordt, want op deze manier kunnen klanten betere kwaliteit eisen.
Daarintegen vind ik wel eng hoe "makkelijk" die eerste te kraken was. Bijna op het niveau van software van 10 jaar terug waarbij je door een call te wijzigen de hele registratieprocedure kon omzeilen. (Of gewoon "jump equal" in "jump not equal" veranderen, dat soort ongein.) Het is ietsje ingewikkelder dan die oude standaard beveiligingen, maar voor iemand die een klein beetje geoefend is ook geen enorme uitdaging.

Op dit item kan niet meer gereageerd worden.