Xs4all-gebruiker krijgt certificaat Xs4all.nl in handen, mag dat?

| AE 7591 | Beveiliging | 33 reacties

xs4all-vals-certificaatEen abonnee van Xs4all is erin geslaagd om een ssl-certificaat voor Xs4all.nl aan te maken, las ik bij Tweakers. Met behulp van het e-mailadres administrator@xs4all.nl, dat hij als alias voor zijn privéadres aanmaakte, wist de gebruiker bij certificaatautoriteit Comodo een ssl-certificaat voor Xs4all.nl te genereren. Comodo dacht kennelijk dat ze met een administrator van XS4All te maken had. Maar is dat nu legaal, met nepgegevens een certificaat aanmaken?

De wet kent geen specifieke regels over het aanvragen van een SSL-certificaat op andermans naam. De enige regel die volgens mij in de buurt komt, is die van valsheid in geschrifte (art. 225 Strafrecht). Oftewel:

Hij die een geschrift dat bestemd is om tot bewijs van enig feit te dienen, valselijk opmaakt of vervalst, met het oogmerk om het als echt en onvervalst te gebruiken of door anderen te doen gebruiken

Een certificaat kun je zien als een elektronisch geschrift (vergelijk art. 6:227a BW en 156a Rechtsvordering), dus aan dat element is wel voldaan. Het certificaat is bestemd om te bewijzen dat je een verbinding hebt met de website van in dit geval XS4All, en dat kun je “enig feit” noemen.

Het certificaat is weliswaar echt, en dus niet nagemaakt/vervalst, maar het opmaken is gebeurd door misleiding en dat is een vorm van “valselijk opmaken”. Dus ook aan dat element is voldaan.

Alleen bij het oogmerk struikel ik. Althans in dit geval: de gebruiker heeft het certificaat meteen ingetrokken en heeft het nergens werkelijk gebruikt. Dan kun je dus niet spreken van een oogmerk om het als echt en onvervalst te gebruiken of te laten gebruiken.

Zou het geen valsheid in geschrifte zijn, dan kun je een vervalst certificaat alleen aanpakken als het wordt gebruikt om daadwerkelijk illegale zaken te doen. Het is dan een middel voor bijvoorbeeld het aftappen van vertrouwelijke communicatie (een man-in-the-middle aanval) of computervredebreuk (valse authenticatie). Ook phishing door een valse webwinkel op te zetten met dat certificaat zou natuurlijk strafbaar zijn (oplichting). Maar daarvan is hier geen sprake.

Daarbij komt dat de opzet van deze actie zodanig is dat het voor mij een evidente journalistieke truc is: een misstand aan de kaak stellen door te laten zien dat het echt mis is.

Dus nee, bij deze specifieke stunt weet ik geen reden waarom het niet zou mogen. Maar het betekent natuurlijk niet dat iedereen nu ‘dus’ ook nepcertificaten mag maken, zeker niet als je daar daadwerkelijk diensten mee gaat leveren. Je moet wel een punt hebben om te maken.

Arnoud

Deel dit artikel

  1. Alleen bij het oogmerk struikel ik. Althans in dit geval: de gebruiker heeft het certificaat meteen ingetrokken en heeft het nergens werkelijk gebruikt. Dan kun je dus niet spreken van een oogmerk om het als echt en onvervalst te gebruiken of te laten gebruiken.

    Ik begrijp dat alle omstandigheden meetellen bij de beoordeling of iemand een strafbaar feit heeft gepleegd, maar stel dat de politie hem had opgepakt direct nadat hij het certificaat in handen had, was de oogmerktoets heel anders uitgevallen. Kun je dit voorkomen door al voor de uitvoering met een journalist contact te zoeken, of door iets bij een notaris vast te leggen?

    • Contact zoeken met een journalist vooraf lijkt me een goed idee, dat levert aardig bewijs op dat jij van plan was te gaan publiceren over de ontdekte fout. Natuurlijk kon je stiekem van plan zijn er óók misbruik van te maken, maar dat zal de politie dan moeten bewijzen.

      Een notaris zie ik niet zo. Die schrijft keurig op wat jij zegt, maar daaruit volgt niet dat het waar is wat jij zegt. Ik zie wel vaker dat mensen waarde hechten aan notarisverklaringen in de zin van “dan móet het wel waar zijn wat ze hebben gezegd”, maar dat is onzin. Je mag liegen tegen een notaris. Ja, er is valsheid in geschrifte maar dat gaat over het namaken of vervalsen van een document, niet over liegen op papier.

    • Justitie moet uiteindelijk jouw intentie dat je misbruik van het certificaat wilt maken aannemelijk maken bij de rechter. Dat is een stuk lastiger bij een journalist die regelmatig over beveiligingsproblemen schrijft, dan bij iemand die zich bezig houdt met phishing… Wanner je een overeenkomst hebt met een redactie van een publicatie (bijvoorbeeld als free-lance auteur) wordt het een stuk aannemelijker dat jouw doelen journalistiek waren.

  2. Interresant is ook de status van het certificaat: “we hebben gecontroleerd dat dit certificaat uitgegeven is aan iemand die beheer heeft over domein xs4all.nl”. Vooral meer niet. En ‘beheer over’ is dus blijkbaar gedefinieerd als ‘heeft toegang tot een van de standaard mailboxen uit ons rijtje’. Ik denk eerder dat dit een voorbeeld is van in hoeverre de uitgifte van basis SSL certificaten niet veel controle meer heeft.

    • Comodo volgde precies de procedures. Voldoende controle kan zijn dat je een email kunt versturen naar “admin”, “administrator”, “webmaster”, “hostmaster”, of “postmaster” in het bewuste domein en daarop een passend atwoord krijgt, waarbij zelfs subdomeinen niet gecontroleerd worden. Je kunt dus een certificaat krijgen voor het subdomein webmail.xs4all.nl als je over het e-mailadres administrator@xs4all.nl vervoegt. Zie punt 11.1.1 in de Baseline Requirements voor Certificate Authorities. Hoewel de uitgevers van SSL certificaten graag de schijn op willen houden, is de controle voor uitgifte van basis SSL-certificaten een wassen neus. Ook in de controle bij uitgifte van EV (extended validation) certificaten zitten flinke zwakke plekken. Voor de controle daarvan zijn bijvoorbeeld kopieën van identiteitsbewijzen en uittreksels KvK nodig, maar ik betwijfel ten zeerste of uitgevers in staat zijn om bijvoorbeeld de echtheid van een Fins KvK uittreksel of kopie van een Servisch paspoort te beoordelen voor een bedrag van een paar tientjes.

        • Je mag er bij het formeren van e-mailadressen voor de controle van de aanvraag alleen elementen van de domeinnaam afhalen. Dus “administrator@domein.nl” kan een certificaat aanvragen voor subdomein.domein.nl of voor subsubdomein.subdomein.domein.nl. Omgekeerd kan niet: “admin@subdomein.domein.nl” kan geen certificaat aanvragen voor domein.nl.

      • maar ik betwijfel ten zeerste of uitgevers in staat zijn om bijvoorbeeld de echtheid van een Fins KvK uittreksel of kopie van een Servisch paspoort te beoordelen voor een bedrag van een paar tientjes.

        Ik houd bij belangrijke websites ook de details van de certificaten in de gaten; ik zou mijn internetbankieren niet meer vertrouwen als mijn Nederlandse bank plotseling in Finland is gevestigd.

        Dan blijft natuurlijk de vraag: zijn die certificaatboeren in staat om Nederlandse KvK-gegevens en ID-bewijzen op echtheid te controleren? In theorie zou dat bij hun expertise moeten horen, maar hoe sterk zijn ze gemotiveerd om dit soort dingen goed te doen?

        Ik denk dat we een nieuwe, betere categorie van certificaten nodig hebben. Het zou al een hele verbetering zijn als certificaten verifieerbaar globaal uniek zijn: dat het bestaan van een (non-revoked) certificaat voor een website voorkomt dat er andere geldige certificaten voor de zelfde website gemaakt kunnen worden. Dan zou een vervalst certificaat alleen gemaakt kunnen worden voorafgaande aan het maken van het echte certificaat, en zelfs dan zou het meteen opvallen.

        Ik denk dat een Namecoin-achtige P2P distributie van certificaten zoiets mogelijk moet kunnen maken.

        • Er zijn geldige redenen om meerdere certificaten voor 1 common name/san te hebben, bijvoorbeeld een backup certificaat als om wat voor reden de echte compromised raakt. Verder kun je een verschillend validatiepad (zelfde public key ondertekend door meerdere ca’s) hebben omdat bijvoorbeeld je ene CA niet in alle browsers geaccepteerd wordt.

          Het Certificate Transparency (http://www.certificate-transparency.org/) project van Google probeert een publiek en verifeerbaar register van alle certificaten te bewerkstelligen, waardoor dubbele certificaten en “rouge” ca’s sneller en beter opvallen. Doordat ze veel leverage hebben met Chrome zou dat nog wel eens doorgezet kunnen worden.

          Ook helpt een TLSA DNS record, hierin geef je aan welk cert bij je domein hoort. Als je een DNSSEC ondertekende DNS response krijgt met een andere hash dan van het certificaat wat je zien, weet je dat deze vals is. xs4all heeft toevallig zo’n DNS TLSA (DANE) record, echter wordt dit nog niet ondersteund in browsers. Als dat wel zo was, was dit valse-echte certificaat nutteloos.

          • Er zijn geldige redenen om meerdere certificaten voor 1 common name/san te hebben, bijvoorbeeld een backup certificaat als om wat voor reden de echte compromised raakt.

            Als we toch SSL aan het her-ontwerpen zijn, dan kan deze use case beter opgevangen worden met een tweetraps-systeem, waarbij een CA een sleutel ondertekent (“deze sleutel is van persoon/organisatie A, en mag gebruikt worden voor certificaten van domein B”), en die sleutel vervolgens gebruikt kan worden voor ondertekening van certificaten voor domein B. Die sleutel kan dan veilig offline+encrypted in een kluis worden opgeslagen, en hoeft alleen gebruikt te worden voor het revoken+vervangen van de uiteindelijke encryptie-sleutel die online wordt gebruikt. Dat kan dan snel gebeuren, zonder langdurig verificatieproces door de CA.

            Verder kun je een verschillend validatiepad (zelfde public key ondertekend door meerdere ca’s) hebben omdat bijvoorbeeld je ene CA niet in alle browsers geaccepteerd wordt.

            Het zou beter zijn als 1 certificaat ondertekend kan worden door een heleboel CAs. Dan heb je maar 1 certificaat nodig, en de aanwezigheid van meerdere validatiepaden op 1 certificaat geeft ook nog eens extra vertrouwen in dat certificaat.

            Het Certificate Transparency (http://www.certificate-transparency.org/) project van Google probeert een publiek en verifeerbaar register van alle certificaten te bewerkstelligen, waardoor dubbele certificaten en “rouge” ca’s sneller en beter opvallen. Doordat ze veel leverage hebben met Chrome zou dat nog wel eens doorgezet kunnen worden.

            Dat is een mooi begin. Ik vraag me af hoe dit samen gaat met Google’s eigen SSL-beleid: als ik Certificate Patrol moet geloven, krijg ik bij zo’n beetje elke nieuwe Google-gerelateerde page load nieuwe certificaten.

            Ook helpt een TLSA DNS record, hierin geef je aan welk cert bij je domein hoort. Als je een DNSSEC ondertekende DNS response krijgt met een andere hash dan van het certificaat wat je zien, weet je dat deze vals is. xs4all heeft toevallig zo’n DNS TLSA (DANE) record, echter wordt dit nog niet ondersteund in browsers. Als dat wel zo was, was dit valse-echte certificaat nutteloos.

            Ik zie DNSSEC gewoon als nog weer een andere CA. DNSSEC kan ook compromised raken (Diginotar-style) of misleid worden (XS4ALL-style). DNS is weliswaar een systeem dat pretendeert globaal uniek te zijn, maar het is qua organisatie gecentraliseerd, en dat wil je eigenlijk ook niet. Voor een globaal uniek systeem zonder centrale organisatie moet je iets Bitcoin-achtigs hebben: vandaar dat ik Namecoin noemde.

  3. zijn die certificaatboeren in staat om Nederlandse KvK-gegevens en ID-bewijzen op echtheid te controleren? In theorie zou dat bij hun expertise moeten horen, maar hoe sterk zijn ze gemotiveerd om dit soort dingen goed te doen?

    Ik weet persoonlijk dat Symantec een hele rits aan nationaliteiten in dienst heeft om precies die reden (want daar was ik er zelf een van), maar die concurreerden dan ook niet prijs. Als je dat wel doet kan je je dat denk ik niet veroorloven. Ik ben er al een tijdje weg bij Symantec en heb er ook geen belang bij om ze wel of niet aan te prijzen maar laat ik zeggen dat er een behoorlijk prijsverschil is tussen de verschillende certificaten die verkrijgbaar zijn.

      • Men is binnengedrongen bij de Comodo geautomatiseerde administratie. Men heeft middels dit binnendringen onder een aangenomen valse hoedanigheid een aantal bestanden (certificaten) verkregen die niet voor deze persoon bestemd waren. Ik twijfel of binnengedrongen is bij XS4all, of een certificaat-instelling en verbinding valt onder een geautomatiseerd werk. Als de melder MitM-aanval had gedaan dan was dit voor mij helderder. De melder heeft de certificaten niet echt aan criminelen gegeven (verspreiden van malware/virus tools), maar helaas wel gepubliceerd. Dit betekend dat anderen, minder goedwillend, deze certificaten kunnen gebruiken voor MitM-aanvallen. Revocatie van certificaten is nooit 100% en dus zullen deze certificaten blijven werken voor verouderde computers.

        Als ik niet werk voor KPN, maar ik weet toch it-support@kpn.nl te registreren, en vervolgens ga ik mailen naar een server admin van Telfort, en vraag ik, vanuit die valse hoedanigheid, om mijn privileges te verhogen (verander “admin” veld in database van 0 naar 1), dan ben ik, op een creatieve manier (social engineering) binnengedrongen in een geautomatiseerd werk. In dit geval vroeg de melder om de digitale rechtsgeldige handtekening van de baas van KPN en kreeg deze op een dienblaadje aangereikt.

        Ga ik daarna die admin-rechten gebruiken om meer informatie af te tappen, dan krijg je nog meer straf. Net zoals de certificaten gebruiken voor een MitM-aanval een hogere straf oplevert.

        Het is absoluut goed dat de melder direct contact heeft gezocht met XS4all en het Nationaal Cyber Security Centrum. Had deze melder niets gedaan verder met dit certificaat, maar ook niets gemeld, dan liep deze zeker wel het risico tot vervolging.

        • Dat is geen “binnendringen” in de zin van de strafwet. Er is een arrest waarbij iemand vervalste acceptgiro’s aan de bank gaf. Dat was ook geen binnendringen want de gegevens kwamen op legitieme wijze via het aangewezen kanaal het computersysteem van de bank binnen. Het moet echt gaan om de wijze van binnenkomen zelf, niet over de gegevens of aanvragen die binnenkomen. Pas als hij de Comodo-database via een achterdeur had benaderd om zo een certificaataanvraag toe te voegen en/of het aanvrageradres van XS4All had aangepast, dan zou ik het inbreken vinden.

          • Bedankt. Dus stel dat ik mij voordoe als uw hostende partij. Ik stuur u een e-mail waarin ik uw wachtwoord vraag. U stuurt mij dit wachtwoord. Er is dan niet binnengedrongen? Pas als ik inlog met uw wachtwoord ben ik binnengedrongen? Maakt het dan nog wel uit hoe ik dat wachtwoord verkregen heb?

            Ik dacht social engineering in bepaalde gevallen wel strafbaar was en onder computervredebreuk viel:

            Het aannemen van een valse hoedanigheid: jezelf anders voordoen dan je bent, bijvoorbeeld door je computer de naam te geven van de printserver en zo toegang tot de map met printjobs krijgen. IP spoofen kan dus ook onder dit kopje geschaard worden. ‘Social engineering’ is ook op deze manier soms strafbaar: de helpdesk bellen, zeggen dat je de nieuwe manager bent en vragen of men de beveiliging even uitzet omdat je nú heel belangrijk werk moet doen.
            https://securityrecht.nl/diensten/juridisch-advies/computervredebreuk/

            Je kan dat af laten hangen of de melder het email-adres gespoofed had, of via gangbare wijze heeft gekregen. Op het moment dat je middels zo’n leuk gekozen e-mail een certificaat aan gaat vragen voor een site die je niet in bezit hebt, dan weet je toch dondersgoed dat je verkeerd bezig bent? De intentie hier leek mij duidelijk: Je voordoen als XS4all om digitale bestandjes in bezit te krijgen.

            • Het enkel aftroggelen van een wachtwoord is nog geen inbraak, je bent dan nog niet binnen immers. Maar zodra je wél inlogt dan heb je een valse hoedanigheid aangenomen, je deed je voor als mij door met mijn gebruikersnaam/wachtwoord in te loggen.

              Wat ik bedoelde te zeggen met die tekst is dat social engineering een voorbeeld is van hoe je die valse hoedanigheid kunt verkrijgen. Het betekent niet dat enkel een wachtwoord te pakken krijgen je al strafbaar maakt.

              En ja, het klopt dat de intentie was een certificaat te krijgen waar je geen recht op had. Maar je moet dan een wetsartikel zoeken dat daarover gaat. Ik kom dan uit bij valsheid in geschrifte (het valselijk opmaken van een geschrift dat er echt moet uitzien), maar met computervredebreuk kom je er niet want je dringt niet binnen. Als ik een acceptgiro op jouw naam opmaak en bij de bank in de bus doe, heb ik jou opgelicht maar ik heb niet ingebroken bij de bank.

              • U maakt de wet voor mij enorm interessant. Het lijkt allemaal net een groot computerprogramma met onopgeloste bugs. Ik vind de scheiding tussen computersysteem en mensen (IT-support) interessant, alsmede het feit dat juridisch gezien data niet altijd te stelen is.

                Ik probeer het nog een keer, ditmaal zonder binnendringen, maar met een beroep op het beschadigen van/toevoegen aan een communicatiesysteem.

                Het opzettelijk vernielen, beschadigen of onbruikbaar maken van een computer- of communicatiesysteem is strafbaar met een jaar cel of boete van 16.750 euro (art. 161sexies lid 1).Onder vernielen van gegevens vallen: het veranderen, wissen of onbruikbaar of ontoegankelijk maken van gegevens. Maar ook het toevoegen van andere gegevens is een vorm van vernieling.De maximumstraf voor vernieling van een openbaar telecommunicatienetwerk is één jaar cel of een boete van 67.000 euro (art. 161sexies lid 1). Deze straffen lopen snel op wanneer hierdoor goederen of diensten in gevaar worden gebracht (zes jaar cel, lid 2).

                Door een vals certificaat te genereren beschadig je de vertrouwensketting voor dat communicatiesysteem. Een vals certificaat bakken is het toevoegen van andere gegevens (certificaten) aan een systeem wat niet jouw eigendom is. Door dit valse certificaat lopen de diensten en klanten van XS4all gevaar.

                Daarna: Het plaatsen/aanbieden van afluisterapparatuur.

                Het plaatsen van afluister-, aftap- of opnameapparatuur met het doel om gesprekken, telecommunicatie, gegevensoverdracht of gegevensverwerking af te luisteren of op te nemen is een misdrijf (art. 139d lid 1). Hierop staat een jaar cel of een boete van 16.750 euro. Ook wanneer er nog niets afgeluisterd of getapt is.Wie een afluisterapparaat vervaardigt, … verwerft, … invoert, … of voorhanden heeft, loopt eveneens het risico op een celstraf van één jaar of een boete van 16.750 euro(hij die opzettelijk en wederrechtelijk met een technisch hulpmiddel gegevens aftapt of opneemt die niet voor hem bestemd zijn en die worden verwerkt of overgedragen door middel van telecommunicatie of door middel van een geautomatiseerd werk.)

                Aangezien het “plaatsen” nogal vaag is in deze zaak, gooi ik het op verwerven: Het verwerven van een vals certificaat met het doel om telecommunicatie af te luisteren. Maar of een vals certificaat onder afluisterapparatuur valt? Het lijkt mij de hoofdzakelijke functie van zo’n bestand.

                Verder blijft mij dit denken aan de springplank-methode: Misbruik maken van een technisch mankement bij XS4all om een gereserveerd e-mail adres te bemachtigen. Deze valse hoedanigheid vervolgens gebruiken om de toegang tot de certificaat-afgifte van Comodo (een derde partij) te verkrijgen. Maar inderdaad, die afgifte is niet vol-automatisch, maar heeft een menselijke schakel, dus van juridisch binnendringen bij Comodo is mogelijk geen sprake.

                Quotes: iusmentis.com/beveiliging & overheid.nl

                • Ik snap wat je doet, maar het voelt een tikje geconstrueerd/gezocht aan. Het kan, maar dan moet er wel ergens een openbare keten zijn waar dit certificaat deel van is. En dat is niet hoe het technisch werkt. Dat certificaat staat gezellig op een server en wordt uitgeserveerd in het SSL protocol. Daar gaan niemands gegevens stuk van. Als ik drie records toevoeg aan jouw database, gaan er wel dingen stuk want jij bent nu het vertrouwen in jouw database kwijt, wat is er nog meer stuk?

                  Afluisteren is te verdedigen inderdaad maar dan moet er wel een oogmerk zijn om een MITM te doen met dat certificaat. En die zie ik nog even niet.

                  • Het is inderdaad ver gezocht. Comodo zou bijvoorbeeld kunnen denken: Hey, XS4all hebben we net nog een certificaat gegeven, die hoeven we niet te waarschuwen om hun oudere certificaat te updaten. Dan geen vertrouwensschade, maar concrete schade aan het communicatiesysteem. Ik zie dit meer als dat u een vals emailadres aanmaakt, om mijn databasebeheerder 3 gemakkelijk te raden wachtwoorden te laten toevoegen aan de database login. De veiligheid van het systeem is daarmee aangetast/beschadigd. Dit terwijl bedrijven met (persoons-)gevoelige databases alle redelijke technische maatregelingen moeten nemen om lekken te voorkomen. Je kan dan niet meer aan deze plicht voldoen.

                    Maar om nog dichterbij “Valsheid in geschriften” te komen, heb ik “Oplichting” gevonden (- Art. 326 Wetboek van Strafrecht):

                    Hij die, met het oogmerk om zich of een ander wederrechtelijk te bevoordelen, hetzij door het aannemen van een valse naam of van een valse hoedanigheid, hetzij door listige kunstgrepen, hetzij door een samenweefsel van verdichtsels, iemand beweegt tot de afgifte van enig goed, tot het ter beschikking stellen van gegevens met geldswaarde in het handelsverkeer, tot het aangaan van een schuld of tot het teniet doen van een inschuld, wordt, als schuldig aan oplichting, gestraft met gevangenisstraf van ten hoogste vier jaren of geldboete van de vijfde categorie.

                    Alsmede verdergezochte “Bedrog” in Art. 326c Wetboek van Strafrecht:

                    Hij die, met het oogmerk daarvoor niet volledig te betalen, door een technische ingreep of met behulp van valse signalen, gebruik maakt van een dienst die via telecommunicatie aan het publiek wordt aangeboden, wordt gestraft met gevangenisstraf van ten hoogste vier jaren of geldboete van de vijfde categorie.
                    Indien het verkrijgen van administrator@xs4all geen valsheid in geschrifte was (bijvoorbeeld, omdat de fout bij XS4all lag) dan is er nog Art. 227a:

                    Hij die, anders dan door valsheid in geschrift, opzettelijk niet naar waarheid gegevens verstrekt aan degene door wie of door wiens tussenkomst enige verstrekking of tegemoetkoming wordt verleend, wordt, indien het feit kan strekken tot bevoordeling van zichzelf of een ander, terwijl hij weet of redelijkerwijze moet vermoeden dat de verstrekte gegevens van belang zijn voor de vaststelling van zijn of eens anders recht op die verstrekking of tegemoetkoming dan wel voor de hoogte of de duur van een dergelijke verstrekking of tegemoetkoming, gestraft met gevangenis straf van ten hoogste vier jaren of geldboete van de vijfde categorie.

Laat een reactie achter

Handige HTML: <a href=""> voor hyperlinks, <blockquote> om te citeren en <em> en <strong> voor italics en vet.

(verplicht)

Volg de reacties per RSS