De corona-opsporingsapps die dit weekeinde tijdens de appathon door experts en publiek al overwegend negatief zijn beoordeeld, zijn ook slecht door de eerste securitytesten gekomen. Aan de veiligheid en betrouwbaarheid mankeert veel.
KPMG heeft een vernietigend oordeel geveld over deze digitale oplossingen die kunnen bijdragen aan bron- en contactopsporing. Volgens ing. John Hermans, partner van KPMG, is sprake van (ernstige) kwetsbaarheden die eenvoudig hadden kunnen worden voorkomen.
Zo blijkt uit zijn vertrouwelijke brief aan Ron Roozendaal, cio van het ministerie van Volksgezondheid, Welzijn en Sport (VWS). Voor vooraanstaande it-bedrijven als Accenture en Capgemini moet de kritiek van KPMG hard aankomen. Zes van de zeven ‘finalisten’ werden getest en te licht bevonden, maar het adviesbureau openbaart geen namen.
Volgens KPMG hebben de ontwikkelaars van de applicaties over het algemeen geen ‘secure coding’- principes toegepast. Daardoor zijn algemeen bekende en dus te verwachten beveiligingsmaatregelen niet geïmplementeerd. Dit geldt ook voor de achterliggende infrastructuur. Te denken valt aan misconfiguraties en verouderde software.
KPMG waarschuwt dat de apps gebruik maken van ‘hard coded’-wachtwoorden die zichtbaar zijn in de leesbare broncode. Met deze wachtwoorden kon toegang worden verkregen tot de databases dan wel de achterliggende infrastructuur. Ook datasets buiten het domein van de te testen covid-applicatie bleken toegankelijk.
Zonder versleuteling
De achterliggende infrastructuur (inclusief de api) van de corona-apps kan veelal misbruikt worden zonder benodigde identificatie/authenticatie. Daar waar wel een beveiliging is toegepast is deze vaak eenvoudig te omzeilen. Dit kan door kwetsbare implementatie dan wel gebrekkige validatie van bijvoorbeeld beveiligingscertificaten of het gebruik van zogeheten self-signed certificates. Hierdoor kan veelvuldig toegang worden verkregen tot vertrouwelijke data. Ook is het mogelijk foutieve data op te voeren. Een kwaadwillende kan de achterliggende infrastructuur manipuleren omdat er nauwelijks tot geen controle wordt uitgevoerd op de data die worden uitgewisseld.
Bij het ontwerp van de applicaties is niet altijd uit gegaan van het principe om zo min mogelijk gevoelige gegevens op de telefoon van de eindgebruiker op te slaan. Bij data die worden opgeslagen gebeurt dat ook nog eens zonder versleuteling, aldus KPMG.
Lastig vergelijken
KPMG vindt voorts het vanuit oogpunt van acceptatie door het publiek niet zo handig dat bij de Android-versies vrij veel toegangspermissies worden gevraagd. De eindgebruiker zal het raar vinden dat toegang tot de microfoon of foto’s wordt verzocht.
KPMG concludeert verder dat geen enkele app ‘af’ is. Dat maakt een vergelijking lastig. Ook ontbreekt het grotendeels aan technische documentatie over de componenten. Het kostte de broncode-onderzoekers van KPMG veel moeite om erachter te komen hoe de componenten in elkaar staken en werkten.
Ander punt van kritiek is het ontbreken van algemene maatregelen om de codekwaliteit te bevorderen. KPMG constateert afwijkingen van coding standaarden en ‘magic literals’. Onder het laatste wordt verstaan een anti-patroon waarbij nummers en tekenreeksen direct in de code worden gebruikt. Verder zijn er maar weinig unit-testen aangetroffen. De inline documentatie in de broncode was beperkt.