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. Je kunt ook een cookievrije versie van de website bezoeken met minder functionaliteit. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , reacties: 51, views: 17.160 •
Submitter: Icingdeath

Twee onderzoekers zeggen een proof-of-concept te hebben ontwikkeld waarmee volgens de tls 1.0-standaard versleutelde ssl-verbindingen kunnen worden gekraakt. Daarmee komt de beveiliging van een groot aantal websites in gevaar.

https sslBeveiligingsonderzoekers Thai Duong en Juliano Rizzo kondigen de ssl-hack deze week aan op de Ekoparty-conferentie in Buenos Aires. In tegenstelling tot bij eerder openbaar gemaakte kwetsbaarheden in de ssl-standaarden, gebruiken de beveiligingsonderzoekers geen man-in-the-middle-methode, maar een decryptieproces in de browser. Tijdens hun presentatie zouden de beveiligingsonderzoekers willen aantonen dat zij een authenticatie-cookie van betalingsverwerker PayPal kunnen kraken en zo de ssl-beveiliging weten te doorbreken, zo meldt The Register.

De hack, Beast geheten en geschreven in javascript, ontsleutelt ssl-data met behulp van een sniffer. Beast maakt gebruik van een kwetsbaarheid in tls 1.0 waarbij voor het versleutelen van plaintext-datablokken de data van een voorgaand blok wordt gebruikt. Hackers zouden dit proces kunnen manipuleren om zo alsnog de data in handen te krijgen.

Tot nu toe werd deze kwetsbaarheid in tls 1.0 als een zuiver theoretisch probleem gezien en daarom moeilijk uitvoerbaar. De javascript-code van Beast zou echter in staat zijn om authenticatie-cookies te kraken, maar snel is het proces nog niet. Bij de huidige implementatie zou Beast circa twee seconden nodig hebben om elke versleutelde byte te decrypten. Zo zou het ontsleutelen van een ssl-cookie een half uur duren. De onderzoekers zouden er echter in geslaagd zijn om dit proces met codeoptimalisaties flink te versnellen.

Hoewel de methode van Beast niet werkt op tls-versies 1.1 en 1.2, gebruiken vrijwel alle websites die https-verbindingen aanbieden nog tls 1.0. Ook veel browsers ondersteunen de verbeterde tls-encryptie nog nauwelijks, terwijl de ontwikkelaars die de veelgebruikte OpenSSL-bibliotheek bouwen, nog steeds tls 1.2 in de code moeten implementeren. Bovendien zijn veel website-eigenaren huiverig om tls 1.1 of hoger op hun sites te implementeren en af te dwingen, omdat veel bezoekers er dan niet in zullen slagen om een https-verbinding op te zetten.

Reacties (51)

Weer security ... bij mij staat TLS 1.0 bij de IE advanced opties gelukkig (standaard?) uit.
Onder het motto van; "Beter geen beveiliging dan beveiliging die gekraakt kan worden?".

Als de website enkel TLS 1.0 aanbied dan kan jij wel 1.1 of 1.2 verzoeken, maar daar heb je dan simpelweg geen voordeel bij.
Onder het motto van; "Beter geen beveiliging dan beveiliging die gekraakt kan worden?".
SSL 2.0 en SSL 3.0 staat aan in IE 7 (van de baas) ... misschien lukt het daar wel mee. Encryptie kan vereist worden door de website en dan zal die b.v. SSL 2.0 kiezen, denk ik.
edit: @Eagle Creek: in win xp, IE 7 van de baas staat TLS 1.0 uit(gevinkt) en SSL 2.0 en SSL 3.0 aan(gevinkt) bij mij. Al dan niet door policy, en dat is dus anders dan bij jouw.
Heb linux thuis ... FF :) 3.6.22 xubuntu 10 lts ... aangevinkt: ssl 3.0 en TLS 1.0 :(

[Reactie gewijzigd door Xubby op 20 september 2011 20:30]

We hebben het hier over TLS 1.0, 1.1 en 1.2. Dat staat los van SSL 2.0 en SSL 3.0.

Controleer dit maar bij je opties in IE8/9 (6 en 7 heb ik even niet bij de hand).
Standaard ingeschakeld zijn SSL 3.0 en TLS 1.0, standaard uitgeschakeld zijn SSL 2.0 , TLS 1.1 en TLS 1.2.

Bij andere browsers is dat niet per se anders. De nieuwste versie van Firefox (6.0.2) ondersteunt zelfs helemaal geen TLS-versie hoger dan 1.0 (hoewel ik hier al een Bugzilla-verzoek over zag staan van enkele jaren geleden). SSL 2.0 is overigens ook niet in te schakelen, maar opties hiervan komen wel terug in de configuratie. Maar waarom je SSL 2.0 zou willen hebben is me niet helemaal duidelijk: dit zou je juist willen uitschakelen omdat SSL 3.0 veiliger is. In het geval van TLS gaat dit niet op, daar 1.2 en 1.1 veiliger zijn dan het (nu dus mogelijk gekraakte) 1.0.

Edit
@Xubby: ik spreek over standaardconfiguraties. Dat de beheerders bij jou op de zaak een andere configuratie hebben kan inderdaad zo zijn.
Controleer het anders even op de thuispc? :)

[Reactie gewijzigd door Eagle Creek op 20 september 2011 11:17]

Tijdens hun presentatie zouden de beveiligingsonderzoekers willen aantonen dat zij een authenticatie-cookie van betalingsverwerker PayPal kunnen kraken en zo de ssl-beveiliging weten te doorbreken

Tis nog maar een aankondiging geen proofofconcept mss dat dat wel komt
Dus dan zal ook wel een fix hierop uitrollen

terwijl de ontwikkelaars die de veelgebruikte OpenSSL-bibliotheek bouwen, nog steeds tls 1.2 in de code moeten implementeren
Neem aan dat dit dus TLS 1.0 moet zijn ?

[Reactie gewijzigd door postbus51 op 20 september 2011 18:13]

Dus omdat TLS 1.0 niet helemaal veilig is, laat je de oudere versies SSL 2.0 en SSL 3.0 wel aan staan? TLS 1.0 is een (licht) verbeterde versie van SSL 3.0... en heeft waarschijnlijk precies dezelfde flaw.
TLS 1.x wordt ook wel SSL 3.(x+1) genoemd.
i.e. TLS 1.0 ~= SSL 3.1 en TLS 1.2 ~= SSL 3.3
TLS 1.0 is een (licht) verbeterde versie van SSL 3.0... en heeft waarschijnlijk precies dezelfde flaw.
Ik ben geen expert, maar op dat laatste ga ik geen weddenschappen afsluiten:
"The main difference is that, while SSL connections begin with security and proceed directly to secured communications, TLS connections first begin with an insecure “hello” to the server and only switch to secured communications after the handshake between the client and the server is successful. If the TLS handshake fails for any reason, the connection is never created."

Ofwel: SSL 3.0 (inderdaad de voorganger van TLS 1.0) begint direct met een beveiligde verbinding, terwijl TLS eerst een onbeveiligde "hello" stuurt en pas na de handshake een beveilligde verbinding maakt.
"

edit: The vulnerability resides in versions 1.0 and earlier of TLS, or transport layer security, the successor to the secure sockets layer technology that serves as the internet's foundation of trust." Ofwel: SSL 2.0 en SSL 3.0 bevatten dezelfde kwetsbaarheid.
En aangezien TLS 1.1 en 1.2 vaak niet ingeschakeld staan, is er voor veel pc's geen theoretisch veilig protocol beschikbaar, lijkt het.
Overigens: het zijn instelling gedaan "door de baas" niet door mij: ik gebruik ff onder linux. :)

[Reactie gewijzigd door Xubby op 20 september 2011 12:16]

Onder het motto van; "Beter geen beveiliging dan beveiliging die gekraakt kan worden?".
Nee, onder het motto: 'Ik wil geen verbinding maken m.b.v. TLS1'. Dat is immers niet veilig.
Als de website enkel TLS 1.0 aanbied dan kan jij wel 1.1 of 1.2 verzoeken, maar daar heb je dan simpelweg geen voordeel bij.
Toch wel. Het voordeel is dan dat je weet dat (het bedrijf van) de betreffende site achterloopt qua security. Weet je gelijk hoe hoog dat bedrijf security in het vaandel heeft staan.
Desnoods kan je dan op eigen risico altijd alsnog besluiten er wel verbinding mee te maken, door 't (tijdelijk) weer aan te zetten.

[Reactie gewijzigd door kimborntobewild op 20 september 2011 15:22]

Als dit beter wordt ontwikkeld, want het is nog een PoC dan kan men proberen een nieuwe manier van verbinding maken gaan bedenken, of proberen dit lek te dichten.
Zoals ik het lees is dit meer een probleem van de luie mens.

Update uw browsers eens! De updates komen niet voor niks! Bedrijven werken er niet aan omdat ze het zo leuk vinden, maar om hun product beter te maken (lees o.a. veiliger).

En vooral de websites die het kunnen maken, vereis gewoon nieuwe technologie! Een bank (telebankieren) kan prima versie 1.2 afdwingen met als reden "veiligheid". Moet de bezoeker / gebruiker hiervoor zijn browser updaten, dan so be it.
Probleem is alleen dat somige mensen niet eens weten hoe zij hun PC moeten updaten. en het automatische updatesysteem staat dan vaak ook nog uit..

Kortom. Velighied ligt niet alleen bij de bank maar ook bij de eindgebruiker.
Ik kan me vergissen, maar staat dat niet juist vaak standaard aan?

Bij de laptop die ik als laatst gekocht heb in ieder geval wel. Je moet er dus al verstand van hebben om de auto-update uit te zetten.

Ook Internet Explorer en Firefox melden mij vriendelijk zodra er een update of nieuwe versie klaar staat.
Ik kan me vergissen, maar staat dat niet juist vaak standaard aan?
Bij dit soort mensen gewoon Chrome installeren, is dan wel even wennen dat die blauwe E ineens gekleurd is maar dan heb je in ieder geval wel altijd een actuele browser (mits men regelmatig online is). Deze keuze tot het updaten laat je hier dan niet aan de gebruiker over.
De bank is er juist om je geld veilig te houden omdat je oude sok dat niet is. Als je dan weer de verantwoordelijkheid bij de gebruiker neer legt, sabel je het hele principe van een bank neer.
Met de nieuwste Firefox en IE8/9 heb je ofwel geen mogelijkheid om 1.2 in te schakelen ofwel staat deze standaard uit. "Update uw browser eens" is derhalve niet de oplossing.
"Update uw browser eens" slaat in dit geval dus op de makers van firefox.
Zo is het niet door de poster bedoeld.
Update uw browsers eens! De updates komen niet voor niks! Bedrijven werken er niet aan omdat ze het zo leuk vinden, maar om hun product beter te maken (lees o.a. veiliger).
'Bedrijven' is dus juist de browsermakers.
Klinkt ingewikkeld en potentieel gevaarlijk. Blijft vreemd dat bedrijven nog steeds voor de makkelijkste oplossing gaan i.p.v. gebruik te maken van veiligere dingen die gewoon al op de plank liggen..
Ja, maar daar is weinig ondersteuning voor. Eenheidsworst wordt toch nog het meest verkocht, kijk maar naar Windows (of Apple).
Maatwerk kost geld. Door gebruik te maken van bestaande (standaard) oplossingen kun je besparen.

Daar komt nog bij: wanneer jij jouw webshop beveiligd met een techniek die de helft van je bezoekers niet kan gebruiken, loopt je inkomsten mis.

Als een nieuwe techniek doorgevoerd moet worden, leer de geschiedenis ons dat er een paar grote jongens het voortouw moeten nemen en de rest dan volgt. En deze grote jongens doen dat meestal uit financiele motieven. Soms uit (min of meer) idiologische, maar dat is meer uitzondering dan regel.
Chrome heeft optie TLS 1.0 hier aanstaan, enig idee of beveiiging juist omhoog of naar beneden gaat als ik die uitschakel?
Beveiliging wordt er niet beter op als je het uitzet. Een beetje beveiliging die kraakbaar is is altijd nog beter dan geen beveiliging at all.
Omlaag, want je schakeld helemaal de TLS1.0 uit.
Verder zullen hun de enigen zijn afaik.

Betekend nog niet dat we dit niet serieus moeten nemen.
Integendeel, TLS 1.1 of 1.2 afdwingen onder de gebruikers zouden ze moeten doen.
Als je TLS 1.0 uitzet dan werkt dat mechanisme niet. met andere worden. Je zult je beveilig omlaag halen.
Dit is volgens mij incorrect: Als TLS 2.0 aanstaat en je zet TLS 1.0 uit dan zou je zeggen dat de beveiliging naar boven gaat. De beste beveiliging is als je alles uitzet. Deze hack is dan ook vrij simpel ongedaan te maken: zet Javascript in je browser uit.
Dit is volgens mij incorrect: Als TLS 2.0 aanstaat en je zet TLS 1.0 uit dan zou je zeggen dat de beveiliging naar boven gaat.
Onzin natuurlijk. Als een website TLS 1.1 ondersteunt dan zal je browser gewoon van TLS 1.1 gebruik maken, ookal staat TLS 1.0 aan. Door TLS 1.0 uit te zetten zorg je dus alleen maar dat er in geval van een TLS 1.0 webserver een nog slechter ondersteund protocol gebruik gemaakt wordt (SSL 3.0 of lager), of dat er helemaal geen verbinding wordt gelegd.

[Reactie gewijzigd door .oisyn op 20 september 2011 11:02]

Onjuist, alleen de best mogelijke verbinding die aan beide kanten is geaccepteerd kan worden gebruikt. Tenminste voor zover ik weet.

Simpel voorbeeldje:

Site heeft TSL 1.0 aan staan
Mijn pc heeft TSL 1.0 en TSL 1.1 aan staan

Mijn pc verzend de ondersteunde methodes, met als hoogste voorkeur TSL 1.1

Site accepteerd geen TSL 1.1 en zal voor de eerstvolgende hoogste op de voorkeurslijst gaan, in dit geval 1.0

Mijn pc accepteerd TSL 1.0 en dit zal dan gebruikt worden bij het opzetten van de beveiligde verbinding

Geen van beide kanten kan de ander dwingen om een versie te gebruiken die geweigerd word. Of ik moet me al heel erg vergissen. :+
dat er in geval van een TLS 1.0 webserver een nog slechter ondersteund protocol gebruik gemaakt wordt (SSL 3.0 of lager), ...
Dan deugt er iets niet. Als je TLS1 uitschakelt, moet natuurlijk alles wat daaronder zit ook uitgeschakeld worden.
...of dat er helemaal geen verbinding wordt gelegd.
Dat is natuurlijk ook de bedoeling!! Dat er helemaal geen verbinding wordt gelegd. Je schakelt TLS1 natuurlijk alleen uit omdat je onveilige verbindingen niet meer wilt accepteren.

[Reactie gewijzigd door kimborntobewild op 20 september 2011 15:12]

Hun programma is geschreven in JavaScript, wat tegenwoordig ook als los programma kan worden gebruikt via Rino of Node.JS

Daarnaast zou Paypall/de bank dan beginnen te piepen dat JavaScript moet aanstaan voor die website.
In tegenstelling tot bij eerder openbaar gemaakte kwetsbaarheden in de ssl-standaarden, gebruiken de beveiligingsonderzoekers geen man-in-the-middle-methode, maar een decryptieproces in de browser.
Gebruikt deze methode meer data dan beschikbaar via een man in the middle? Zo ja, welke data?
[...]

Gebruikt deze methode meer data dan beschikbaar via een man in the middle? Zo ja, welke data?
Ja. De browser heeft namelijk toegang tot zowel de encrypted, als de decrypted data. Dat staat er ook. De hack gebruikt plaintext decrypted data uit het vorige blok, om het encrypted blok te decrypten. Een standaard man in the middle heeft dat niet. (niet zonder de certificaten te hebben)

Je zou kunnen stellen dat de browser of het javascript de 'man in the middle' is, maar in weze is dat niet echt zo, het is immers de client, dus het eindpunt.

[Reactie gewijzigd door arjankoole op 20 september 2011 10:20]

Als je toegang hebt tot het vorige plaintext blok heb je (zeer waarschijnlijk) toch ook gewoon toegang tot het huidige plaintext blok?
En hoe (en waarom) heeft JS toegang tot plaintext en ciphertext?

[Reactie gewijzigd door Olaf van der Spek op 20 september 2011 11:32]

Is het niet zo dat alleen sommige sleutels onveilig zijn, en niet zozeer het protocol? Of maken onveilige sleutels het hele TLS protocol juist onveilig?

Volgens mij snapt niemand dat echt goed, daarom snapt ook de schrijver van dit stukje het zelf ook niet....... Mogelijk is heel internet in gevaar dus?
Volgens mij snap jij het gewoon niet :P

Lees het volgende:
Tot nu toe werd deze kwetsbaarheid in tls 1.0 als een zuiver theoretisch probleem gezien en daarom moeilijk uitvoerbaar.
Er word dus gezegd dat het theoretisch is.
Iedere sleutel zou te kraken zijn die gebruik maken van TLS 1.0, er is ook TLS1.1 en TLS1.2 uit maar die worden nog niet echt gebruikt in het dagelijks leven.

Maar deze kwetsbaarheid zal net zoals een virus zich op iemands computer nestelen, het is dus gewoon nog steeds belangrijk dat je goede anti-virus en anti-spyware beveiliging hebt, in dat geval zal het al een stuk lastiger worden om verbindingen te kraken :)

Het hele internet is altijd in gevaar, maar op dit moment nog niet veel meer door zo'n kwetsbaarheid. Het is juist goed om kwetsbaarheden te laten vinden door whitehat hackers, dan worden ze tenminste gefixt voordat de black hatters er iets mee kunnen doen ;)
Tja,
Je heb aan de ene kant inbrekers die je huis leeg roven. En aan de andere kant mannetjes in dienst van oa de verzekerings bedrijven die zwakheden in sloten in kaart brengen, om zo de inbrekers te vertragen.
Ja lekker boos worden op onderzoekers die aan geven dat iets onveilig is. Vooral klokkeluidende hackers aanpakken en je kop in het zand steken, dan zijn er vast geen problemen.

Criminelen zijn er, zijn er altijd geweest en zullen er altijd zijn. Dit soort mensen behoren een prijs te verdienen omdat ze zich inzetten voor de veiligheid van anderen. Dat is heel wat nuttiger dan menig tweaker hiero (yt included).

Als je boos wilt zijn, wees het dan op de overheid die laks en incompetent is op ict gebied en meestal achter het net vist op blackhat hacker gebied.

En trouwens, wat jij zegt over inbrekers. Er zijn gewoon mensen die analyseren waar gaten in de beveiliging van een gebouw zit, soms door voorbeeld.
Het gaat hier om een proof of concept in een labo.
Er is geen enkele bestaande website gehacked, ze hebben enkel in labo aangetoond dat het mogelijk is.

Of steek jij gewoon liever je hoofd in de grond, geen onderzoek, geen beveiliging en maar hopen dat de onderwereld dit ook doet??
Het gaat hier niet om "jou huis", het gaat hier om een beveiliging die door heel veel websites wordt gebruikt. Iedereen gebruikt dit omdat ze denken dat het veilig is, iedereen vertrouwt erop dat het goed gaat omdat het veilig zou zijn.

Of met jou "huis" voorbeeld:
Er is een slot te koop voor je deur waarvan wordt gezegd dat niemand dit slot kan openbreken. Iedereen koopt deze sloten voor hun huizen en denkt dat ze veilig zijn. Nu komt er echter iemand die een manier heeft bedacht waarmee je toch deze sloten open kan maken.
Ze zijn alleen uit op eigen gewin.
Hoe doen ze dat dan in dit geval? Ze zouden hier gebruik van kunnen maken om van alles ermee te doen, in plaatst daarvan publiceren ze deze informatie. En websites hoeven alleen even over te stappen op een betere vorm van beveiliging en alles is opgelost.
Het is echt ongelooflijk dat er al vijf jaar nieuwe versies van het protocol bestaan, maar deze nauwelijks ge´mplementeerd zijn. Terwijl beveiliging bij elke browserontwikkelaar voorop zou moeten staan. De enige browsers die TLS 1.1 en 1.2 ondersteunen zijn Internet Explorer en Opera, maar daar staan die opties standaard uit?! Iemand enig idee wat daarvan het nut is?

Als het (nog) niet afgedwongen kan worden door gebrekkige ondersteuning in browsers, waarom wordt dit dan in ieder geval niet aangeboden door servers waar die mate van beveiliging van belang is? Over de te gebruiken versie van het protocol wordt namelijk onderhandeld in de handshake. Als de client (webbrowser) en server beide TLS 1.2 ondersteunen, dan zal deze versie gebruikt worden. Alle grote Nederlandse banken gebruiken ook TLS 1.0 voor het internetbankieren. DigiD gebruikt ook TLS 1.0.
2 seconden decryptie tijd per byte, en ze zijn al bezig met het versnellen van het proces.
Zou het dan al niet stukken sneller gaan met die parallelle dataverwerking plug-in voor firefox van Intel? ( RiverTrail )

Best interessant allemaal, dit lijkt wel het jaar van de hack waar een loopje wordt genomen met beveiligingen die schijnbaar dus niet deugen?
Opera was al een tijdje bezig met het onderzoeken van de gebruikte TLS versies door middel van hun TLS prober.

Op dit item kan niet meer gereageerd worden.



Populair:Apple iPhone 6Samsung Galaxy Note 4Apple iPad Air 2FIFA 15Motorola Nexus 6Call of Duty: Advanced WarfareApple WatchWorld of Warcraft: Warlords of Draenor, PC (Windows)Microsoft Xbox One 500GBTablets

© 1998 - 2014 Tweakers.net B.V. Tweakers is onderdeel van De Persgroep en partner van Computable, Autotrack en Carsom.nl Hosting door True

Beste nieuwssite en prijsvergelijker van het jaar 2013