DanID: Ja, vi står bag fire skjulte programfiler i NemID

Version2 har stillet DanID en række spørgsmål om de skjulte programfiler, som udløste en virusalarm, fordi filerne lignede malware. Se DanID's foreløbige svar her.

Når du logger på med NemID, gemmer Java-appletten en række filer lokalt på din pc. Indholdet af én af disse filer udløser en alarm, hvis man scanner sin pc med McAfees Stinger-værktøj.

Det har fået Version2 og Version2's læsere til at kigge nærmere på indholdet af filerne, hvilket afslørede, at den pakkede Java-fil også indeholder fire programfiler, som er forklædt som GIF-billedfiler.

Læs også: DanID camouflerer programkode på din pc som billedfiler

Den uregelmæssighed havde mindst én læser bemærket allerede i juni, men det er først nu, filerne er blevet gransket nærmere.

Formålet med filerne er imidlertid ukendt, ligesom det heller ikke er åbenlyst, hvorfor DanID tilsyneladende har valgt at skjule fire programfiler som harmløse billedfiler. Version2 har derfor bedt Nets DanID svare på en række af de spørgsmål, som blandt andet er blevet rejst af læserne i debatten til Version2's dækning af sagen.

Nets DanID oplyser, at selskabet ikke har mulighed for at svare på alle spørgsmålene på nuværende tidspunkt, men her er de svar, Version2 indtil videre har modtaget fra kommunikationschef Jette Knudsen:

Er det DanID, som har lavet de fire filer?

»Ja.«

Indsamler DanID oplysninger om brugerens pc, sådan som flere læsere mener at kunne se?

»Ja, se her: https://www.nets-danid.dk/om_nets_danid/privatlivspolitik/index_12.html«

Burde DanID ikke oplyse brugerne om, at der bliver gemt denne type filer på deres pc'er?

»Det er ikke hemmeligt: https://www.nets-danid.dk/om_nets_danid/privatlivspolitik/index_12.html - Se under cookies og tekniske oplysninger.«

Hvad vil DanID sige til brugere, som får en antivirusadvarsel på grund af den skjulte kode?

»McAfee arbejder på at få virusdetektionen til ikke at reagere på applet-filerne fremadrettet, så problemet ikke opstår mere. Supporten vil tage sig af eventuelle henvendelser i mellemtiden. De vil naturligvis sige, at der ikke er en reel virustrussel.«

I august 2010 sagde DanID, at I var villige til at lade kritikere se på kildekoden - det tilbud står vel stadig ved magt?

»Ja. Samme konditioner som tidligere, altså seriøse henvendelser.«

DanID har ikke haft mulighed for at svare på alle spørgsmål fra Version2, da visse af spørgsmålene kræver svar fra udviklere, som har været med til at designe systemerne, og de udviklere har været optaget af et projekt frem til weekenden.

Her kan du se de spørgsmål, Version2 har stillet Nets DanID, som selskabet endnu ikke har nået at besvare:

Hvilken funktion har de fire GIF-filer: 'error.gif', 'large.gif', 'logo2.gif' og 'pause.gif', som ligger i 'DanID_Applet.jar'?

Hvad gør de fire GIF-filer?

Hvorfor er programkode camoufleret som GIF-filer?

Hvorfor lægger DanID programkode på brugerens pc?

Hvad bruges koden/filerne til?

Hvorfor har DanID tilsyneladende brugt 'kodeobfuskering' for at maskere programkoden?

Læserne kalder det 'security by obscurity'. Hvad mener DanID om det?

Kommentarer (66)

Thue Kristensen

Hvad vil DanID sige til brugere, som får en antivirusadvarsel på grund af den skjulte kode?

»McAfee arbejder på at få virusdetektionen til ikke at reagere på applet-filerne fremadrettet, så problemet ikke opstår mere. Supporten vil tage sig af eventuelle henvendelser i mellemtiden. De vil naturligvis sige, at der ikke er en reel virustrussel.«

Hvad med at DanID arbejdede med at få NemID til ikke at opføre sig som en virus? Eksekverbare filer forklædt som gif-filer hører jo ingen steder hjemme. Jeg vil netop gerne have min antivirus til at markere alle den slags filer på min computer.

Peter Eriksen

Fra omtalte "Privatlivspolitik"

De oplysninger, vi indsamler om pc’en omfatter:
•Browsertype
•Computertype
•Styresystem
•Forbindelsestype (ISDN, ADSL o.l.)
•Skærmopløsning

Herudover indsamler vi:
•Oplysning om IP adresse
•PC-checksum (teknik til beregning af unik identifikation af en pc).
•Oplysninger om tjenesteudbydere, du besøger, hvis du har valgt denne mulighed til
•Oplysning om tidspunkt, hvor du har besøgt en given hjemmeside.
•Disse oplysninger eller din adfærd på nettet sammenstilles ikke med dine personoplysninger.

Hvad rager det jer? Hvem har bedt jer om, at lave statistik over folks opløsning, styresystem osv.

Henrik Pedersen

Vi har en masse højt intelligente mennesker herinde, og endda en del der har vist sig villige til at decompile og analysere koden.

Kan et par af disse personer ikke melde sig frivilligt til lige at tage et kig i kildekoden? Når den ikke er obfuskeret bør det vel ikke tage forfærdeligt lang tid?

Thue Kristensen

Burde DanID ikke oplyse brugerne om, at der bliver gemt denne type filer på deres pc'er?

»Det er ikke hemmeligt: https://www.nets-danid.dk/om_nets_danid/privatlivspolitik/index_12.html - Se under cookies og tekniske oplysninger.«

Hvis det ikke er hemmeligt, hvorfor er koden så skjult i gif-filer?

Version2 har jo tidligere spurgt DanID om hvad grunden var til at appletten skulle signeres. Jeg husker ikke at DanID nogensinde har nævnt denne dataindsamling som en grund.

David Anker

Behandling af dine personoplysninger
[...]
- Nets DanIDs videregivelse af dine personoplysninger til private dataansvarlige kræver i de fleste tilfælde dit specifikke samtykke i videregivelsesøjeblikket
- Du er, uden beregning af omkostninger, berettiget til at få oplyst, hvilke personoplysninger vi behandler om dig, én gang hvert halve år
- Du kan altid bede om, at Nets DanID sletter eller gør dine personoplysninger utilgængelige for fremadrettet anvendelse. Historiske oplysninger, som opbevares af hensyn til Nets DanIDs tekniske og sikkerhedsmæssige revisionsspor kan ikke påregnes slettet
- Nets DanID sletter automatisk dine personoplysninger senest seks år efter, du er ophørt som NemID indehaver.

Kilde: https://www.nets-danid.dk/om_nets_danid/privatlivspolitik/index_12.html

Jesper S. Møller

Stort set alle sites indsamler information om

•Browsertype
•Computertype
•Styresystem
•Forbindelsestype (ISDN, ADSL o.l.)
•Skærmopløsning

Og formålet er selvfølgelig klart nok at kunne tilpasse løsningen til publikum - det er der ikke noget sært i. Vi kan nok ikke gøre andet end at håbe på at de, som de lover i vilkårene, ikke sammenknytter disse informationer med de personhenførbare, da det vil være lidt underligt.

Tænk hvis SKAT havde adgang til disse informationer: "Flest Windows 95 brugere har restancer over for det offentlige", eller hvis DR fik en liste over hvilke personer, der havde hvilke IP adresser. Pejlevogn på stereoider!

Jeg letter på sølvpapirshatten og siger god weekend!

Jesper S. Møller

Tænk hvis SKAT havde adgang til disse informationer: "Flest Windows 95 brugere har restancer over for det offentlige".

Det har de forresten allerede, da der jo er rigtig mange, der bruger TastSelv. My bad.

Jesper Lund

Herudover indsamler vi:
•Oplysning om IP adresse
•PC-checksum (teknik til beregning af unik identifikation af en pc).
•Oplysninger om tjenesteudbydere, du besøger, hvis du har valgt denne mulighed til
•Oplysning om tidspunkt, hvor du har besøgt en given hjemmeside.
•Disse oplysninger eller din adfærd på nettet sammenstilles ikke med dine personoplysninger.

Jeg kan simpelthen ikke få det sidste bullet point "disse oplysninger sammenstilles ikke med dine personoplysninger" til at passe med de forudgående bullet points,

Det er også noget misvisende at sige at DanID indsamler oplysninger om en PC checksum. Det som DanID gør er at de afvikler kode på min computer, som uden mit vidende eller accept scanner mit system for en række oplysninger, som DanIDs kode derefter sender til DanIDs databaser. Det kan ikke sammenlignes med en IP adresse, som jeg i sagens natur er nødt til at oplyse til DanID for at kunne kommunikere med dem.

DanID er nødt til at forklare os hvorfor de har behov for at beregne en unik identifikation af hver eneste PC. Efter persondataloven må DanID ikke bare indsamle oplysninger efter forgodtbefindende. Der skal være en saglig grund til at gøre det. Oplysninger om skærmstørrelse og ISP kan, på aggregeret basis, være relevante for webside design og kapacitetsplanlægning på forbindelser.

Men hvad skal en unik identifikation af hver eneste PC bruges til? Vi er i forvejen identificeret overfor DanID med password og OTP kode.

Jon Linde

Jeg benytter Slam-ID 2 steder:
1) Jyske Netbank app på min Android
2) Virtuel XP - oprettet til netop dette ene formål - at bruge Slam-ID

Der ud over har jeg disabled trustet til TDC Root certifikaterne på alle mine øvrige maskiner.

For faktum er at man ikke kan undgå det skidt.

Jesper Lund

Vi har en masse højt intelligente mennesker herinde, og endda en del der har vist sig villige til at decompile og analysere koden.

Kan et par af disse personer ikke melde sig frivilligt til lige at tage et kig i kildekoden? Når den ikke er obfuskeret bør det vel ikke tage forfærdeligt lang tid?

Jeg kunne forestille mig at de pågældende skal underskrive en stribe NDAer, så de ikke bagefter kan deltage i version2 debatten.

Du kan heller ikke vide om appletten og koden i .oces2/ mappen på din computer er den samme som den version der blev analyseret hos DanID. I teorien kan DanID pushe forskellige versioner af deres kode til forskellige personer. Ikke alle tyskere fik Bundes-trojaneren R2D2 installeret, men hvis staten en dag skal lave noget tilsvarende i Danmark (hvilket i øvrigt er fuldt lovligt, modsat i Tyskland), vil DanID appletten være den nemmest måde at gøre det på. Her er en angrebsvektor der rækker langt ind på vores computere.

IT-Politisk Forening lavede i august 2010 en demo Java applet som scannede computeren for en hel masse filer. Det var DanID meget afvisende overfor og DanID svarede at "NemID appletten læser på intet tidspunkt personlige filer fra brugeren"
https://danid.dk/export/sites/dk.danid.oc/da/om_danid/nyheder/download/P...

Som med alle andre "svar" fra DanID, er dette svar skrevet i så generelle vendinger at det i virkeligheden kan betyde hvad som helst. DanID vil tydeligvis have os til at tro at de ikke læser vores filer (som IT-Politisk Forening skrev at DanID havde mulighed for), og DanID har tidligere sagt at de "skal" have læse/skrive adgang som signeret applet for at skrive ~/danid.log filen og for at cache appletten (det kan åbenbart ikke gøre med Java VMs caching funktionalitet..). De sagde ikke noget om at de ville scanne vores computeren uden tilladelse.

Det går et stykke tid, og når DanID så bliver afsløret i at læse vores filer selv om de har givet indtryk af det modsatte, kan de henvise til at "..jo de læser vores filer, men ikke vores personlige filer." Det er simpelthen spin til topkarakter. Jeg er faktisk imponeret..

Men helt ærligt: kunne vi ikke forvente lidt mere ærlighed af det firma som har fået et milliard fra skatteyderne for at forvalte landets digitale "signatur"?

Jeg vil i øvrigt anse oplysninger som tillader en unik identifikation af min computer for at være sammenlignelig med en "personlig fil". Det minder lidt om det unikke CPU ID Number som Intel for 10 år siden ville indbygge i vores processorer, og som helt berettiget affødte en storm af protester dengang.

Jens C. Hansen

Mht. at melde sig ud;
Jeg har aldrig meldt mig ind hos dem - jeg droppede min netbank i juli 2010, så jeg modtog aldrig noget om, at jeg skulle overgå til NemID, og jeg har aldrig ansøgt om at få det.

Hvis nogen har opskriften til, hvordan man forespørger om, hvorvidt de har mine personlige oplysninger, og i så fald hvilke, skal jeg gerne sende en.

En adresse og et lille udkast til forespørgsel skulle kunne gøre det. Jeg tænker specielt på, at ordlyden gerne skulle være sådan, at de ikke kan sno sig udenom.
(og det kunne jo være andre også ville spørge).

Hans Schou

Fra omtalte "Privatlivspolitik"

De oplysninger, vi indsamler om pc’en omfatter:
* Browsertype
* Computertype
* Styresystem
* Forbindelsestype (ISDN, ADSL o.l.)
* Skærmopløsning


De fleste ville regne med at dette er de oplysninger som man selv giver når logger ind på deres hjemmeside. Jeg logger selv det samme med mit overvågningsværktøj (Apache), dog ikke skærmopløsning selv om awstats har et frækt lille script der kan gøre det.

Indsamler DanID oplysninger om brugerens pc, sådan som flere læsere mener at kunne se?

»Ja, se her: https://www.nets-danid.dk/om_nets_danid/privatlivspolitik/index_12.html«

Jeg mener v2 må stille det spørgsmål igen. Spørgsmålet er om NemID scanner den lokale maskine for data, og svaret er bare et link og så må man selv udrede om der menes sektionen med "Cookies og tekniske oplysninger" eller hvad.

Så det direkte spørgsmål er: Aflæser NemID /proc/scsi/scsi på Linux pc'er, såsdan som man kan se i error.gif?

Spørgsmål 2: Hvorfor?

Til de nysgerrige, så er her min /proc/scsi/scsi :

$ cat /proc/scsi/scsi   
Attached devices:  
Host: scsi4 Channel: 00 Id: 00 Lun: 00  
  Vendor: ATA      Model: Maxtor 7L300R0   Rev: BAH4  
  Type:   Direct-Access                    ANSI  SCSI revision: 05

"Ahaaa, en 'Maxtor'. Det var interessant!!!" Eller hvad? Jeg har egentlig ikke rigtigt noget imod at NemID og resten af verden ved hvilken hd jeg har, men hvorfor pokker skjule det i en fil der hedder error.gif? Hvorfor ikke bare kalde den indsamloplysomlinuxsystem.so . Så ville der være færre der spurgte om hvad programmet gjorde og ingen prøver at skjule noget.

Og mit ip-nummer? Ja det er 192.168.1.8, og det er vel ikke særligt interessant?

Kun "seriøse henvendelser"? Ja tak, ikke noget med programmer skjult i error.gif og andre useriøse programmeringstiltag.

Jesper Lund

Er der nogen der har prøvet 'at melde sig ud' af DanID?
Det skulle efter sigende ikke være muligt.Hvis det er rigtigt
giver den sidste bullet jo ikke megen mening.

Hvis du kan undvære netbank og OCES kan du tilbagekalde dit samtykke til DanID, og "melde dig ud" på den måde. Men det er ikke det samme som at DanID skal slette de oplysninger som de allerede har registreret om dig, hvis der er et sagligt formål til at denne registrering opretholdes (og det vil DanID nok mene at der er).

NemID er i praksis en tvangskonstruktion, og derfor er det urimeligt at al kritik skal imødegås med "take or leave it", du har selv givet samtykke blah blah..

Det er simpelthen uacceptabelt at vi ikke kan få at vide hvad der foregår på vores computere når bruger NemID.

Sune Marcher

  • Du er, uden beregning af omkostninger, berettiget til at få oplyst, hvilke personoplysninger vi behandler om dig, én gang hvert halve år
  • Du kan altid bede om, at Nets DanID sletter eller gør dine personoplysninger utilgængelige for fremadrettet anvendelse. Historiske oplysninger, som opbevares af hensyn til Nets DanIDs tekniske og sikkerhedsmæssige revisionsspor kan ikke påregnes slettet

...burde vi ikke allesammen kræve de oplysninger udleveret, hvert halve år?

Og lave script til afsendelse af "slet mine data, kthxbye" emails efter hver evig eneste gang vi har benyttet deres såkaldte "service"? Og instruere vores mindre teknisk begavede venner og familiemedlemmer i, af sikkerhedshensyn, også at anvende scriptet? :)

Peter Lind Damkjær

Jeg skriver i denne sammenhæng på vegne Nets DanID A/S:

Som Jesper Lund konstaterer i indlæg dateret 18. november kl. 16.49, så hænger teksten ikke sammen i afsnittet ”Cookies og tekniske oplysninger” fra ”Privatlivspolitik for Nets DanID Version 1.2”.

Det er en fejl. Den rigtige tekst er:

<snip>
De oplysninger, vi indsamler om pc’en omfatter:
- Browsertype
- Computertype
- Styresystem
- Forbindelsestype (ISDN, ADSL o.l.)
- Skærmopløsning

Disse oplysninger eller din adfærd på nettet sammenstilles ikke med dine personoplysninger.

Herudover indsamler vi:
- Oplysning om IP adresse
- PC-checksum (teknik til beregning af unik identifikation af en pc).
- Oplysninger om tjenesteudbydere, du besøger, hvis du har valgt denne mulighed til
- Oplysning om tidspunkt, hvor du har besøgt en given hjemmeside.

Disse oplysninger kan anvendes ved efterforskning af misbrug eller forsøg på misbrug af NemID.*
</snip>

Som det fremgår af historikken var det præcis fordi teksten var forkert og svær at forstå, at den blev rettet fra version 1.0 til version 1.1, men den gamle formulering er desværre blevet genintroduceret i version 1.2. Jeg sørger for at dette rettes hurtigst muligt.

Jan Phuklin

Jeg har aldrig meldt mig ind hos dem - jeg droppede min netbank i juli 2010, så jeg modtog aldrig noget om, at jeg skulle overgå til NemID, og jeg har aldrig ansøgt om at få det.

Det gjorde jeg også.

For faktum er at man ikke kan undgå det skidt

Jo, det kan undgås!
I September 2011 oprettede jeg en konto med Netbank ved en af de 5 danske banker som bruger ikke NemID. Jeg er meget glæd for den.

David Konrad

Jeg tvivler også på at de ift f.eks en ubuntuklient kan få noget meningsfuldt ud af det, og man kan virkelig spørge sig selv hvad de skal bruge skidtet til. For mit vedkommende blev det dog aldrig et problem. Da NemID kom droppede jeg min internetbank. Stolede ikke på projektet og Nordea understøttede ikke Linux, og så kan det jo være lige meget. Har vænnet mig til gammeldags betaling på posthuset med girokort. Er sikkert dum og gammeldags, og folk undrer sig også, men sådan blev det bare til sidst.

David Konrad

Jo, jo. Det er da også fair nok, at de hiver information som de kan trække ud af requestet/browseren. Men hvad i h... skal de med information om min computer, som de kun kan trække ud via native code?

Gætter det har været et krav i specifikationen. Ikke fordi man havde en ide om hvorfor, men blot var blevet rådet til, af et konsulentfirma, at det burde man også kræve i udbuddet. Det er fint nok, man kan nemt nok indbygge den slags i sin internetapplikation, men det undrer jo virkelig meget det skal være på individplan. De skal vide at lige DU bruger windows 7, bor dette sted og har den slags forbindelse, bruger denne laptop osv. Hvis det handlede om regulær statistik var det bare at indsætte en GA. Så dit spørgsmål er meget relevant.

Erik Jacobsen

Der indsamles tilsyneladende en checksum, der nogenlunde unikt kan identificere en PC. Ved vi om denne checksum sendes til Nets? Hvis den gør, så er der en mulig, lettere obskur, anvendelse: Hvis man klager over en transaktion, vil de med en pæn sandsynlighed kunne se om transaktionen stammer fra samme PC som andre transaktioner man har lavet.

Henrik Madsen

I September 2011 oprettede jeg en konto med Netbank ved en af de 5 danske banker som bruger ikke NemID. Jeg er meget glæd for den.

Kan du løfte sløret for hvilken af de 5 du valgte.

Jeg var faktisk også igang med at snakke med dem men en sagde nej da de var en lokal bank, en anden sagde jeg nej tak til fordi de var ved at skifte til SkodID og 2 andre hørte jeg slet ikke fra.

Den sidste ville gerne have mig som kunde og det eneste som endte med at stå i vejen var at de ville have 150 Kr om året pr visa kort og da vi har 2 af dem så ville det koste os 300 om året at skifte til den bank og så blev vi enige om at vi ikke ville betale 300 om året for at have netbank.

Vi kommer alligevel naturligt forbi vores nuværende banks bankomat flere gange om ugen og trækker så bare et kontoudtog i maskinen. Gætter på at banken må skifte rulle på maskinen lidt tiere men det er jo deres valg når de nægter at give os et andet alternativ end den og NemID.

Jeg ønsker KUN bankadgang og har derfor INTET at bruge NemID til, kan sagtens nøjes med en netbank only løsning ..

Henrik Madsen

Thomas Christensen

Jeg faldt over denne sætning under Cookies og Tekniske oplysninger

"Tracking data kan blive opbevaret udenfor EØS, i så tilfælde sker dette under iagttagelse af personoplysningsloven, herunder EU's Modelkontrakt eller Safe Harbor Privacy Principles ."

Ikke særligt betrygende.

Andreas Thiele

Bare til info...

Udover de nævnte kan man i koden se, at der er klargjort til tre systemer mere:
Linux 64 bit (filnavn: ok.gif)
OSX til ppc (filnavn: cancel.gif)
OSX 64 bit (filnavn: startup.gif)

Så når (/hvis) folk finder nogle nye i fremtiden, bør de ikke blive bekymrede.

Til de interesserede ligger denne info i ParagraphView-klassen, hvor strengene bliver dekrypteret i Woddlecakes-klassen.

Lars Tørnes Hansen

Ja vi snakker om

file ./DanID_Applet/img/error.gif
./DanID_Applet/img/error.gif: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped

som er en linux .so fil (.so svarer til *.dll i Windows terminologi).

Hvis der skal læses i diverse filer, hvorfor gør man det så ikke fra Java appleten selv?

Jeg mener:
/proc/<pid> indeholder alle oplysninger om en bestemt proces for eksempel (kunne være browseren f.eks.).
I /proc navigerer man rundt blandt filer og mapper.
Skal du finde informationer om systemet er /sys interessant at kigge i, og vil man godt vide noget om device drivers til netværk og harddisk(e) kigger man i /dev.

Det må være enten en programmør der aldrig har lavet Linux/UNIX kode*, eller også har PET været inde over med et krav om mulighed for en bagdør.
DanId: Vælg selv 1 ud af 2.

Sagt på en anden måde, hvis ellers applet kan tilgå filsystemet er error.gif koden nok overflødig og kan erstattes af java kode, som hiver oplysninger ud af filsystemet (VFS).


*: Hvis man går via JNI i en applet for derfor at bruge et API kald i maskinkode, i stedet for direkte at kigge i en mappe/fil i VFS fra appletten, så er man en dårlig programmør.

Jeg undlader ikke at bemærke at koden til Linux (kernen) er offentlig tilgængelig, så der er alle muligheder for at forstå hvordan mapper, filer og data-stukturer som kernen stiller til rådighed i /proc, /sys og /dev skal forstås.

Tilmed er der kode tilgængelig - i form af userspace programmer - der henter information i netop /proc, /sys, og /dev, og skiver information i en terminal, så det er bare at oversætte den C kode til Java kode, men husk i så tilfælde at licensen sikkert er under GPL eller ligende(=applet skal også udgives under GPL, hvis i laver C til Java kode oversættelse af brugbar kode).

Hans Schou

Kan du løfte sløret for hvilken af de 5 du valgte.


Jeg kender 2 af dem: Oikos og Andelsbanken. Mit eget problem med de to er at sikkerheden ikke er høj nok, da man kan logge ind på sin konto alene ved login+password, og så er service omkring PBS-betalinger ikke gode nok. Hvis de to ankepunkter kom på plads, så kunne både min hustru og jeg overtales (førstnævnte er det største problem ;-)

Tro mig, jeg vil meget gerne skifte.

Der er en liste med banker her. Ja de har forbindelse til JAK, og det er så OK hvis du stemte på Retsforbundet ved sidste valg ("Fuld grundskyld" og alt det der):
http://jak.dk/forening/pengeinstitutter.htm
...der skal sluges nogle kameler, men hvis du er imod NemID, så er det vel ikke så svært?

Hans Schou

Peter Lind Damkjær:

Herudover indsamler vi:
- Oplysning om IP adresse


Røgslør? Det gør alle. Det er en uinteressant information.

  • PC-checksum (teknik til beregning af unik identifikation af en pc).


Hvorfor indsamler NemID denne information? Er der lovhjemmel for det? Hvad bruges den information til? Og lad FOR HELVEDE være med at pisse mig af med blot at sige det er sikkehedsrelateret og ikke nærmere.

Problemet for NemID/DanID/Nets/PBS er lige nu at der ret mange mennesker i DK der ikke har den store tillid til Jer. Det er ikke ønsketænkning, selv om I gerne så det sådan. Helge Sander var vildt begejstret, men han er ikke mere (i politik (heldigvis)), så ham kan NemID ikke læne sig op ad længere. Situationen nu, er at der er politikere der er begyndt at forholde sig til de problemer omkring NemID, som har været nævnt på version2 i årevis. Beklager, der er ikke så meget nyt i det. Det er den gamle sang igen: NemID informerer alt ringe om hvad der sker bag ved. Når der bliver informeret for lidt og der er hemmeligheder, så kommer der konspirationsteorier. En af dem for tiden er at PET er indblandet, hvilket de nok ikke er, men teorien opstår alene fordi NemID er så ringe til at kommunikere hvad de gør.

Ærligt talt Peter, det er da for pinligt det med at gemme kode nede i en error.gif fil? For at bruge et NemID udtryk, så er det da "useriøst"?

Om ikke andet, så skal Peter Lind Damkjær have mange tak for at stille op og komme med nogle forklaringer på de besynderligheder der er blevet påpeget. Mere åbenhed er altid velkommen.

David Konrad

Jeg ønsker KUN bankadgang og har derfor INTET at bruge NemID til, kan sagtens nøjes med en netbank only løsning ..


Netop, jeg vel endda sige - Nemt. Gid min bank Nordea ville give mig min gamle netbank tilbage. Jeg skal kun betale regninger med den konto, intet andet. Det gik fint før NemID så jeg kan ikke forstå vi ikke har muligheden også nu.

PS: Nu ser jeg et eksempel på folk der ikke kan finde ud af at optimere Drupal?

Sune Marcher

Vi er vel efterhånden nogen stykker, der ikke har tillid til NemID, men som i praksis er tvunget til at bruge det. Måske kunne vi blive enige om, at bruge den samme VM til at tilgå NemID, så checksummen blev den samme?

Vil det give præcis samme hashes at bruge samme VM image (og VM host app)?

Har lige her til aften taget mig sammen til at installere en xubuntu der kun skal bruges til NemID relaterede ting, i en firefox hvor der er installeret certificate patrol, adblockplus og noscript. Nogen der har yderligere forslag til sikkerhedstiltag?

Jeg overvejer kraftigt at reverse-engineere linux .so'en og få den til at returnere hashes der egentligt bare er ASCII strenge med obskøne anti-nemid budskaber.

Michael Rasmussen

Eller installere en 64bit version i Virtualbox. Jeg har eksperimenteret lidt med ELF32 so'en (indtil videre finder der ikke en 64bit ELF i DanIDs java applet). Det ser ud til at den crasher med segmentation fault, hvis den bliver afviklet i et 64 bit miljø. Selvom man har lib32 installeret ved siden af lib64 crasher den også, da koden ikke er intelligent nok til at tage højde for det:-)
Så karakteren for det faglige niveau af koden må derfor give anledning til navneændring til DebilID!

Magnus Jørgensen

At de skjulte native filers formål er at tjekke at den jvm der gører appletten er den rette.

Hvis den jvm der kører appletten er kompromitteret kan den hindre at applette kontrollerer dette, men native kode vil kunne. Dette kan selvfølgelig omgås ved at hacke jvm således at en anden native kode køres.

Peter Makholm

Som det fremgår af historikken var det præcis fordi teksten var forkert og svær at forstå, at den blev rettet fra version 1.0 til version 1.1, men den gamle formulering er desværre blevet genintroduceret i version 1.2. Jeg sørger for at dette rettes hurtigst muligt.

Virker det ikke også lidt pinligt at privatlivspolitikken ikke er underlagt en ordentlig ændringskontrol? Har i en dokumeteret historik for den fil? Passer jeres dokumenterede historik med hvilke ændringer der reelt er foretaget i filen gennem tiden? Kan jeg stole på at der kun foretages ændringer hvis versionsnummeret også ændres?

Hvordan foregår godkendelsen af sådan en politikændringe egentligt?

Jesper Lund

Vi er vel efterhånden nogen stykker, der ikke har tillid til NemID, men som i praksis er tvunget til at bruge det. Måske kunne vi blive enige om, at bruge den samme VM til at tilgå NemID, så checksummen blev den samme? Jeg foreslår en af:

Det er vel ikke givet at checksummen bliver den samme? Så vidt jeg kan se bruges CPU ID, og VirtualBox giver CPU typen videre fra host OS.

Jeg havde selv tænkt på VM i kombination med at køre MAC changer på guest OS'et for at randomisere den "unikke" ID som (måske?) sendes til DanID.

Udover lave aktivisme for at protestere mod DanIDs skjulte dataindsamling, er det måske lidt svært at se hvad man opnår (det gælder også mit randomiseringsforslag).

Det giver mening at randomisere din google.com cookie når du laver Google søgninger fordi det reducerer Google's muligheder for at koble sessioner sammen (Google får stadig din IP og GET headers). Men du er i forvejen fuldt identificeret overfor DanID med brugernavn, password og OTP.

Men jeg synes at der er to gode grunde til at sandboxe NemID i et VM

1) I dag køres kode som laver et unikt fingerprint af din computer. I næste uge er det måske Bundestrojaneren? DanID har ikke været specielt ærlige på dette punkt, og DanID er gode til at formulere sig i generelle vendinger der kan dække over mange ting. Det er ikke fordi jeg mistænker DanID for ondsindede hensigter, men jeg synes at jeg er kommet dertil hvor jeg ikke længere ved hvad jeg skal tro, og så giver det mening at tage sine forholdsregler. NemID slipper jeg ikke for (jeg har ikke OCES, men de der småsparekasser som folk henviser til opfylder ikke mine behov for bankforretninger).

2) Jeg er i forvejen fuldt identificeret overfor DanID, så hvad risikerer jeg hvis jeg stoler på at DanID aldrig vil gøre andet end at beregne deres hash og sende den til deres servere? I forhold til DanID selv ikke noget, men koden til at beregne hashen er let at reverse engineere, så man kunne forestille sig følgende scenarie: du gemmer dig bag TOR eller et andet anonymiserende netværk, men en angriber får mulighed for at køre fingerprinting koden på din computer. Nu har angriberen samme hash som du sender til DanID. Hvis angriberen kan få DanID til at oplyse hvem der har brugt denne hash, er du identificeret mod dit ønske på grund af sessionskobling. Det vil selvfølgelig kræve dommerkendelser eller anden statslig pression mod DanID, men det er ikke en uovervindelig hurdle. Hvis man derimod har et VM som kun bruges til NemID, eksisterer dette problem ikke.

Jesper Lund
Michael Rasmussen

For at koden kan afvikles, kræves disse delte biblioteker på din linux:
/usr/lib32/libstdc++.so.6
/lib32/libm.so.6
/lib32/libc.so.6
/usr/lib32/libgcc_s.so.1

Så hvis ovenstående ikke findes, hvilket de ikke gør på en ren 64bit distribution, vil den native code crashes eller ikke kunne afvikles.

Katalogreferencerne viser også, at den native kode er blever oversat på en maskine med både 32 og 64 bit afviklingsmiljø. Måske det også vil betyde, at en ren 32 bit distro heller ikke vil afvikle den, da en sådan ikke vil have /lib, /lib32 og /lib64, hvor /lib er et link til /lib64

Jesper Lund

Som det fremgår af historikken var det præcis fordi teksten var forkert og svær at forstå, at den blev rettet fra version 1.0 til version 1.1, men den gamle formulering er desværre blevet genintroduceret i version 1.2. Jeg sørger for at dette rettes hurtigst muligt.

Det er korrekt at version 1.1 ikke havde denne fejl, men jeg har aldrig set denne privatslivspolitik før nu, hvor DanID henviser til dette dokument som begrundelse for at DanID overhovedet "må" lave denne unikke identifikation af min PC.

Da jeg oprettede min NemID og gav mit samtykke, blev jeg præsenteret for et sæt brugerbetingelser på nemid.nu, som i øvrigt er min adgangsportal hvis jeg skal administrere min NemID.

I den nuværende version
https://www.nemid.nu/om_nemid/regler/regler_for_nemid/regler_for_nemid.pdf

står der i afsnit 3.7 om behandling af personoplysninger

Ved brug af NemID oprettes log filer på brugerens PC. Disse filer
kan slettes af brugeren, hvis det ønskes. Læs mere om logfilerne
på: www.nemid.nu/om_nemid/om_dette_websted/privatlivspolitik/
Hvis du i selvbetjeningsløsningen på www.nemid.nu vælger at få
registreret, hvor du har brugt NemID, registrerer DanID også, hvil-
ke tjenesteudbydere du har brugt NemID hos. Du kan altid fravæl-
ge denne registrering. Herefter vil DanID ikke længere registrere,
hvor du har brugt NemID. DanID opbevarer oplysningerne i løbende
år + fem år, hvorefter de slettes.

Ikke et ord om unikke fingerprinting ID'er som bliver genereret på min computer. Hvis de unikke ID'er alene bliver skrevet til danid.log (?), er det måske inden for rammerne af aftalen, men så ville det være lidt svært at se pointen i at lave dem.

For fuldstændighedens skyld skal det siges at den oprindelige version af nemid.nu dokumentet havde denne formulering i afsnit 3.7

For at kunne efterforske eventuelt misbrug, registrerer DanID
tidspunkter, hvor du bruger NemID, IP-adressen og andre oplys-
ninger om den computer, du logger på fra.

"Andre oplysninger om min computer" kan måske være dette unikke ID (og så kan det være hvad som helst incl. min browser historik), men den er lidt langt ud. Og i øvrigt skriver DanID selv at det altid er seneste version på nemid.nu som er den gældende aftale.

Michael Rasmussen

Jeg kommer nu til at tænke på, at på 64bit opensuse 11.4 virker nemid ikke, og den fremviste fejlmeddelelse, ifølge support hos Danske Bank, er ukendt. Måske det relaterer sig til, at den native code er crashet?

Lars Tørnes Hansen

Jeg overvejer kraftigt at bruge en Raspberry Pi computer til at køre en X server, en minimal desktop (xterm?/LXDE?), hvorfra man kan køre det eneste installerede program: firefox med java.

Der bliver også noget netværkskonfiguration til at isolere maskinen i mit LAN.

Kai Birger Nielsen

Hmm, det var interessant (Stadil sparekasse). Første tanke: Ok, men jeg er også kasserer for en forening, der bruger Danske Bank, dvs jeg slipper kun for Nemid, hvis jeg også kan skifte foreningen over.
Anden tanke: Hmm, men det kunne man jo godt kombinere med en netbank, der bruger Stadil sparekasse..
Tredie tanke: Det er nok noget over en halv million, jeg forholdsvis nemt kan smide i retning af Stadil sparekasse. Gad vide om det kan få mine nuværende bankers opmærksomhed.
Fjerde tanke: Det er jeg egentlig ligeglad med, hvis ellers Stadil sparekasse holder vand.
Hmmm....

Casper Bang

Synes du at det lyder som en mulighed, Casper Bang? Andre må naturligvis også meget gerne kommentere den mistanke.

Jeg er nok mere tilhænger af teorien om at DanID bruger det til at checke JRE'et.

1) Der ville ikke være nogen fordel i at lave en bagdør via C sockets frem for Java.

2) Jeg bemærker at symboltabellen i C koden indeholder referencer til obfuskeret Java (Java_dk_danid_plugins_Wud).

3) Det er tilsyneladende ikke et funktionelt krav at C koden overhovedet skal kaldes.

4) De finder det ikke nødvendigt at signere JAR filerne og stoler altså ikke på JVM'en SecurityManager, men vælger istedet at lade bootstrap appletten checke hashværdien (og downloade nye ved uoverensstemmelser).

Thue Kristensen

Du kan anvende et armel image. Til dette findes icedtea-plugin (Debian forstås)
Hent f.eks her:
http://people.debian.org/~aurel32/qemu/armel/

Første prøvede jeg at logge ind på en x86-maskine med openjdk - det virkede. (maskinenen er selvfølgelig en virtuel maskinen!)

Så prøvede jeg i den linkede armel virtuelle maskine. Efter at have tastet navn og password, så står den bare og viser vente-animationen uden at der sker mere.

Det bør vel være relativt let at finde det sted i den decompilerede kildekode hvor fx large.gif er refereret fra, så det kunne være skægt at se præcis hvordan koden håndterer dette. (ja, jeg ved at strengene i koden er krypteret, men det er let at komme uden om.)

Casper Bang

...fingerprinting af computeren kan bruges som en del af sikkerheden. Det gør man (eller rettere: jeg ved at man gjorde det) også med mobiltelefoner.


Jo, men hvorfor gøre dette via JNI, uden om dén Java sandkasse man som bruger giver DanID lov til at bruge, når appletten eksekveres? I mine øjne er det ikke noget der forbedrer sikkerheden, det udvider istedet mængden af attack vectors.

Henrik Madsen

Jeg valgte Stadil Sparekasse. Jeg bruger den kun til netbank.
Netbank koster 120 kr./år men alle netbankstransaktioner er gratis.
Jeg bruger min "gammel" bank til kontanter.
Min "gammel" banks afgift er 15 kr. per indbetalingskort. Så er min lille investering i Stadil netbank hurtig tilbagebetalt.

Ja ok, jeg kan dårligt huske hvilken af de 5 det var jeg var tættest på for den bank af de 5 som var tættest satte mig i forbindelse med "J.A.K. Andelskasse Østervrå" som jo lå en del tættere på.

Dog ville de så som sagt have 150 Kr om året pr visakort og da vi har et hver her i familien så ville det blive 300 om året.

Jeg er så heller ikke en ret god kunde for en bank for jeg skylder nærmest ingen penge væk hverken på hus, bil eller lign. så det jeg reelt set har brug for begrænser sig til :

Lønkonto med netbank og visa kort.
Budgetkonto. (Ingen kort nødvendigt)
Fælleskonto med dankort.

Jeg betaler alt over PBS aftaler så det er kun een til 2 gange om året at jeg har brug for at betale et girokort og der bruger jeg nordea kuvertservice så koster det ikke så meget.

Idag har jeg de 3 ovennævnte konti og så selvfølgelig ingen netbank adgang.

Dertil har jeg så en fjerde konto som er det lån som næsten er betalt af (pr mangler jeg 70.000 men de er væk om mindre end et år).

Til den konto har banken været nødt til at få lavet et hævekort så jeg kan trække en saldo og det koster ikke noget at flytte penge mellem mine egne konti via bankomaten så jeg trækker saldi på mine konti en gang om måneden, laver regnestykke på overførsler og så gør jeg det via automaten.

Lidt gammeldags men jeg har aldrig stolet på NemID og jeg har altid haft en nagende mistanke om at det der java skidt var mere end blot "nødvendigt" og jeg ser nu at min frygt var reel og ikke kun sølvpapirshat.

Derudover mangler jeg i DEN GRAD en mulighed for permanent at nuke sin OCES adgang så INGEN kan aktivere den og så selvfølgelig en mulighed for selv at være herre over en del af mine digitale signatur.

Jeg stoler simpelthen ikke på bankerne nok til at turde lade dem administere min online identitet og jeg kunne godt forestille mig at man kom i en situation hvor de bankansatte kunne tilgå mine OCES data, enten uden min viden eller jeg skulle give dem lov.

Så siger du måske at så kan jeg bare lade være med at give dem lov men forestil dig at du sidder i banken og vil have et billån og så siger de "Du er nødt til lige at give samtygge til at vi kigger i din skattemappe om du skylder SKAT penge, i din sygehusjournal for at se at du ikke har en lidelse som gør at du dør inden vi får vores penge tilbage" osv osv... Giver man ikke accept så får man ingen lån..

Henrik Madsen

Jon Linde

Det er ikke fordi jeg mistænker DanID for ondsindede hensigter...

Som udgangspunkt er jeg enig.
Det er måske ikke en fair sammenligning, men jeg tror heller ikke at det var videnskabsfolkenes hensigt at dræbe utallige civile da de skabte atombomben - det ændrer dog ikke det faktum at det netop var det som skete da den blev brugt første gang.

Jeg tror ikke at DanID har til hensigt at overvåge brugerne eller udsætte dem før unødige ricici, men der er efterhånden dokumenteret så mange problemer med hele NemID konceptet at man godt kunne have "nogle" mistænkt for forsætligt at dreje NemID over i en retning hvor overvågning, misbrug og svindel er en reel mulighed.

Alternativet er naturligvis at det er håbløst tekniske og politiske inkompetancer som står bag NemID løsningen.
Jeg ved ikke om det er bedre...

De finder det ikke nødvendigt at signere JAR filerne...

Naturligvis ikke, for hvilken signatur skulle de også bruge til dette formål? :-P
* Et certifikat udstedt af TDC Root - som grundlæggende er en del af problemet?
* Et andet, offentligt signeret certifikat - hvorved de viser at de ikke engang har tillid til deres eget root certiifkat?

Henrik Madsen

Efterretningstjenesterne tale utvivlsomt sammen og når den tyske efterretningstjeneste har lavet en bundes trojaner som jo unægteligt er et kraftfuldt våben i hænderne på efterretningstjenesten så er det næsten utopisk at tro på at den danske efterretningstjeneste om ikke andet har et brændende ønske om et lignende værktøj til deres efterretnings-værktøjskasse.

NemID ville være den perfekte trojanske hest til ubemærket at bære denne bagdør ind på folks maskiner og alene det faktum gør at det er meget sandsynligt at PET/FE har haft en eller anden finger med i spillet.

Jeg siger ikke at man har planer om at masseinfiltrere alle danskeres computere via NemID men det hele lugter af at man har forberedt sig på at kunne pushe en speciel version af NemID appletten til enkelte computere, tilhørende folk som man gerne ville holde øje med.

Der er mig bekendt INTET i vejen for at man kunne sende en lettere modificeret version med et "du skal opdatere din applet for at fortsætte" besked til Johnny Brian eller Mohammed Said hvis man mente de måske var interessante og så lige scanne deres harddiske efter noget "spændende"..

Henrik Madsen

Jesper Udby

McAfee arbejder på at få virusdetektionen til ikke at reagere på applet-filerne fremadrettet...

Det burde ikke være nødvendigt, hvis bare DanID afholdt sig fra noget så barnligt som at "skjule" executable som gif'er!

...visse af spørgsmålene kræver svar fra udviklere, som har været med til at designe systemerne...

Den køber jeg ikke. Med mindre de er mere end almindeligt amatøragtige er det ikke udviklerbeslutninger der ligger bag det valg, det må bestemt være dokumenteret "højere oppe".
Årsagen er nok snarere at man skal tænke sige lidt grundigere om inden man udtaler sig denne gang...

Benny Tordrup

Burde DanID ikke oplyse brugerne om, at der bliver gemt denne type filer på deres pc'er?

»Det er ikke hemmeligt: https://www.nets-danid.dk/om_nets_danid/privatlivspolitik/index_12.html - Se under cookies og tekniske oplysninger.«

De tekniske oplysninger omtaler cookies - ikke på noget sted programkode skjult i billedfiler. Og så vidt jeg husker er cookes rene tekstfiler. Så for mig at se overtræder de dermed deres egen privatlivspolitik.

Thue Kristensen
Jon Linde

@Jon
Efterretningstjenesterne tale utvivlsomt sammen og når den tyske efterretningstjeneste har lavet en bundes trojaner som jo unægteligt er et kraftfuldt våben i hænderne på efterretningstjenesten...

Som sagt tror jeg ikke at de har haft til hensigt at lave en løsning som kan misbruges. Jeg håber at den løsning som findes i dag er et resultat af inkompetence og ikke onde hensigter.
Jeg er desværre stadig i tvivl om hvorvidt at der er det ene eller det andet.

NemID ville være den perfekte trojanske hest til ubemærket at bære denne bagdør ind på folks maskiner...

Perfekt er sådan et stærkt ord. Hvis du har et stærkere, vil jeg hellere bruge dét.
Hvis først et par ressager fastslår at NemID er en sikker identifikation, vil overvågning mod en NemID identificeret person blive idiotsikkert i en retssag.
Derefter kan alt jo lade sig gøre - både inden for en retssal og udenfor.

Rune Svendsen

Er det lykkes nogen at eksekvere error.gif på en Linux-maskine? Jeg har prøvet med en virtuel maskine via kvm/qemu, men jeg får bare en segmentation fault, og hvis jeg kører den via gdb får jeg intet brugbart output:

(gdb) bt

0 0x80001587 in ?? ()

1 0x00000001 in ?? ()

Hans Schou

Jeg har prøvet med en virtuel maskine via kvm/qemu, men jeg får bare en segmentation fault


Jeg fik samme fejl så jeg tror at der skal nogle parametre med eller noget andet. Du kan prøve at køre strace og se om det giver noget info. Prøv noget i retning af:

strace -ff -o nemid.log -eopen firefox http://borger.dk/  
grep -r "/proc/cpuinfo" .

"-eopen" er et filter for kun at se hvilke filer der bliver åbnet, ellers bliver der meget output.

Jeg har ikke nemid, så jeg har ikke prøvet det selv.

Rune Svendsen

Smart!

Det lader til at error.gif bliver placeret i /tmp med et tilfældigt filnavn med .so endelse - i dette tilfælde /tmp/19978E14.so
Dette er præcis samme fil som error.gif.

Og nu ved jeg hvorfor den ikke kan eksekveres - fordi det er et shared object. Doh!

Så jeg går ud fra vi skal finde ud af hvilken funktion inde i denne .so fil som applet'en bruger - og hvilke argumenter den giver til denne funktion.

Her er logfilerne fra strace, hvis du er interesseret i at kigge på dem: https://docs.google.com/open?id=0BxfpSow9S9ZMbWxXWldUbUhXNHM

Der er nogle funktioner i .so filen der ser ud til at det godt kunne være dem der bliver kaldt fra Java:

rune@rune-desktop:~/danid/DanID_Applet/img$ readelf -a -W error.gif|grep -i Wuddel  
    63: 00002ca5   213 FUNC    GLOBAL DEFAULT   12 Java_dk_pbs_applet_pcdna_Wuddelcakes_a  
    65: 00002def    49 FUNC    GLOBAL DEFAULT   12 Java_dk_pbs_applet_pcdna_Wuddelcakes_b  
    68: 00002d7a   117 FUNC    GLOBAL DEFAULT   12 Java_dk_pbs_applet_pcdna_Wuddelcakes_c  
    71: 00002e20    43 FUNC    GLOBAL DEFAULT   12 Java_dk_pbs_applet_pcdna_Wuddelcakes_d  
    72: 00002b62    92 FUNC    GLOBAL DEFAULT   12 Java_dk_pbs_applet_pcdna_Wuddelcakes_e  
    76: 00002bbe   231 FUNC    GLOBAL DEFAULT   12 Java_dk_pbs_applet_pcdna_Wuddelcakes_f
Log ind eller opret en konto for at skrive kommentarer

JobfinderJob i it-branchen

TDC skifter koncernchef efter faldende mobilomsætning

Jesper Stein Sandal Mobil og tele 14. aug 2015

Nyeste job

KurserStyrk dine evner med et kursus

Access 2007 Videregående

Hvornår: 2015-10-01 Hvor: Østjylland Pris: kr. 4950.00

Den sociale diplomuddannelse

Hvornår: Hvor: Efter aftale Pris: kr. Efter aftale

MCP 20416 kursus: Implementing Desktop Application Environments

Hvornår: 2016-07-11 Hvor: Storkøbenhavn Pris: kr. 18750.00

Borgerservice Excellence

Hvornår: Hvor: Storkøbenhavn Pris: kr. 19500.00

MCP 20488 kursus: Developing Microsoft SharePoint Server 2013 Core Solutions

Hvornår: 2015-11-16 Hvor: Storkøbenhavn Pris: kr. 18750.00