image

Forensische software kan Signal-gespreksdatabase ontsleutelen

woensdag 4 september 2019, 11:45 door Redactie, 19 reacties
Laatst bijgewerkt: 04-09-2019, 12:38

Ontwikkelaar van forensische software ElcomSoft heeft een nieuwe versie van het programma "Phone Viewer" uitgebracht waarmee de gespreksdatabase van de versleutelde chat-app Signal is te ontsleutelen. Hiervoor is het wel nodig dat er eerst fysieke toegang wordt verkregen tot het filesystem van de telefoon.

Signal versleutelt de gesprekken van gebruikers via end-to-end-encryptie. Het maakt daarnaast geen gebruik van cloudgebaseerde synchronisatie en de gespreksgeschiedenis wordt nooit in iCloud opgeslagen of met iTunes geback-upt. Dit in tegenstelling tot verschillende andere chatdiensten. Zo synchroniseert Apple iMessages via iCloud, bewaart Microsoft Skype-gesprekken in het Microsoft-account van de gebruiker en heeft Telegram een eigen clouddienst om alles behalve privéchats te synchroniseren.

Signal bewaart wel lokaal op de telefoon een database met de gesprekken van de gebruiker. In tegenstelling tot veel andere chat-apps, zoals WhatsApp, Skype en Telegram, is de database van Signal wel versleuteld. Hiervoor maakt de app gebruik van een 'custom' encryptiealgoritme en een willekeurige encryptiesleutel, stelt ElcomSoft.

ElcomSoft laat nu weten dat het erin is geslaagd om de sleutel waarmee de Signal-database op het toestel is versleuteld te achterhalen en zo de database te ontsleutelen. Het is echter wel eerst vereist om via fysieke extractie het bestandssysteem en de keychain te verkrijgen. Zodra de database is ontsleuteld hebben gebruikers van Phone Viewer toegang tot accountgegevens, telefoonlogs, gesprekken en bijlagen van de Signal-gebruiker.

Image

Reacties (19)
04-09-2019, 12:05 door Anoniem
End to end encryption wil niets zeggen als je een MITM aanval kunt uitvoeren.
Je hebt dus niets eraan.
04-09-2019, 12:11 door Anoniem
Tja... Elke versleutelde database is toch te ontsleutelen als je de private key hebt?
04-09-2019, 12:19 door Anoniem
Lijkt me nutteloos, aangezien signal gebruikt maakt van self destructing messages.
Hoe groot is de kans dat na het unlocken van een telefoon, wat al een vraag op zich is of dat lukt. Er nog berichten aanwezig zijn die nog niet self destructed zijn
04-09-2019, 12:35 door Anoniem
Storm in een glas water.

Er is nog steeds fysieke toegang nodig omdit uit te kunnen voeren.
04-09-2019, 12:38 door Anoniem
Oftewel die keychain-faciliteit is lek.

Maar dat stukje 'custom'-encryptie baart ook wel zorgen.
04-09-2019, 12:50 door Anoniem
Wat is het nut van deze tool als ik mijn berichten kan lezen op het scherm wanneer ik signal open?? Of probeerd m'n te vertellen dat er een bug in het systeem zit?
04-09-2019, 13:44 door Anoniem
Dit is hetzelfde als het opslaan van een sleutel op een systeem toch? Die sleutel moet er zijn, want de gebruiker voert het niet elke keer opnieuw in. Het probleem zit hem eerder in de foute veronderstelling van de bouwer van het systeem dat hiermee een afdoende beveiliging is bereikt.

Ik zie regelmatig claims dat een database op een server is beveiligd. Ja, maar dan wel met een sleutel die op dat systeem staat. Ben je als aanvaller op het systeem, dan kun je die sleutel bemachtigen tenzij je heel speciale voorzorgsmaatregelen treft. Hoe zouden systeemontwerpers dit kunnen verbeteren?
04-09-2019, 14:53 door Anoniem
> fysieke toegang
Met fysieke toegang kun je eigenlijk alles wel voor elkaar krijgen. Onder andere bruteforce-beveiliging is dan geen issue meer. Dat deze software is uitgebracht was een kwestie van tijd. Als je niet wil dat men jouw berichten kan lezen moet je ze helemaal niet op de telefoon opslaan of full disk encryption toepassen, en je telefoon uitzetten op momenten dat je telefoon kwetsbaar is voor diefstal of manipulatie.
04-09-2019, 15:17 door Anoniem
Daar hoef je toch geen raketspecialist voor te zijn?
Zoek de private key, en je bent binnen.
04-09-2019, 16:11 door Anoniem
Dus in principe als je telefoon unlocked is en je ook de Signal app kunt openen
04-09-2019, 18:34 door Briolet
Door Anoniem: Lijkt me nutteloos, aangezien signal gebruikt maakt van self destructing messages.
Hoe groot is de kans dat na het unlocken van een telefoon, wat al een vraag op zich is of dat lukt. Er nog berichten aanwezig zijn die nog niet self destructed zijn

Je kunt die messages al veel eerder onderschept hebben. Misschien heb je weken aan messages onderschept. Als je dan eenmaal die private key bemachtigd, kun je de oude massages alsnog lezen.
04-09-2019, 19:36 door Anoniem
Door Briolet:
Door Anoniem: Lijkt me nutteloos, aangezien signal gebruikt maakt van self destructing messages.
Hoe groot is de kans dat na het unlocken van een telefoon, wat al een vraag op zich is of dat lukt. Er nog berichten aanwezig zijn die nog niet self destructed zijn

Je kunt die messages al veel eerder onderschept hebben. Misschien heb je weken aan messages onderschept. Als je dan eenmaal die private key bemachtigd, kun je de oude massages alsnog lezen.

Nee hoor, ooit gehoord van perfect forward secrecy?
Hetgeen signal en andere end-to-end encryptie apps gebruiken.

Het betekent dat elk bericht een nieuwe sleutel krijgt, het achterhalen van een sleutel heeft dan slechts nut voor 1 bericht. Omdat elk ander bericht een andere sleutel gebruikt.

Eerder werd gesproken over een MITM-attack, ook nutteloos voor signal omdat er gebruik wordt gemaakt van end-to-end encryptie. Het onderscheppen van de data op een server is nutteloos.
04-09-2019, 21:57 door Anoniem
Door Anoniem: Tja... Elke versleutelde database is toch te ontsleutelen als je de private key hebt?

Uh, ja, maar je moet het nog wel _doen_ , die private key ergens uit vissen, reverse engineeren hoe de encryptie werkt, en reverse engineeren hoe de data in de database zit.

In het artikel staat dat Elcomsoft _forensische software_ levert - in die situatie is er meestal sprake van fysieke toegang tot het device .
Ook niet vreemd dat ze een persbericht maken om te melden dat ze hun software hebben uitgebreid met deze nieuwe functie.
04-09-2019, 23:23 door Anoniem
Door Anoniem: End to end encryption wil niets zeggen als je een MITM aanval kunt uitvoeren.
Je hebt dus niets eraan.
Dat kan dus ook niet met het protocol dat Signal gebruikt. Het werkt met getekende sleutels en de publieke sleutels worden op voorhand al door de server verspreid en zijn door de gebruikers onderling in separate kanelen te checken. Geen MITM dus (ook niet op WhatsApp of Threema die het vrijwel identieke (open source) protocol volgen. Graag dus eerst studeren en dan pas roepen?
05-09-2019, 10:15 door johanw
Ik ben technisch bekend met de situatie onder Android. Op iOS versleutelt Signal de database helemaal niet maar vertrouwd op de bescherming die Apple in de toegang tot het bestandsssysteem inbouwt.

Onder Android versleutelt Signal de database met een app key die op het Android filesysteem staat (in /data/) en die zelf weer versleuteld wordt met een key die (in Android 6 en hoger) als het goed is in niet uit te lezen hardware staat (de Android keystore). Die appkey is echter alleen maar versleutelt als er een system lock actief is (dus pincode, wachtwoord, veegpatroon of vinger afdruk). Als je in het toestel kunt komen is die toegang waarschijnlijk wel te brute forcen en zo kom je wel aan die key, nog even afgezien van mogelijke implementatie fouten.

Veel hiervan is al lang bekend, dat is al uitgezocht door mensen die handmatig hun chats willen restoren als er iets foutgegaan is met de backup. Zie bv. https://community.signalusers.org/t/howto-manual-backup-restore-if-full-backup-does-not-work/2462
05-09-2019, 11:53 door Anoniem
Samenvatting van een aantal comments...
Hoop geblaat over hoe slecht het is, terwijl het de enige is die wel wat aan privacy doet. Misschien niet perfect.

Verder lijkt me de hack vrij zinloos als je toegang tot het encrypte file systeem van de telefoon hebt, kun je gewoon Signal openen en de gesprekken bekijken.
Hoogstens wat lastiger als iemand 2FA heeft aangezet voor Signal. Hoewel dat meestal dezelfde vinger is die voor het ontgrendelen is gebruikt.
05-09-2019, 13:23 door Anoniem
Wat Signal zou kunnen doen is de sleutel van de database nog een keer versleutelen met een fatsoenlijk sterke key (denk aan offline bruteforce kraken met GPUs als je wilt bepalen hoe sterk je moet versleutelen) en dat resultaat op de telefoon opslaan. Je moet dan die "fatsoenlijk sterke key" hebben voordat je signal kan opstarten. Ideaal zou zijn als die in een TPM/SIM, of andere security enclave wordt opgeslagen. Dan kan een telefoon die uit staat wel worden uitgelezen (fysieke toegang) maar staat de key niet op het filesysteem en kan niet worden uitgelezen.
05-09-2019, 17:18 door Anoniem
Door Anoniem: Wat Signal zou kunnen doen is de sleutel van de database nog een keer versleutelen met een fatsoenlijk sterke key (denk aan offline bruteforce kraken met GPUs als je wilt bepalen hoe sterk je moet versleutelen) en dat resultaat op de telefoon opslaan. Je moet dan die "fatsoenlijk sterke key" hebben voordat je signal kan opstarten. Ideaal zou zijn als die in een TPM/SIM, of andere security enclave wordt opgeslagen. Dan kan een telefoon die uit staat wel worden uitgelezen (fysieke toegang) maar staat de key niet op het filesysteem en kan niet worden uitgelezen.

Als dat kon dan zou je toch meteen de eerste key daar neerzetten?

Het hele punt is dat die keychain (waar de eerste key al staat) dus ook niet veilig is.
09-09-2019, 12:11 door Anoniem
Signal zodanig instellen, dat het geen, of heel weinig, oude berichten opslaat. Kan nogal simpel - geen data, geen lek!
En Signal backups UITzetten (default is UIT)
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.