Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Onderzoekers laten smartphones bellen of websites openen met ultrasoon geluid

Door , 121 reacties, submitter: MaartenBra

Smartphones van mogelijk alle grote fabrikanten zijn vatbaar voor een aanval waarbij kwaadwillenden de telefoon ongemerkt een nummer kunnen laten bellen of een website kunnen laten openen. De aanval werkt via de altijd luisterende digitale assistenten.

De DolphinAttack werkt met een speaker die ultrasone geluiden voortbrengt. Die ultrasone geluiden moeten lijken op de commando's om de stemassistenten te activeren, zoals Hey Siri en Ok Google. Vervolgens probeerden de wetenschappers om de apparaten taken te laten uitvoeren, zoals een willekeurig nummer bellen of een website bezoeken. De ultrasone geluiden zitten boven 20kHz en zijn dus onhoorbaar voor mensen.

De onderzoekers van de Chinese Zhejiang Universiteit konden met de methode alle iPhones sinds de 4S, een LG Nexus 5X, Samsung Galaxy S6 Edge en Huawei Honor 7 taken laten uitvoeren. Ook een Lenovo Thinkpad-laptop met Windows 10 en Cortana bleek vatbaar, net als een Amazon Echo-speaker, Apple Watch en Audi Q3-navigatiesysteem.

Het effect verschilde per apparaat. Bij een achtergrondgeluid van rond 55dB moest de speaker die de ultrasone geluiden voortbracht, veelal tussen tien en vijftig centimeter van het apparaat verwijderd zijn. Bij de Apple Watch werkte de aanval op anderhalve meter, net als bij de Echo.

Met de aanval zouden kwaadwillenden bijvoorbeeld mensen op kosten kunnen jagen met het ongemerkt bellen van nummers of malware kunnen installeren vanaf een vooraf geprepareerde url. Daarvoor moeten aanvallers wel in de nabijheid van het apparaat zijn, waardoor het risico om slachtoffer te worden van een aanval beperkt is.

Alleen toestellen die het bedienen van de assistent mogelijk maken zonder het scherm te ontgrendelen, zijn vatbaar voor de aanval. De aanval is voor zover bekend nog niet misbruikt.

Door Arnoud Wokke

Redacteur mobile

07-09-2017 • 11:04

121 Linkedin Google+

Submitter: MaartenBra

Reacties (121)

Wijzig sortering
Ik had eerlijk gezegd niet verwacht dat die apparaten zo'n hoge frequenties zouden kunnen waarnemen. Is het dan niet een kwestie om de assistenten geluiden boven de 20kHz te laten negeren?
De samplerate is maximaal 48 Khz, dus 24 Khz is theoretisch het maximum wat hij kan waarnemen.
De Nyquist-Shannon limiet.
Ook al kan een systeem op 48kHz samplen, betekent nog niet dat hij dat ook MOET doen of dat de bandbreedte niet op een andere manier beperkt kan worden. Als een systeem op stemmen moet reageren, dan zou ik verwachten dat de frequentieband waarin het systeem geïnteresseerd is ongeveer loopt van 100 t/m 300Hz. Ik zou daarom ook verwachten dat deze hack makkelijk te voorkomen is door fabrikanten.
Als het gaat om menselijke stemmen gaat deze veel hoger dan dat. Verstaanbaarheid zit hem in de T en de S klank. Als we ergens een spreker moeten uitversteken hebben we meestal low-cut vanaf 150 en that's it. Tenzij de ruimte heel irritant is dan boosten we licht de frequenties waar de S en de T zitten en die zit ver in de KHz range. Uit mijn hoofd op 6.1KHz voor mannen en 8KHz voor vrouwen.

Edit: het volledige stemgebied zit tussen 150Hz en 8KHz voor mannen en vrouwen gecombineerd.

[Reactie gewijzigd door supersnathan94 op 7 september 2017 16:17]

Oh, het elektrische signaal zit ook tussen de 500 en 3500 kHz. Alleen het akoestische deel zit tussen boven de 24 kHz. De hack is dat ze niet-lineare microfoons misbruiken.
De grap is dat als je boven die 24Khz gaat zitten b.v. 47Khz, er aliassing op treed en de software deze detecteert als 1Khz.

Aliassing is het effect dat je in films de banden langzaam de verkeerde kant op draaien.
Daarom pas je altijd een laagdoorlaatfilter toe bij een ADC ontwerp
Klopt, maar deze aanval is ook iets ingewikkelder dan dat. De microfoons in kwestie zijn niet linear boven de 24 kHz - waarom zouden ze, dat is toch onhoorbaar? Nou - omdat die niet-lineariteit ertoe kan leiden dat een mix van verschillende frequenties, allemaal boven de 24 kHz door de microfoon wordt omgezet in een signaal wat ook elektrische componenten beneden de 24 kHz heeft. (Een theoretische, perfect linear microfoon zal dit nooit doen).

Jouw ADC filter zit in het elektrische deel, en filtert het grootste deel van de elektrische signalen eruit. Maar dat kleine deel wat door niet-linear mixen is ontstaan komt gewoon door je low-pass filter heen.
Een anti-aliasing filter die tot 20kHz zonder demping of rimpel alles doorlaat, en alles vanaf 24kHz oneindig dempt, bestaat niet.

Ik vermoed dat ze de signalen zo'n hoge signaalsterkte hebben, dat ze na de verzwakking van de anti-aliasing filters, alsnog (net) sterk genoeg zijn voor de "Hey Siri" detectie.
In films en dergelijke heet dat voornamelijk het wagon-wheel effect. https://en.wikipedia.org/wiki/Wagon-wheel_effect
Samplerate is het aantal van een signaal samples per seconde. Heeft niks met de toonhoogte te maken.
Anders was 192Khz signaal totaal overbodig.
Dan heb je nog aantal bits, dat geeft de resolutie aan van die samples.
Ik ben bang dat je even terug moet naar de theorie.
Zoals al aangegeven:
En er zijn ook voldoende discussies over het nut van hogere samplerates voor het opslaan/afspelen van muziek.
Waar een CD echter met 44.1 KHz werkt, is dat voor DVD/BluRay 96KHz.
De verdubbeling naar 192KHz is vooral handig voor de bewerkings fase.
Als je de bron gaat manipuleren, dan loop je meer kans dat je aliasing of andere ongewenste effecten krijgt. Vandaar dat editing vaak gebeurt op 2x (soms zelfs 4x) de samplerate als het uiteindelijke resultaat.
De sample rate heeft alles te maken met de maximum frequentie die onderscheiden kan worden.
En 192 kHz is voor (hoorbaar) geluid compleet overbodig.
Mwah - compleet overbodig zou ik niet zeggen. Je ADC heeft typisch maar een beperkt aantal bits. Door in het frequentie-domein te oversamplen kun je in het digitale domein met minder bits per sample toe.

Daar zitten grenzen aan. 192 Khz, 14 bits/sample is ruwweg net zo goed als 48 kHz, 16 bits per sample.
Anders was 192Khz signaal totaal overbodig.
192kHz is bijna volledig overbodig.
Het enige dat je ermee bereikt is dat je betere filters kunt bouwen zodat je in het hoorbare spectrum bijvoorbeeld minder last hebt van faseverschuivingen.
Echt wel dus. De samplerate bepaald wanneer er een momentopname word gemaakt. Bij een sinusgolf van 48KHz en een samplerate van 24KHz lijkt de golf maar 24KHz omdat er twee golven in hetzelfde stukje passen maar het meetapparaatje de punten ziet zoals een 24KHz golf. Dat heet aliasing en daardoor werkt deze hack dus ook.
Eh, nee. Bij een golf van 48 kHz en een sample rate van 24 kHz meet je elke keer dezelfde waarde X. Dat lijkt dus niet op een golf van 24 Khz, dat lijkt op gelijkspanning (f=0).

En ik denk dat je voorbeeld de factor 2 heeft omgedraaid. Een 48 kHz golf moet je met meer dan 48*2 kHz samplen. 48/2 is véél te weinig.
Maar in theorie nog steeds exact hetzelfde als een golf van 24KHz want die heeft ook f=0. Dus ja misschien sleht gekozen voorbeeld.
Maakt het dan theoretisch gezien uberhaupt uit hoe streng het hertz filter word ingesteld? zou je dan theoretisch gezien altijd wel een veelvoud van wat wel in de range valt kunnen gebruiken?
dus 24 Khz is theoretisch het maximum wat hij kan waarnemen
Tenzij je gebruik kunt maken van aliasing (bij constante signalen).
Dat is leuk als je van te voren weet dat het signaal 1 bepaalde frequentie heeft. En daarbij moet die frequentie ook nog veranderen waarbij je aanneemt dat die verandering lineair is en je gaat kijken hoe dat zich uit binnen het samplebereik. Of je moet weten welke frequentie het oorspronkelijke signaal had. Je moet de zooi dus flink afbakenen.

Je kunt dus met testsignalen en aliasing wel iets te weten komen over wat zich afspeelt boven de sampling frequentie, maar dat geldt niet voor willekeurige signalen.
Wordt in de praktijk al voor bepaalde zaken toegepast, zoals bij Chromecast
Inderdaad, maar dan wel met speciale beepjes ofzo. In dit geval lijkt Siri dit gewoon als gesproken stem te aanvaarden.
De paper legt uit hoe het werkt.

Het "stem" geluid wordt door de zender gemoduleerd op de ultrasone frequentie. Die is onhoorbaar. De microfoon vangt dit op, en normaal gesproken verdwijnt ultrasoon geluid. Echter, omdat de microfoons in telefoons bepaald niet perfect zijn, met name niet lineair, demoduleren ze het signaal enigszins, waardoor de "stem" weer terugkomt in het hoorbaar domein. Net zoals iemand die na een operatie een stuk metaal in zijn hoofd heeft daar wel eens (heel ongewenst) AM radio mee ontvangt.

Siri hoort dus gewoon iemand praten. Het is dus echt niet zo dat Apple geheime ultrasone commando's interpreteert ofzo.

Er is dus niks in de telefoon aanwezig dat iets met ultrasone golven doet. De attack maakt gebruik van ongewenste fysische eigenschappen van de microfoon.
.. By leveraging the nonlinearity of the microphone circuits, the modulated low-frequency audio commands can be successfully demodulated, recovered, and more importantly interpreted by the speech recognition systems.
Ik vraag me alleen af of de imperfectie van het menselijke oor niet overeenkomt met de imperfectie van de microfoon. Met andere woorden, als het ultrosoon geluid hard genoeg wordt dan kun je het wel degelijk horen als gewoon geluid.

dit idee:
https://www.kickstarter.c...chardhaberkern/soundlazer

Net zo goed dat bij harde hoge geluiden die je niet goed kunt horen, je wel degelijk er van bewust kunt zijn (hoofdpijn)... en dochter met 30 jaar jongere oren smeekt het geluid uit te zetten.
Ik vraag me alleen af of de imperfectie van het menselijke oor niet overeenkomt met de imperfectie van de microfoon. Met andere woorden, als het ultrosoon geluid hard genoeg wordt dan kun je het wel degelijk horen als gewoon geluid.
Da's de redenatie achter allerlei "gouden oortjes" producten.

Het slaat echter nergens op, want in tegenstelling tot die siliciumonderdelen in je telefoon is je gehoororgaan wel heerlijk lineair. Om een ultrasoon geluid van bijvoorbeeld 30kHz enigszins hoorbaar te maken, moet het een volume hebben waarvan het bloed uit je oren gaat spatten. Ultrasoon neem je alleen waar als "beschadiging", net als je bijvoorbeeld infrarood licht kunt "waarnemen" omdat je huid ervan verbrandt. Als je hoofdpijn krijgt van ultrasoon, dan heb je alleen hoofdpijn. Blijkbaar beschadigt er iets, ook al zouden sommige mensen dat misschien wel lekker vinden, het heeft niks met je "geluidsbeleving" te maken.

Je dochtertje is nog jong en heeft een veel hoger frequentiebereik dan pappa (of mamma), maar ook haar oortjes nemen niks meer waar boven de 20kHz. Mijn jongere collega werd ook een keer gek van het hoge "gepiep" van een prototype bordje waar ikzelf helemaal niks van hoorde.
Ah, ok..
want in tegenstelling tot die siliciumonderdelen in je telefoon is je gehoororgaan wel heerlijk lineair.
Helaas..... :)
Fletcher Munson

En dat is alleen nog maar de gewone 'way of entry' voor geluid binnen het hoorbare spectrum.
Ultrasoon neem je alleen waar als "beschadiging", net als je bijvoorbeeld infrarood licht kunt "waarnemen" omdat je huid ervan verbrandt.
Dit klopt niet. Hoewel je inderdaad enorme hoeveelheden energie in dat signaal moet stoppen hoeft je oor er niet beschadigd van te zijn om het te horen.
Wat er gebeurt is dat dat ultrasone geluid je schedel (en ik neem aan het spul rond je slakkenhuis etc) laat trillen waardoor de haartjes in je oor symaphetisch gaan meetrillen op een lagere frequentie.
Omdat dit geluid door de botten heen moet, moet het ook erg krachtig zijn als je het via de luch aanbrengt en dat kan dan weer leiden tot gehoorbeschadiging. Maar dat is niet waarom je het in eerste instantie hoort.

[Reactie gewijzigd door koelpasta op 8 september 2017 11:50]

Allebei leuk geprobeerd, maar...

Met "lineair" wordt hier geen vlak frequentiespectrum bedoeld, maar een niet-lineaire respons in het tijdsdomein. Een diode is een klassiek voorbeeld van een niet-lineaire component (en een diode is ook de makkelijkste decoder voor AM radio). Een RC netwerk is wel altijd lineair, ook al zal het spectrum doorgaans niet vlak zijn. Een RC netwerk kun je dus niet gebruiken voor het "decoderen" van het ultrasone signaal, maar een diode wel. En een menselijk ook dus niet - ongeacht wat je moduleert op het ultrasone signaal, je gaat het niet horen.
Een RC netwerk kun je dus niet gebruiken voor het "decoderen" van het ultrasone signaal,
Waar heb je het over? :)
Het internet staat vol met ontwerpen die met bijvoorbeeld een atmega controller en een simpele RC filter een ultrasoon 1-bits signaal omzetten in geluid.
Een RC netwerk kun je dus prima gebruiken voor het 'decoderen' van een ultrasoon geluid.
Het is mischien niet zaligmakend maar het werkt wel.
En een menselijk ook dus niet - ongeacht wat je moduleert op het ultrasone signaal, je gaat het niet horen.
Volgens mij heb je mijn opmerking over sympathetische resonanties in het binnenoor niet gelezen.... :/
Het internet staat vol met ontwerpen die met bijvoorbeeld een atmega controller en een simpele RC filter een ultrasoon 1-bits signaal omzetten in geluid.
Wat zo'n "ontwerp" doet is een 1-bit oversampling DAC produceren. Die moduleert dus niet. Frequenties in het ultrasoon bereik worden weggefilterd (door het RC filter). De hoogfrequente signalen worden dus niet hoorbaar gemaakt. Google op "Oversampling".
Een speaker 30 keer per seconde aan/uit zetten hoor je als vette brom. Een speaker 40000 keer per seconde aan/uit zetten hoor je helemaal niet, maar je kunt de speaker daarmee "gemiddeld" in elke positie zetten die je wil. Daarmee kun je weer hoorbaar geluid maken, maar de frequenties die je hoort die zitten er dan al in, en "verschuiven" dus niet.
Als je dat 1-bit signaal zonder RC filter op een speaker zet, hoor je het geluid gewoon. Als je alles onder de 20kHz weg filtert, is er niks meer wat je met dat RC filter zou kunnen doen dat het geluid nog hoorbaar maakt, ook al zit er nog steed heel veel signaal boven de 20kHz in.
Een RC netwerk kun je dus prima gebruiken voor het 'decoderen' van een ultrasoon geluid.
Het is mischien niet zaligmakend maar het werkt wel.
Niet dus.
Volgens mij heb je mijn opmerking over sympathetische resonanties in het binnenoor niet gelezen.... :/
Jawel, maar daar heb ik heel bewust niet op gereageerd.

Probeer de slinger van een wandklok eens op een andere frequentie dan 1Hz te laten bewegen. Dat lukt niet, hij wil niet op 2Hz en ook niet op 0.5 Hz zwaaien, alleen op 1Hz blijft hij lekker zwaaien. De haartjes in je binnenoor vormen elk een massa-veer systeem met een eigenfrequentie, en resoneren maar op een enkele golflengte, omdat de differentiaalvergelijking alleen die ene oplossing heeft.
Daarmee kun je weer hoorbaar geluid maken, maar de frequenties die je hoort die zitten er dan al in, en "verschuiven" dus niet.
Dus jij zegt eigenlijk dat de energie die in het ultrasoon zit niet bijdraagt aan het voltage dat uit het filter komt?
Daar moet ik even over nadenken. :)
Ook een incorrecte stelling, je gehoor is verre van liniar.
Vandaag dat pink noise vlakker klinkt als White noise

Ook de term geluidsbeleving is hier incorrect, iemand zonder trommelvliezen heeft ook een geluidsbeleving. Ik zou het hier houden op 'gehoor' of trommelvlies waarneming.
Ultrasoon geluid is dan ook niet zo voor de hand liggend, maar een 30 tot 100 Hz sub bass sweep met een ballon in je handen blijft fascinerend
Ik denk niet dat dit een bug is maar een feature die er bewust is ingebakken:
https://www.wired.com/201...listen-beacons-cant-hear/
nieuws: Ticketmaster wil kaartcontrole via ultrasoon geluid mogelijk maken

Apple/Google/Microsoft/Amazon hebben allemaal belang om zoveel mogelijk data te verzamelen en dit is zeer intressante tracking data voor ze.
Dat de assistenten überhaupt blijkbaar luisteren naar ultrasoon geluid is al interessant. Maar het lijkt me redelijk makkelijk verhelpbaar door een range in te bouwen waarin wordt geluisterd - niemand praat boven de 5 kHz dus hoeft daarboven niet geluisterd te worden.
Wel een leuk project.
De vraag is of de microfoon dit soort dingen kan onderscheiden of dat het tegen de tijd dat de logica deze informatie ziet simpel weg niet meer mogelijk is om de frequentie te onderscheiden. Vergeet niet dat men tot op heden geen reden heeft gehad om de frequentie te onderscheiden en de microfoon in jouw telefoon (nieuw of oud) waarschijnlijk de goedkoopst mogelijke is die nog net aan de eisen voldeed (want winst en waarom duurder dan nodig is).

er van uitgaande dat deze gegevens wel beschikbaar zijn voor de logica dan is het natuurlijk een koud kunstje voor de Apple's en Google's van deze wereld om simpel weg een update te pushen van de assistent, er is geen update van de gehele software voor nodig op dat moment alleen de assistent is voldoende en dat gebeurt onafhankelijk van de versie van het OS of het model van de telefoon.
Dus ik denk dat als het een beetje mee zit dit een simpele patch is voor de meeste assistenten (zeker voor de speakers omdat deze vrijwel allemaal op versie 1.0 van de hardware zitten)
Frequenties onderscheiden lijkt me geen probleem toch? Als ik een geluid opneem met de microfoon, en die open in een geluidsbewerkingsprogramma, dan kan ik zien op welke frequenties dit geluid is geweest. Ook zijn er frequentiemeters beschikbaar in de Play Store (al weet ik natuurlijk niet of dit een betrouwbaar beeld geeft van de frequenties).
Alleen vergeet je dat goedkope/oude toestellen vaak geen securitypatches meer krijgen van bijvoorbeeld Google of Apple. Zo blijven deze toestellen natuurlijk gewoon vatbaar.
De assistenten doen de stem interpretatie over het algemeen online. Dus als de servers geupdate worden zijn alle telefoons ook geupdate.
de pest is dat de brakke microfoon hardware een signaal geeft wat prima verstaanbaar is door de huidige servers. Die zien het verschil niet tussen een matige opname en een ultrasone hack.
Is dit niet gewoon een update voor de app? Of zitten die assistenten ingebakken?
Ligt er maar net aan welke assistent je gebruik. Bij die van Google kan je inderdaad de applicatie updaten, maar bij sommige fabrikanten zit hij ingebakken (die van de fabrikant zelf zijn).
Hebben deze wel al de assistenten?
Standaard staat de Google-app op Android toestellen, of het toestel moet echt uit het jaar kruik komen.
Klopt, maar aangezien de google app het deel is dat geupdate moet worden is het mogelijk ook op oudere toestellen te verhelpen. Spraakherkenning van google gaat voor zover ik weet via de google servers op het "ok google" na, maar ook dat deel zit in de google app verwerkt. Ik gok dat dit wel op te lossen is via enkel de google app.
Dan heb ik inderdaad verkeerd gedacht. Ik bedoelde dan eigenlijk dit.
Of het werkt niet omdat de assistent functie omzeep is geholpen ;-)
Ik denk dat Apple en ik mag aannemen ook Google hier wel een uitzondering voor maken. Het kan namelijk verstrekkende gevolgen hebben. Ik hoef maar met een JBL-speaker een meute in te lopen en het geluid af te spelen en hop.
Ik zet die assistenten altijd gewoon uit, dat verhelpt het probleem ook. En zolang die alles doorsturen naar een cloudservice i.p.v. de boel lokaal verwerken zal ik ze ook niet aanzetten.
Dat de assistenten überhaupt blijkbaar luisteren naar ultrasoon geluid is al interessant. Maar het lijkt me redelijk makkelijk verhelpbaar door een range in te bouwen waarin wordt geluisterd - niemand praat boven de 5 kHz dus hoeft daarboven niet geluisterd te worden.
Wel een leuk project.
En hoe moet je hond dan hondebrokjes bestellen ;-)
Honden kunnen ultrasoon horen, maar toch niet produceren?

@hieronder
Goed bezig.. :D

[Reactie gewijzigd door Iavak op 7 september 2017 14:12]

Zoals veel geluid zal er bij een blaf of een jank een ultrasone component in zitten. Of deze component een groot aandeel heeft is een ander verhaal, maar technisch gezien kan een hond ultrasoon geluid produceren.

Om even een ander vb te geven: Een bassdrum met basisfrequentie 80Hz heeft een vrij grote component rond de 4kHz die je niet direct verwacht. Haal je deze echter weg klinkt hij heel dof en is de 'attack' of 'kick' amper aanwezig. Niet direct ultrasoon, maar als je geluiden hebt waar de basisfrequentie hoger ligt heb je dus al snel aandeel in het ultrasone gebied
Wie zegt dat? omdat jij het niet kunt horen??
Daar is natuurlijk meetapparatuur voor. Als een mens het niet kan horen, is er altijd wel apparatuur voor te ontwikkelen die die geluidsgolven wél kunnen waarnemen.

Bij honden testen ze de reactie en zo weet je al gauw tot welk niveau een hond een geluidsgolf waarneemt.

[Reactie gewijzigd door AnonymousWP op 7 september 2017 11:27]

Nee, want als dat zo was, dan hadden we dat al ontdekt.

Edit; kleine nuance; ik bedoel natuurlijk als hij dat ultrasoon geluid produceert, en ook onderscheid. ik bedoel niet, als hij dat als bijgeluid in zijn blaf heeft zitten per toeval, en omdat het in zijn bereik zit.

[Reactie gewijzigd door mell33 op 7 september 2017 11:42]

Inderdaad want met die redenatie zullen mensen ongetwijfeld ook wel ultrasoon geluid kunnen produceren.
Precies!
En om even ontopic te blijven< er zit een hele wetenschap die al deze gegevens gebruiken, er zitten sensoren in je tel waar je geen weet van heb, En je ab werkte vroeger ook zo, dus het is niet gek om dat ook in een Smartphone te zetten.
Thuisbezorg.nl?
In het geval van Apple (althans, iPhone 6.. de 7 heb ik niet getest) werkt 'Hey Siri' alléén als deze aan het stopcontact (of autolader) zit en niet als 'ie in je broekzak zit.
Zal je net met je vingers tussen de deur zitten of Gerard Joling heten :+
Vreemd dat dit werkt. De theorie van een ADC (analoog-digitaal-converter) vereist dat indien je het signaal wil samplen aan 44kHz, dat alle frequenties boven de 22kHz weggefilterd zijn.
Voor de beste kwaliteit hoort er dus een analoge filter voor de adc te staan die deze frequenties wegfilterd, omdat je anders last kan krijgen van aliassing van die hogere frequenties in de hoorbare frequenties.

Gezien deze aanval werkt lijkt dat dus in de praktijk niet het geval te zijn, en word er bij de microfoon gewoon vanuit gegaan dat er in de praktijk weinig omgevingsgeluid boven de 22kHz is.

Meer informatie over aliasing kan je op wikipedia lezen:
https://en.wikipedia.org/...ling_sinusoidal_functions

Indien het werkelijk een gebrek aan filtering is waardoor dit mogelijk is, is het dus ook niet mogelijk om dit in software op te lossen, maar moet een filter in hardware worden toegevoegd.

[Reactie gewijzigd door Adion op 7 september 2017 11:23]

Voor de beste kwaliteit hoort er dus een analoge filter voor de adc te staan die deze frequenties wegfilterd,
Het is mogelijk om middels het filteren van ultrasone frequenties een normaal geluid over te houden.
Dit is bijvoorbeeld hoe DSD werkt.
Als je weet welke frequentie het anti alias filter heeft dan kun je een ultrasoon signaal uitrekenen dat door dat filter wordt omgezet naar een normaal geluid.

Ze kunnen mischien ook misbruik gemaakt heben van andere nonlineariteiten in het analoge audio pad.

[Reactie gewijzigd door koelpasta op 7 september 2017 18:35]

Eh, nou. DSD heeft wel een hoge clockrate, maar het zijn nog steeds geen ultrasone frequenties. Het zijn gewoon akoestische frequenties met Delta-Sigma modulatie.

En een low-pass filter zet ultrasone signalen niet om in hoorbaar geluid; een low-pass filter blokkeert de hoge frequenties. Het zijn inderdaad niet-lineariteiten : het low-pass filter is elektrisch, de ultrasone geluiden zijn akoestisch, en de non-lineariteit zit in de microfoon daartussen.
DSD heeft wel een hoge clockrate, maar het zijn nog steeds geen ultrasone frequenties.
Ultrasoon is per definitie gewoon het geluid dat boven onze gehoorgrens ligt, dus alles boven de 20kHz.
Aangezien DSD op iets van 2MHz moduleert is het DSD signaal wel degelijk ultrasoon.
Je verwart hier denk ik het signaal dat gecodeert is met het DSD signaal zelf.
En een low-pass filter zet ultrasone signalen niet om in hoorbaar geluid;
Volgens mij wel. Het lowpassfilter blokkeert niet zozeer, het middelt (integreert) de 2MHz modulatie uit tot een geluid dat we kunnen waarnemen.

Als je ook spectra bekijkt van een DSD bitstream (ff googlen) dan zie je duidelijk dat alle energie zich eigenlijk ver boven de gehoorgrens bevindt = ultrasoon.
Het heeft nog een staartje in het hoorbare spectrum maar dat is op 20kHz zo'n -100dB, dus in de praktijk niet hoorbaar.

Hiermee wil ik overigens niet uitsluiten dat de microfoon ook een bruikbare bron van filtering is voor zo'n truuk.
Ey, nee, nu haal je weer samplerate en signaalfrequentie door elkaar. Dat die verschillend moeten zijn is de hele basis van Nyquist.
Ik haal het niet door de war.
Jij haalt denk ik iets door de war. :)

Volgens mij ben je nu een beetje blind dingen aan het afschieten ook. :)

Ik heb het over de sigma-delta bitstream zelf.
Dat is een voorbeeld van een ultrasoon signaal dat middels een filter wordt veranderd in een normaal hoorbaar audiosignaal.
Je zou daar een acoustische versie van kunnen maken.

Verder vind ik je theorie verderop over de microfoons wel een goede. Als die inderdaad zo brak zijn als je beschrijft dan is dat het filter dat in aanmerking komt voor deze truuk.
Het is niet zo dat de techniek het vereist, maar om betrouwbaar te sampelen moet de sample frequentie 2 * de te onderscheiden frequentie zijn.

Menselijke spraak is rondom 4Khz, daarom was de sample frequentie van telefoons van origine 8Khz (aLaw, uLaw formaten). Bij transmissie met 8 of 7 bits kom de je dan op 64Kbps en 56Kbps (ISDN (EU) resp US modems) als basis snelheid.

Alle hogere frequenties als 2 * de basis frequentie zorgen voor ruis in het uiteindelijk uitgangs signaal, maar zullen niet betrouwbaar zijn. De sample techniek zelf is dus het filter.
Lees de paper (link in artikel).
.. By leveraging the nonlinearity of the microphone circuits, the modulated low-frequency audio commands can be successfully demodulated, recovered, and more importantly interpreted by the speech recognition systems.
Gezien deze aanval werkt lijkt dat dus in de praktijk niet het geval te zijn, en word er bij de microfoon gewoon vanuit gegaan dat er in de praktijk weinig omgevingsgeluid boven de 22kHz is.
Ik denk dat je uitgangspunt al niet klopt en dat er op een veel hogere frequentie wordt gesampled. 44kHz was 20 jaar geleden wel de norm bij geluidskaarten, maar tegenwoordig is dat meestak 96kHz of nog hoger. Geen idee wat ze op de telefoons doen.
Hoewel veel geluidskaarten 96kHz ondersteunen, is de standaardinstelling nog steeds overwegend 44khz.
Het is praktisch nogal zinloos om hoger te samplen, vermits onze oren in die 20 jaar niet beter zijn geworden.
Zeker voor iets always-on als Siri lijkt het me nogal zinloos om hier bandbreedte en rekenkracht aan te verspillen.

Op android is de standaard 48kHz geloof ik voor de meeste toestellen.

Interessant lees- en kijkvoer hierover:
https://people.xiph.org/~xiphmont/demo/neil-young.html

[Reactie gewijzigd door Adion op 7 september 2017 11:45]

Het is praktisch nogal zinloos om hoger te samplen, vermits onze oren in die 20 jaar niet beter zijn geworden.
Daar ga je even heel kort door de bocht. Hoewel de maximale frequentie bij 44kHz idd 22kHz is, kan dat signaal effectief maar 2 fasen hebben. Een fase verschuiving van een kwart golflengte zal effectief al niet meer weergegeven kunnen worden.

Overigens doet een goede ADC typisch wel al aan oversampling, ookal is de output een lagere sampling rate.

[Reactie gewijzigd door .oisyn op 7 september 2017 11:55]

Nope, je bent niet beperkt tot 2 fasen.
Deze video geeft op 6:49 al een hint:
https://xiph.org/video/vid2.shtml

En hier ook een tekening die dit verduidelijkt:
https://dsp.stackexchange...ist-frequency-phase-shift
(Zoals verduidelijkt in het antwoord op de vraag is de tekening enigsinds fout omdat de sampling frequentie exact het dubbel is van de gesamplede frequentie. Het is makkelijk in te zien dat zolang de frequentie ook maar iets hoger ligt elke fase voorgesteld kan worden)

In theorie zou ik ook denken dat dit in de ADC met bijvoorbeeld oversampling word opgelost, maar misschien word er voor de microfoon geen goede ADC gebruikt voor andere redenen?
(Het is nog steeds de enige verklaring die ik kan bedenken waarom frequenties boven de 20kHz het toestel binnenkomen, en bovendien door de software aanzien worden als frequenties onder de 20kHz)

[Reactie gewijzigd door Adion op 7 september 2017 12:10]

Een fase verschuiving van een kwart golflengte zal effectief al niet meer weergegeven kunnen worden.
Adion legt het al uit, maar ik wou nog toevoegen dat de faseresolutie van een signaal dat in de buurt van de sampling rate leeft voor een belangrijk deel wordt bepaald door de bitresolutie van het signaal.

Jij hebt ook wel gelijk, alleen geldt je uitspraak voor signalen die enkel 2 waardes kunnen aannemen, dus in feite voor 1-bits signalen.
Nee, ik heb ook gelijk bij grotere bitdieptes, maar ik was wat te strict en eigenlijk boeit het niet. Een signaal dat exact de nyquistfreqentie is, kan niet met meer dan twee fases weergegeven worden (namelijk {1, -1, 1, -1, ...} en {-1, 1, -1, 1, ...}). Een faseverschil zal ervoor zorgen dat de amplitude afneemt: je sampelt dan bijvoorbeeld { 0.5, -0.5, 0.5, -0.5, ...}

Maar dan hebben we het over *exact* de nyquist frequentie, dus 22kHz bij 44kHz. Een signaal dat daar iets vanaf ligt zal wel een unieke reeks van samples opleveren.

[Reactie gewijzigd door .oisyn op 7 september 2017 19:27]

Een signaal dat exact de nyquistfreqentie is,
Dan snap ik je antwoord op Adion niet echt.
Hoe dan ook is de nyquist frequentie geen geldige frequentie om te samplen. Je krijgt inderdaad ambigue sampledata en het signaal kan niet meer worden gerecostrueert.

Maar daar leek je het niet over te hebben. :?
Want ook een faseverschuiving levert hetzelfde (ambigue) resultaat op en daarnaast heeft Adion het niet gehad over samplen van een frequentie die gelijk was aan de nyquist frequentie.
Ik haal er in ieder geval niet uit dat we het strict over het samplen van een Fs/2 hadden.
Dan snap ik je antwoord op Adion niet echt.
Omdat ik me niet realiseerde dat het probleem niet optreedt bij frequenties die iets hoger en lager zijn dan dat ;)
48kHz is geintroduceerd omdat die synchroon te maken is met videosignalen (PAL, NTSC). De 44100Hz frequentie is geen deler van de pixelklok van het signaal, waardoor je continu moet corrigeren (soort schrikkeljaar constructie). Door 48000Hz te gebruiken kunnen audio en video van de inkomende klok van de ontvanger worden afgeleid, en blijft alles synchroon, ook bij bijvoorbeeld Doppler effecten in satelliet ontvangst. Kwalitatief heeft het geen noemenswaardig voordeel boven 44100.

Tegenwoordig gebruiken eigenlijk alleen CDs nog 44100 als frequentie.
side note: dit is waarom een actiefilm thuis 4% heftiger is dan in de bioscoop ;)
wanneer men een bioscoopfilm (24 frames per seconde) naar een PAL medium (25fps) overzet, wordt de film gewoon 4% sneller; als de eerste seconde van de bioscoopfilm op is (24 frames) heeft PAL er nog eentje nodig om de seconde vol te maken. Dat wordt gewoon het eerste frame van de volgende bioscoopfilm-seconde.
De conversie van Bios => PAL heeft dus als positief bijeffect dat de film 1/25 = 4% sneller speelt - en dat beleef je over het algemeen als spectaculairder.
Voor de Amerikanen is er overigens een stuk meer gegoochel nodig om de conversie Bios 24fps => NTSC 29en-een-beetjefps een beetje fatsoenlijk te krijgen. zie https://en.wikipedia.org/wiki/Telecine
Hmm, als ik nog eens zo'n trage actie film uit de jaren '80 ga zitten kijken (terminator enzo) ga ik eens proberen om elk 25ste frame weg te gooien, kijken of dat helpt :)
Volgens mij was het iets simpeler: de hele telecom hoek gebruikt 8000/16000/32000 Hz. Een 48 Khz signaal is triviaal te downsamplen naar 16 of 8, desnoods door decimatie. Zelfs 32 kHz is een kwestie van een simpele 3:2 resampler. Om 44100 Hz te downsamplen naar 8000 Hz heb je een 441:80 downsampler nodig (!). Dat is echt een ongelukkige verhouding.
Volgens mij was het iets simpeler: de hele telecom hoek gebruikt 8000/16000/32000 Hz. Een 48 Khz signaal is triviaal te downsamplen naar 16 of 8, desnoods door decimatie. Zelfs 32 kHz is een kwestie van een simpele 3:2 resampler. Om 44100 Hz te downsamplen naar 8000 Hz heb je een 441:80 downsampler nodig (!). Dat is echt een ongelukkige verhouding.
Daarbij moet gezegd worden dat de 48kHz sampling rate niet uit de telecom industrie afkomstig is maar uit de videoindustrie. :)
http://www.tvtechnology.c...he-48-khz-question/184354
Het is dan inderdaad wel zo dat die 3:2 verhouding tussen 48kHz en 32kHz ze goed uitkomt.
Dat is echt compleet niet de discussie 8)7
alles op telefoons is 44 (edit:48) khz. dat is een antwoord op de hierboven gestelde vraag. de uitleg over mp3 geeft aan waarom het geen prio heeft bij fabrikanten om met hogere hz te werken

geluidskwaliteit kun je niet laten zien in een reclame op tv of op straat. dat is nog een goede reden om er geen cent teveel aan uit te geven. de samsungs en appels geven dat geld liever uit aan gimmicks zoals biometrische sensors en software troep die je nooit gebruikt. en waterdichtheid natuurlijk.

[Reactie gewijzigd door Origin64 op 7 september 2017 18:19]

Was dat maar zo. We hebben op 't werk er een verzameling doorgemeten (kijken of we geluidsherkenning kunnen doen). Veel microfoons houden er bij 7 kHz wel zo'n beetje mee op. Ook logisch: telefonie gebruikt standaard 300-3500 hz, en in hoge kwaliteit 300-7500 Hz. De bjibehorende codecs hebben sample rates van 8000 en 16000 Hz. 44.1 kHz past niet echt in dat rijtje.
dat van die microfoons wist ik niet, maar dat telefonie alleen laagfrequent is is volgens mij redelijk bekend. dat is een van de hoofdredenen dat het nog steeds zo blikkerig klinkt.

maar als jij een mp3tje afspeelt op een headset dan kunnen de meeste telefoons dat met 48khz doen. dat is volgens mij de spec waar de audio hardware tegen wordt gemaakt. hoger heeft weinig nut, lager en dan zouden andere fabrikanten kunnen gaan marketen dat zij wel mp3tjes zonder concessies kunnen afspelen.

heb je alleen mobiel-microfoons getest, of ook een aantal headset / desktop microfoons?

[Reactie gewijzigd door Origin64 op 7 september 2017 18:21]

Je wil niet weten hoeveel microfoons wij getest hebben ;) Headset microfoons niet (geen business voor ons) maar wel desktop microfoons, o.a. voor het bedrijf dat de microfoons voor de FBI verhoorkamers levert. Die dingen moeten goed zijn :D
Hoe kom je er ook op om dit te testen? Kijken of de microfoon aan de specs voldoet wat Apple opgeeft?

[Reactie gewijzigd door Macboe op 7 september 2017 11:24]

Er zijn mensen die het tot een hobby of beroep geheven hebben om lekken te vinden in software en hardware. Daar zit gewoon geld in.
Daar wordt je vanzelf heel creatief van.
Dat is nu Hacken in de ware zin van het woord.
Was voor @Macboe

[Reactie gewijzigd door tweaknico op 7 september 2017 11:55]

Ingebouwde microfoons worden al een tijdje gebruikt om 'air gap' beveiliging (= een toestel dat niet aan een netwerk hangt kan niet zonder fysieke toegang gehackt worden) te omzeilen, zij het voorlopig wel alleen op een theoretische manier (voor zover wij weten). Door bepaalde geluidsgolven te produceren zou je via de microfoon van de niet-geconnecteerde computer toegang kunnen krijgen.
Deze DolphinAttack lijkt me dus gebaseerd op dezelfde gedachtengang.
Alleen toestellen die het bedienen van de assistent mogelijk maken zonder het scherm te ontgrendelen, zijn vatbaar voor de aanval. De aanval is voor zover bekend nog niet misbruikt.
In welke gevallen werkt zo'n assistent bij een gelockt toestel in een praktisch scenario? Dat is toch überhaupt een (beveiligings) probleem? Waarom zou je dat willen?

[Reactie gewijzigd door Ton Deuse op 7 september 2017 11:26]

Ik gebruik Siri heel vaak als mijn iPhone vergrendeld is, zodat ik (whatsapp) berichten kan luisteren, versturen, contacten bellen, muziek luisteren, navigeren en ondertussen auto rijden..... er zijn genoeg praktische scenario's te bedenken. je wilt niet in de auto telkens je iPhone ontgrendelen om handelingen uit te voeren. Ik kan het me even alleen inbeelden in bijv een stad dat iemand met dit soort apparaat in de buurt kom, maar dan heb ik oordoppen in dus merk alles wat er met mijn iPhone gedaan wordt. Dit is opzich dus nog geen direct gevaar voor alle scenario's.
Ja maar Siri luistert toch alleen mits de iPhone aan een stroombron hangt? (Powerbank, autolader, stopcontact). Althans, bij de iPhone 6 wel, weet niet of het vanaf de 6S anders is..
Bij de 6S of nieuwer hoeft dat niet, gelukkig dus ook niet bij mijn SE:)
Ik geloof dat de devices die tonen ook niet kunnen waarnemen, maar wel dat ze het registreren als de helft, een kwart of een achtste van de toon, en op deze manier het wel kunnen registreren en "gebruiken".
Omdat de samplingfrequentie bepekt is, kan wel exact de helft waargenomen worden, en wordt de tussenliggende golf "vergeten". Maar dit weet ik niet zeker.
Ik geloof dat deze hack werkt door een non-lineaire mix in de microfoon. Als je een mix maakt van een 26 kHz en een 28 khz geluid, dan zal een perfecte microfoon die onveranderd doorgeven. Een niet-perfecte microfoon maakt echter ook een (zwak) 2 Khz en 54 kHz signaal aan. (28-26 en 28+26 respectievelijk).

Na het hardware anti-aliasing filter op 20 khz is alleen het zwakke 2 kHz signaal over. In software is er dus niets meer te fixen.
"...waadoor de impact van de aanval dus beperkt is" - Ik kan me een scenario bedenken waarbij, bv bij een groot festival, de speakers misbruikt kunnen worden. Dan is het ineens veel grootschaliger..
Dus, kwestie nu van een duur betaal nummer opzetten, zo'n ding portable maken en in je rugtas stoppen, en dan lekker door de drukke binnenstad van Amsterdam?
past dat nog wel naast je ik-schrijf-bij-iedereen-in-een-straal-van-x-meter-via-nfc-25-euro-af-apparaat in die rugzak? :P
Als je dan toch bezig ben, doe er direct een Pineapple WiFi bij om het feest compleet te maken ;-)
Dit betekend echter niet dat alle iPhones meteen kwetsbaar zijn voor zo een soort aanval.

Je moet namelijk altijd nog de functie 'Hey Siri' aanzetten in jou iPhone. Wanneer je dit gewoon uit hebt staan kan zo een soort aanval natuurlijk niets uitvoeren op jouw toestel.

Lijkt me ook dat dit mogelijk moet zijn bij 'Ok Google'.
Inderdaad. Er is gewoon een setting om te bepalen of je de assistent wel of niet wil kunnen aanzetten met een gelocked scherm.
Geen probleem voor gebruikers van Apple toestellen die de M9 chip bevatten (iPhone 6S en daarboven). Vanaf de iPhone 6S herkent Siri individuele stemmen en luistert deze enkel naar de stem van de eigenaar.

Bron: http://bgr.com/2015/09/30...one-6s-voice-recognition/

Op dit item kan niet meer gereageerd worden.


Apple iPhone X Google Pixel 2 XL LG W7 Samsung Galaxy S8 Google Pixel 2 Sony Bravia A1 OLED Microsoft Xbox One X Apple iPhone 8

© 1998 - 2017 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Hardware.Info de Persgroep Online Services B.V. Hosting door True

*