Gymnasieelev piller Den Digitale Prøvevagt fra hinanden – finder 90’er-kryptering

Undervisningsministeriet har udskudt implementeringen af Den Digitale Prøvevagt med henvisning til stabilitetsproblemer. Men det er ikke bare stabiliteten, der er problemer med.

Den Digitale Prøvevagt (DDP) er blevet udskudt af Undervisningsministeriet med henvisning til problemer med kapacitet og stabilitet.

Men en kodegennemgang af programmet foretaget af Carl Schou, som er gymnasieelev på HTX Roskilde, viser, at problemerne strækker længere end som så.

Forældet kryptering

Blandt de mest iøjnefaldende valg i koden, er brugen af DES-kryptering. Krypteringsstandarden blev første gang brudt i 1997, og betragtes generelt som usikker og forældet.

Hvad værre er, kan både initialiseringsvektoren og den hemmelige nøgle uden videre læses ud af den reverse-engineerede kildekode. De er helt ens: klassikeren 12345678.

private static byte [ ] key = new byte [ ] { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 } ; private static byte [ ] iv = new byte [ ] { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 } ;

Programmet forbinder til en Amazon cloud-server gennem en TLS-krypteret forbindelse, og er derfor ikke umiddelbart sårbart over for man in the middle-angreb.

Krypteringen bruges i programmet kun til at skjule den API-key, der bruges til at forbinde til den Amazon-server, hvor elevernes data lagres. Det er et tiltag med begrænset effekt. I sin gennemgang sætter Carl Schou ordet kryptering i gåseøjne.

At API-key’en er så tvivlsomt skjult kan muligvis også være en kilde til bekymring for Undervisningsministeriet. Der har tidligere været sager, hvor API-keys i kildekode gav angribere mulighed for at tilgå servere med højnede rettigheder.

Det skete blandt andre for betalingskanalen HBO, hvor en API-key lå i klartekst i et usikkert kode-repository, og gav angribere potentiel adgang længere ind i HBO’s serverstruktur.

Det er ikke alle API-keys som giver adgang til sårbare funktioner på cloudserveren, så det er ikke sikkert om den svage kryptering faktisk udgør et sikkerhedshul.

Carl Schou har ikke forsøgt at tilgå serveren med API-keyen, da det ville være ulovligt, og den pågældende cloud-server er siden blevet taget ned.

Overvåger fire browsere – hvis de ikke er blevet omdøbt

Windows-udgaven af DDP sender løbende en liste af åbne tabs i brugerens browser – så længe browseren er Chrome, Firefox, Edge eller Internet Explorer. Og så længe brugeren ikke har omdøbt processen. DDP finder nemlig browseren ud fra processens navn.

DDP kopierer også løbende indholdet af browserens url-bar, ved at sende CTRL-L til browseren, hvilket markerer adressen, og så kopiere indholdet. En metode, som kan omgås ved simpelthen at skrive en anden adresse i feltet, når man har besøgt en side.

Katten efter musen

Bliv medlem af Version2's udviklernetværk Version2s nye netværk for udviklere er for IT-professionelle, som vil styrke egne kompetencer, sparre med nogle af branchens dygtigste folk og deltage i netværksmøder med relevante speakers. Netværket mødes fysisk 5 gange årligt, til en spændende dag med indlæg fra én keynote, samt 1-2 sponsorer, hvor alle indlæg tager afsæt i specifikke og aktuelle emner/cases. Derudover vil deltagerne i netværket kunne mødes online, på vores Meetup gruppe, hvor der er skabt rum til vidensdeling, debatter samt deling præsentationer fra de fysiske netværkmøder. Næste møde d. **24. April: AI and IoT meet-up ** Læs mere her.

Carl Schou tror ikke på, at Undervisningsministeriet kan udvikle en udgave af DDP som ikke kan omgås eller undergraves på den ene eller anden måde.

»Det er et katten-efter-musen spil, som man også ser ved antisnyd-programmer til computerspil. Det er en branche, der har kørt i mere end 15 år, og det er stadig ikke lykkedes. Så længe en elev har fysisk adgang til noget elektronik, kan man ikke stoppe dem fra at pille ved det.«

Man har heller ikke haft succes med, at forhindre piratkopiering med DRM-systemer. Er det en lignende problemstilling?

»Ja, det er et lignende scenarie. I DRM-situationen bruger de ofte meget tung kryptering og obfuskering, hvorimod dette program aktivt skal overvåge en computer. Der er rigtigt mange led i overvågningens kæde som kan hookes eller ødelægges, så det er endnu sværere end at lave et fungerende DRM-system, og DRM virker ikke engang.«

De har gabt over mere, end de kan tygge

Carl Schou har lavet sin kodegennemgang i protest mod Undervisningsministeriets overvågning af eleverne.

Ud over at gennemgå de mange tekniske problemer med Den Digitale Prøvevagt, har han også offentliggjort software, som ved hooke programmets funktioner helt omgår overvågningen, inklusive de periodiske screenshots, DDP tager.

»Jeg har gjort det, fordi jeg føler, at det var et overreach af magt på baggrund af, at man formoder at meget få mennesker snyder,« siger han.

Og hvis der skulle komme en ny udgave af DDP, vil Carl Schou stå klar med en ny udgave af sit program.

»Så længe de fortsætter med at opdatere programmet, så opdaterer jeg mit bypass. Det kommer de ikke uden om,« siger han.