Interview met SURfnet

Update 12 – De Klant- zomer 2011

Dit keer in deze rubriek geen anoniem interview zoals  u gewend bent, maar een diepte interview over het actuele open source-project voor veilige en toch ook makkelijke authenticatie. We gingen hiervoor in gesprek met Harold Teunissen (l), afdelingshoofd middleware services/security officer, en Joost van Dijk (r), technisch productmanager en mede verantwoordelijk voor de ontwikkeling van tiqr.

Wat doet SURFnet?
Harold: SURFnet zorgt dat onderzoekers, docenten en studenten eenvoudig en krachtig samen kunnen werken met behulp van ICT. Eigenlijk is SURFnet een ‘facilitator’ voor samenwerking. Zie ook www.surfnet.nl.

Mobility wordt steeds belangrijker. Hoe speelt SURFnet in op de mogelijkheden hiervan?
Harold: Op dit moment zijn we bijvoorbeeld aan het kijken naar de integratie tussen WLAN en UMTS/LTE,  waarmee studenten en medewerkers van hoger onderwijs- en onderzoeksinstellingen overal in Nederland netwerktoegang hebben met elk (mobiel) device, zonder daarvoor iets extra’s te hoeven doen. Verder hebben we al jaar en dag het concept ‘eduroam’, wat geauthenticeerde toegang biedt tot een wereldwijd wireless-LAN. Op dit moment zijn we aan het kijken of we eduroam naast scholen en universiteiten, ook kunnen aanbieden op commerciële hotspots.

SURFnet heeft tiqr ontwikkeld. Hoe is deze ontwikkeling tot stand gekomen?
Joost: Voor een aantal gevoelige applicaties gebruiken wij one time passwords per sms. Vorig jaar zijn er doorbraken geweest in het stukmaken van GSM-encryptie waarbij is aangetoond dat het mogelijk is om de SMSjes uit de lucht te plukken en zo de ‘one time passwords’ te stelen. Hier wilden we iets anders voor bedenken. Bij veel andere methodes, zoals een SecurID hardware-token van RSA of een via sms toegestuurde code, moet je nog een complexe code invoeren op je computer. Een ander alternatief is het gebruik van PKI USB-tokens, die je moet aansluiten op de computer. Daarvoor zijn echter speciale drivers nodig en dus installatierechten. We zochten daarom iets dat veiliger is dan SMS authenticatie, maar dat wel op je telefoon draait, want die heb je altijd bij je. Twee jaar geleden zijn we begonnen met een project “Mobile PKI”. Dat gaat over authenticatie op basis van je SIM-kaart. De applicatie op de SIM-kaart leest de challenge en genereert op basis van de secret op de SIM een response die vervolgens wordt teruggestuurd naar de server. Omdat het allemaal op de SIMplaats vindt is het dus heel veilig. Het pad is beschermd, de SMSjes worden gecrypt, dus daar is goed over nagedacht. Een probleem is dat de SIM-kaart eigendom is van de operator. Zonder operator kunnen wij daar niks mee en helaas is Nederland niet erg voortvarend in het aanbieden van SIMs waar de applicatie al op staat. Omdat we daar niet op willen wachten, hebben we een alternatief bedacht: een programmaatje dat op je telefoon draait en min of meer hetzelfde doet.

We hebben toen gekeken naar twee belangrijke features die je daarvoor kunt gebruiken. In plaats van een challenge van een scherm over te tikken, gebruiken we de camera van de telefoon zodat de camera de challenge leest. Deze technologie is gewoon voorhanden in de vorm van QR-codes. En in plaats van iets wat je op het scherm ziet van je mobiele telefoon en dat vervolgens moet overtikken in een browser, kan je telefoon het ook rechtstreeks naar de webserver sturen. Deze technologieën hebben we samen gebruikt om een challenge – response mechanisme in software op je telefoon te bouwen. Dat hebben we tiqr gedoopt.

Hoe werkt tiqr?
Joost: Het is makkelijk en veilig. Je hebt twee zaken nodig, je smartphone met de tiqr-applicatie en een PIN-code. Dus iets dat je hebt en iets dat je weet. Op deze manier kom je aan 2-factor authenticatie. Bij registratie berekent de tiqr-app een secretkey. Om in te loggen lees je met je camera een QR-code in. In de QR-code zit een challenge gecodeerd. Na het invoeren van de PIN-code wordt een response berekend en naar de website gestuurd, die het antwoord verifieert en het aanmelden toelaat. De PIN-code wordt gebruikt om het secret te crypten. Dus als je je telefoon kwijtraakt en deze in handen komt van een slimme hacker, dan kan hij elke bit dat er op staat uiteindelijk te pakken krijgen, maar gezien het feit dat deze allemaal gecrypt zijn heeft hij hier in principe niks aan.
Joost: Er is nog een ander scenario dat we ondersteunen. Noem het ‘step up’ authenticatie. Stel dat iemand geauthenticeerd is via SURFfederatie, dus die is ingelogd bij zijn eigen instelling. Dan kan het zijn dat de site wat extra zekerheid wil, om bijvoorbeeld een transactie uit te voeren. Dit zou ook met tiqr kunnen. Het aardige daarvan is dat, omdat de gebruiker al is ingelogd, we gebruik kunnen maken van nog een feature van telefoons: ‘push notifications’. Dat doen we door de challenge rechtstreeks naar de telefoon te sturen. Op de telefoon zie je dan een pop-up die bijvoorbeeld vraagt “deze bank wil graag een transactie authenticeren”. Daar kun je dan mee akkoord gaan, eventueel gekoppeld met een PIN-code. Daarna wordt de response teruggestuurd. Je hoeft dan dus niet eens meer een QR-code te scannen. We hebben dit alles open source gemaakt en het is te downloaden via www.tiqr.org.

De beveiligingsaudit van tiqr is uitbesteed aan Madison Gurkha. Wat zijn de ervaringen tot nu toe?
Joost: Dit is de eerste keer dat ik jullie zelf inhuur. Wat me opvalt is dat degenen die de scan hebben uitgevoerd snel to the point kwamen en zich snel hebben ingewerkt in de code. Al heel snel kwamen er gedetailleerde vragen.  Ik was daar wel bang voor, het gaat in dit geval toch over een wat obscuurdere programmeertaal Objective-C, maar dat heeft deze personen in ieder geval niet tegengehouden om zich de materie snel eigen te maken. Toen ik hoorde wat er tijdens het onderzoek gedaan werd, vond ik het interessant dat ze de boel op die manier op pijnbank legden.







 

@Secura 2018
Webdesign Studio HB / webdevelopment Medusa