mboost-dp1
Lidt info om mit.dk problemet
- Forside
- ⟨
- Forum
- ⟨
- Tagwall
#1
Og det er godt nok pinligt for dem.
Det er en lang artikel med en masse ord som forsøger at skjule substansen.
Men reelt siger de at login koden var totalt fubar og gemte bruger oplysninger midlertidigt i en global variabel / application object fremfor i en thread specifik variabel / session object, således at der ved samtidigt login (indenfor 10 ms eller deromkring) kunne ske en overskrivning af oplysninger midvejs i logikken.
De har ret i at den slags samtidighedsproblemer er svære at fange i test. Men så er der jo code review og code analysis tools.
Givet hvad det system bruges til så var det vel ikke helt ved siden af at bruge den slags.
Og det er godt nok pinligt for dem.
Det er en lang artikel med en masse ord som forsøger at skjule substansen.
Men reelt siger de at login koden var totalt fubar og gemte bruger oplysninger midlertidigt i en global variabel / application object fremfor i en thread specifik variabel / session object, således at der ved samtidigt login (indenfor 10 ms eller deromkring) kunne ske en overskrivning af oplysninger midvejs i logikken.
De har ret i at den slags samtidighedsproblemer er svære at fange i test. Men så er der jo code review og code analysis tools.
Givet hvad det system bruges til så var det vel ikke helt ved siden af at bruge den slags.
#2
Det siger vel også at de ikke har haft pentesting. Hvilket er helt helt galt.
Vi laver threat models og pentesting af vores nyhedsprodukter, men et offenlig digital inbox har gør det ikke? Totalt WTF, og er jo nærmest et bevis i sig selv på at der ikke var nogen som helst erfarne udviklere / projekt-ledere på projektet.
Det siger vel også at de ikke har haft pentesting. Hvilket er helt helt galt.
Vi laver threat models og pentesting af vores nyhedsprodukter, men et offenlig digital inbox har gør det ikke? Totalt WTF, og er jo nærmest et bevis i sig selv på at der ikke var nogen som helst erfarne udviklere / projekt-ledere på projektet.
arne_v (2) skrev:Men reelt siger de at login koden var totalt fubar og gemte bruger oplysninger midlertidigt i en global variabel / application object fremfor i en thread specifik variabel / session object, således at der ved samtidigt login (indenfor 10 ms eller deromkring) kunne ske en overskrivning af oplysninger midvejs i logikken.
Whaaat. Global som i global på tværs af loginforsøg?
Det lyder på niveau med hvad jeg set i C kode skrevet af selvlærte teknikere, jeg har været udsat for i tidens løb.
Fremgår det hvilket programmeringssprog der blev brugt her?
#4
Ja - det er hvad de skriver gemt i al den tekst.
Ja - det er slemt.
Nej - jeg har ikke set noget om sprog.
Men fejlen kan laves i de fleste sprog.
C/C++ - global scope variabel
C++/Java/C# - static class member / instance member af singleton / DI injected singleton mode
o.s.v.
alle sprog - distribueret cache (cache server)
Ja - det er hvad de skriver gemt i al den tekst.
Fejlen opstod, når flere brugere loggede på løsningen samtidig.
»I de tilfælde, kunne autentificeringsnøglen fra en bruger ("A") potentielt overskrive autentificeringsnøglen fra en anden bruger ("B»),
...
Fejlen opstod ifølge Netcompanys anmeldelse som et resultat af, at flere brugere loggede på løsningen på det eksakt samme tidspunkt.
...
I forsøget på at genskabe fejlen viste test, at det ville kræve ‘hundredvis af loginforsøg inden for samme sekund/millisekund for at fejlen kunne genskabes.’
Ja - det er slemt.
Nej - jeg har ikke set noget om sprog.
Men fejlen kan laves i de fleste sprog.
C/C++ - global scope variabel
C++/Java/C# - static class member / instance member af singleton / DI injected singleton mode
o.s.v.
alle sprog - distribueret cache (cache server)
#3
De har lavet pen test.
Men den pen test fandt ikke problemet.
Hvilket ikke overrasker mig. Pen test fokuserer normalt på mere traditionelle sikkerheds problemer. "Prøv og send en lavine af login request og check om de logger ind som den rigtige bruger" er ikke en del af den test.
De har lavet pen test.
»For at validere sikkerheden af mit.dk, blev der inden go-live først gennemført en intern penetrationstest af Netcompany's sikkerhedsteam. Senere blev der gennemført en sikkerhedstest af en tredjepart, F-Secure, hvor konklusionen var at løsningen var klar til ibrugtagning fra et sikkerhedsmæssigt perspektiv,«
Men den pen test fandt ikke problemet.
Hvilket ikke overrasker mig. Pen test fokuserer normalt på mere traditionelle sikkerheds problemer. "Prøv og send en lavine af login request og check om de logger ind som den rigtige bruger" er ikke en del af den test.
#6
Jeg synes ellers det er et område vores sikkerhedskonsulenter har nævnt før i tiden.
Bare spørg SKAT, de har erfaring fra online selvangivelse :p
(Eller enhver virksomhed med millioner af brugere)
Jeg synes ellers det er et område vores sikkerhedskonsulenter har nævnt før i tiden.
I forsøget på at genskabe fejlen viste test, at det ville kræve ‘hundredvis af loginforsøg inden for samme sekund/millisekund for at fejlen kunne genskabes.’Det er jo ikke engang særlig meget.
Bare spørg SKAT, de har erfaring fra online selvangivelse :p
(Eller enhver virksomhed med millioner af brugere)
Claus Jørgensen (7) skrev:
Jeg synes ellers det er et område vores sikkerhedskonsulenter har nævnt før i tiden.
Måske er jeres specielt gode.
Min erfaring er at de går efter traditionel JS/SQL i URL/header/body.
Claus Jørgensen (7) skrev:I forsøget på at genskabe fejlen viste test, at det ville kræve ‘hundredvis af loginforsøg inden for samme sekund/millisekund for at fejlen kunne genskabes.’
Det er jo ikke engang særlig meget.
Hundredevis per sekund er ikke meget. Det skal testes. Men de testede med et hack fordi deres load test ikke kunne simulere MFA.
»Der er lavet omfattende performance-tests af løsningen inden go-live, herunder også af den komponent som var involveret i hændelsen. Det er dog ikke umiddelbart muligt, at lave store automatiserede performancetests som også involverer realistiske NemID-logins (pga. kravet om to-faktor autentificering). Derfor blev testen lavet med et simuleret login som omgik det almindelige loginflow via NgDP og Nemlog-in. Dette simulerede login kørte hurtigere end det rigtige login-flow
Hundredevis per millisekund er en del. 100 login/ms er 100000 login/s eller 6M login/min. Det er Facebook scale.
lolarne_v (8) skrev:Hundredevis per sekund er ikke meget. Det skal testes. Men de testede med et hack fordi deres load test ikke kunne simulere MFA
#11
Udfra tidspunktet for annoncen sammenholdt med MitID tidslinien: næppe.
Men hvis det er kravene til en senior arkitekt, så kan man jo gætte på kravene til junior arkitekt, senior udvikler, mid level udvikler og junior udvikler.
Og så er man måske ikke så overrasket over at der har været problemer.
Udfra tidspunktet for annoncen sammenholdt med MitID tidslinien: næppe.
Men hvis det er kravene til en senior arkitekt, så kan man jo gætte på kravene til junior arkitekt, senior udvikler, mid level udvikler og junior udvikler.
Og så er man måske ikke så overrasket over at der har været problemer.
#9 og #12
Jeg lagde meget mærke til den annonce, fordi at kravene til senior arkitekt er noget jeg kender.
Mit nuværende team er meget lille men det er ægte senior arkitekter.
master, 7 year developer, 15 year architect
bachelor, 9 year developer, 4 year manager, 24 year architect
PhD, 10 year developer, 5 year manager, 16 year architect
master, 18 year developer, 2 year manager, 11 year architect
Jeg lagde meget mærke til den annonce, fordi at kravene til senior arkitekt er noget jeg kender.
Mit nuværende team er meget lille men det er ægte senior arkitekter.
master, 7 year developer, 15 year architect
bachelor, 9 year developer, 4 year manager, 24 year architect
PhD, 10 year developer, 5 year manager, 16 year architect
master, 18 year developer, 2 year manager, 11 year architect
Claus Jørgensen (14) skrev:
Deres uddannelse synes ret irrelevant med så meget erfaring...
Ja.
Claus Jørgensen (14) skrev:
(Og så er arkitekt en meget obskur titel, det kan dække over 1000 forskellige ting)
Ja.
Men i det her tilfælde er det alt sammen enten software arkitekt eller løsnings arkitekt.
En ny perle.
https://www.it-jobbank.dk/jobannonce/442210/gradua...
Rolle:
Kvalifikationer:
https://www.it-jobbank.dk/jobannonce/442210/gradua...
Rolle:
Danmark skal leve op til en ny EU-forordning (EUTK), som skal ensarte kvaliteten på toldområdet, lette handlen og forbedre sikkerheden ved EU’s ydre grænser. Hovedparten af de danske it-systemer på toldområdet skal i den forbindelse udskiftes. En række af de nye it-systemer udvikler Danmark selv, mens andre udvikles i EU-regi. Udviklingen og implementeringen sker i et tæt samarbejde mellem Toldstyrelsen og Udviklings- og Forenklingsstyrelsen, og systemerne sættes i drift efter en fælleseuropæisk køreplan.
...
Du får mulighed for at komme rundt i vores program og arbejde med spændende problemstillinger fra forskellige perspektiver.
...
Du får du lov at følge vores dygtigste kollegaer på tæt hold. Du bliver kastet ud i opgaver på egen hånd og bliver udfordret i din dagligdag.
...
Din rejse vil tage dig rundt i flere dele af vores program med fokus på it-arkitektur og -sikkerhed. Du kan fx arbejde med at sikre en sammenhængende arkitektur mellem løsningens forskellige komponenter, EU-systemer og omkringliggende toldsystemer sammen med vores solution- og systemarkitekter. De har ansvaret for, at it-arkitekturen hænger sammen på tværs af programmet, samt for at drive tværgående afklaringer af teknisk karakter. I forhold til it-sikkerhed kan du blive tilknyttet vores team af sikkerhedsarkitekter, der arbejder med persondatabeskyttelse, informationssikkerhed og operationel sikkerhed.
Kvalifikationer:
Igennem dit 18 måneders graduate-forløb vil vi arbejde på at matche din faglighed og interesser inden for primært it-arkitektur.
...
Du afslutter din kandidatuddannelse senest den 1. august 2022 eller har afsluttet den inden for de seneste år. Du har en uddannelse inden for it, hvilken kandidatuddannelse er ikke så afgørende, så længe du kan redegøre for, hvordan din uddannelse, interesse og/eller erfaring er relevant for graduate-stillingen.
Du har sandsynligvis haft studierelevant arbejde undervejs, måske arbejdet med udvikling, ligesom du fra studiet har erfaring med at arbejde projektorienteret.
#17
En ting er de sædvanelige katastrofale stillingsopslag hvor man får det indtryk at den der har formuleret det intet aner om de opremsede teknologier.
Men her er jeg bekymret for projektet. Der er formentligt tale om nogle meget komplekse krav (told regler i EU), integration med eksisterende systemer og samarbejde hen over landegrænser. Det kan vel ikke blive mere kompliceret. Vil man så sætte de bedste i branchen til at stå for arkitekturen for dette? Nej man vil hyre en "arkitekt praktikant" (nyuddannnet, *måske* med udviklingserfaring) som under vejledning fra mere erfarne skal arbejde med det. Hvad er sandsynligheden for at projektet kommer i problemer?
En ting er de sædvanelige katastrofale stillingsopslag hvor man får det indtryk at den der har formuleret det intet aner om de opremsede teknologier.
Men her er jeg bekymret for projektet. Der er formentligt tale om nogle meget komplekse krav (told regler i EU), integration med eksisterende systemer og samarbejde hen over landegrænser. Det kan vel ikke blive mere kompliceret. Vil man så sætte de bedste i branchen til at stå for arkitekturen for dette? Nej man vil hyre en "arkitekt praktikant" (nyuddannnet, *måske* med udviklingserfaring) som under vejledning fra mere erfarne skal arbejde med det. Hvad er sandsynligheden for at projektet kommer i problemer?
https://www.it-jobbank.dk/jobannonce/447487/analyt...
Tunge sager:
men:
Tunge sager:
Analytiske metodekonsulenter til at understøtte samfundsessentielle it-udviklingsprojekter i Skatteforvaltningen
...
Konkret kommer du bl.a. til at:
udarbejde de metodiske og konceptuelle rammer, der skal sikre, at it-projekter gennemføres effektivt og sikkert i en stor og kompleks koncern, hvor en række balancegange skal håndteres
udarbejde de metoder, standarder, koncepter og værktøjer, der skal være med til at sikre grundlaget for sikker styring af og rapportering fra skatteforvaltningens it-projekter, herunder relevante snitflader ift. porteføljestyring og -rapportering
udarbejde koncepter og standarder inden for en bred pallette af tværgående emner, der vil have afgørende betydning for, at it-projekter kan lykkes med eksekvering, fx risiko- og gevinststyring
understøtte implementeringen af metoder og standarder samt rådgive om deres brug i eksisterende og kommende it-projekter i Udviklings- og Forenklingsstyrelsen
deltage i betjeningen af metodeområdets ledelse ved fx udarbejdelse af beslutning- og rapporteringsmateriale – ofte med korte deadlines.
men:
Det er en fordel, hvis du har nogle års erfaring, men vi hører også gerne fra dig, hvis du er en skarp nyuddannet.
#20
Så vidt jeg kan se søger de folk til at definere deres udviklings process.
Og hvad kan gå galt hvis man sætter nyuddannede uden erfaring eller nogle med kun få års erfaring til at definere udviklings processen for et sted med nogle af landet mest komplekse IT projekter og en høj fiasko rate?
Så vidt jeg kan se søger de folk til at definere deres udviklings process.
Og hvad kan gå galt hvis man sætter nyuddannede uden erfaring eller nogle med kun få års erfaring til at definere udviklings processen for et sted med nogle af landet mest komplekse IT projekter og en høj fiasko rate?
#21
Måske, men hvis en nyuddannet definere deres process efter en af de der LEAN bøger så er der vist ikke så meget forskel fra traditionel management :p
Jeg har generelt ikke meget tiltro til en udviklingsprocess der skal defineres på forhånd. Dygtige udviklkere tilpasser processen til hvem der arbejde på holdet og hvad der skal laves på et given tidspunkt.
Måske, men hvis en nyuddannet definere deres process efter en af de der LEAN bøger så er der vist ikke så meget forskel fra traditionel management :p
Jeg har generelt ikke meget tiltro til en udviklingsprocess der skal defineres på forhånd. Dygtige udviklkere tilpasser processen til hvem der arbejde på holdet og hvad der skal laves på et given tidspunkt.
#22
Det er nok noget af det eneste som ikke er inkluderet.
Skat udliciterer for det meste arbejdet.
Så leverandøren (vinderen af udbuddet) har en intern process som styrer deres udvikling.
Det her lyder som hvordan skat holder styr på leverandøren.
Det lyder som projekt planer, mile stones, risiko analyse, change requests, prioriteringer, koordination med andre projekter, cost benefit analyser etc..
Projekt ledelse på højt plan. Hvilket er noget de færreste magter.
Det er nok noget af det eneste som ikke er inkluderet.
Skat udliciterer for det meste arbejdet.
Så leverandøren (vinderen af udbuddet) har en intern process som styrer deres udvikling.
Det her lyder som hvordan skat holder styr på leverandøren.
Det lyder som projekt planer, mile stones, risiko analyse, change requests, prioriteringer, koordination med andre projekter, cost benefit analyser etc..
Projekt ledelse på højt plan. Hvilket er noget de færreste magter.
re: #24
Det er faktisk spøjst at tænke over det. For os som, mere eller mindre, kan vælge og vrage hvor vi vil arbejde, så er ideen om at arbejde på projekter med uendelige mænger bureaukrati jo ikke særlig tiltalende.
Og specielt ikke hvis lønnen ikke er super attraktiv.
Men jeg synes ikke altid det er noget arbejdsgiverne har forstået (og ikke kun i det offentlige)
Det er faktisk spøjst at tænke over det. For os som, mere eller mindre, kan vælge og vrage hvor vi vil arbejde, så er ideen om at arbejde på projekter med uendelige mænger bureaukrati jo ikke særlig tiltalende.
Og specielt ikke hvis lønnen ikke er super attraktiv.
Men jeg synes ikke altid det er noget arbejdsgiverne har forstået (og ikke kun i det offentlige)
#24 og #25
Helvede vil nok fryse til is inden du vil søge sådant et job.
Men det er også en del af IT projekter.
Nogen skal:
- definere hvad projektet skal opnå
- skaffe bevilling
- skaffe opbakning fra de forskellige brugere og andre interessenter til projektet
- løbende overvåge projekt status og risiko vurdere
- analysere konsekvenser af ændringsønsker og fremlægge til styregruppe for accept eller afvisning
- efter projektets afslutning evaluere både projektforløb og hvorvidt målene er opnået
Det er ikke nemt for store projekter.
Det kræver lederevner og erfaring.
Og sådan en finder man ikke uden at betale mange penge.
Helvede vil nok fryse til is inden du vil søge sådant et job.
Men det er også en del af IT projekter.
Nogen skal:
- definere hvad projektet skal opnå
- skaffe bevilling
- skaffe opbakning fra de forskellige brugere og andre interessenter til projektet
- løbende overvåge projekt status og risiko vurdere
- analysere konsekvenser af ændringsønsker og fremlægge til styregruppe for accept eller afvisning
- efter projektets afslutning evaluere både projektforløb og hvorvidt målene er opnået
Det er ikke nemt for store projekter.
Det kræver lederevner og erfaring.
Og sådan en finder man ikke uden at betale mange penge.
#22 og #23
I mit firma er der på store projekter typisk:
projektleder - som laver den slags her (anden side af bordet altså leverandør ikke kunde, men grundliggende det samme)
software projektleder - som arbejder med udviklerne og testerne omkring estimater, status etc.
infrastruktur projektleder - som sørger for at det som softwaren skal køre på er der til tiden (kun for on-prem projekter selvfølgelig)
teknisk projekleder (som af historiske grunde kaldes system engineer) - som arbejder med BA, TL og arkitekter for at sikre at det man leverer teknisk vil fungere
I mit firma er der på store projekter typisk:
projektleder - som laver den slags her (anden side af bordet altså leverandør ikke kunde, men grundliggende det samme)
software projektleder - som arbejder med udviklerne og testerne omkring estimater, status etc.
infrastruktur projektleder - som sørger for at det som softwaren skal køre på er der til tiden (kun for on-prem projekter selvfølgelig)
teknisk projekleder (som af historiske grunde kaldes system engineer) - som arbejder med BA, TL og arkitekter for at sikre at det man leverer teknisk vil fungere
Hvis man nu forestillede sig at at det danske fodboldlandshold blev sammensat af 11 unge lovende spillere fra Danmarksserien og så spillede man landskamp mod England, Tyskland, Frankrig, Italien og Spanien og tabte dem alle 0-10. Var der så nogen som ville undre sig over resultatet? Er der nogen som ville mene at løsningen var at skifte fra 4-4-2 til 4-3-3?
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.