Security Blog

634 adgangskoder på 56 sekunder

#97

October 2, 2026 · By Marketing team

← All posts

En udvikler gik gennem to samtalerunder hos et falsk firma. Ægte hjemmeside, ægte ansigter, ægte tekniske samtaler. Så kørte de kodningsopgaven. På under et minut var alle Chrome-adgangskoder, macOS Keychain og data fra krypto-wallets væk.

En udvikler — sikkerhedsbevidst, erfaren, en der aktivt leder efter svindel — gik gennem et flertrins ansættelsesforløb hos et falsk firma. HR-samtale. Teknisk samtale med to ingeniører. Ægte hjemmeside med teamfotos. Ægte LinkedIn-profiler. Uger med relationsopbygning.

Så blev vedkommende bedt om at køre en lille kodningsopgave under skærmdeling.

56 sekunder senere havde angriberne 634 gemte Chrome-adgangskoder, macOS Keychain-filen (som indeholder nøglen til at dekryptere dem) og data fra MetaMask-wallets.

Sådan virkede angrebet

GitHub-repoet så rent ud. Få backend-filer, intet mistænkeligt. Men en afhængighed — winston-middleware, et pakkenavn der lyder helt normalt — havde sin egen afhængighed: next-runtimejs.

Det var der, våbnet lå.

I det øjeblik npm install kørte, blev et shell-script udført lydløst. Ingen prompts, ingen advarsler. Det hentede en Go-baseret bagdør og registrerede den til at starte automatisk ved hvert boot.

Dette var ikke et script kiddie-værktøj. Custom RC4-krypteret C2-protokol. Kommandoer til shell-udførelse, filtyveri, udtrækning af Chrome-adgangskoder, Keychain-eksfiltrering og målretning mod krypto-wallets. Professionelt bygget.

Bagdøren startede kl. 16:16:37. Chrome-adgangskoderne blev tilgået kl. 16:17:33. Udvikleren bemærkede en macOS-popup om en udgående forbindelse og dræbte WiFi inden for et minut — men skaden var allerede sket.

Hvorfor samtalen var vigtig

Dette angreb ville fejle som en kold mail. "Kør det her repo" fra en fremmed bliver ignoreret.

Men efter to samtalerunder? Efter at have grinet sammen over, hvor mange falske jobsvindlerier der retter sig mod udviklere? Efter at en af interviewerne sagde "Kig endelig efter bagdøre" med et smil?

Det er der, dit forsvar falder. Tillid er exploitet. Malwaren er bare payloaden.

Udvikleren sagde det bedst: "Hvis det skete for mig, kan det ske for alle på dit team."

Hvad Chrome-adgangskoder i virkeligheden betyder

Chrome krypterer gemte adgangskoder med AES. Dekrypteringsnøglen ligger i macOS Keychain. Angriberne stjal begge filer på under et minut.

Hver gemte adgangskode — bank, e-mail, GitHub, cloud-konsoller — var læsbar i deres ende. Keychain-filen kan knækkes offline uden rate limits. Udvikleren var nødt til at rotere alt.

Det er den beskidte hemmelighed ved browser-gemte adgangskoder: de er krypteret med en nøgle, der ligger på den samme maskine. Kompromitter maskinen, og "krypteringen" er pynt.

DPRK-mønsteret

Udvikleren nævnte, at deres tidligere firma også blev hacket af Nordkorea tre måneder tidligere. Det er "Contagious Interview"-kampagnen — nordkoreanske statsstøttede angribere, der kører falske jobsamtaler for at plante malware på udviklermaskiner.

Det er ikke tilfældigt. De går målrettet efter udviklere på grund af det, udviklere har adgang til: produktionscredentials, signeringsnøgler, cloud-infrastruktur og — i stigende grad — AI-agent-tokens, der kan give adgang til endnu mere.

Skalaen er industriel. Falske firmaer med genererede ansigter. Polerede hjemmesider. Ansættelsesforløb over flere uger. De investerer, fordi ROI'en er der.

"Adgangskodeadministratorer hjælper ikke"

Udvikleren kom med et interessant udsagn i tråden: "Adgangskodeadministratorer hjælper ikke, hvis de har adgang til din computer via en bagdør som denne, fordi de kan sende enhver fil senere, lave et speciallavet exploit kun til dig, keyloggers, screenshots."

Det er delvist rigtigt og delvist forkert.

En adgangskodeadministrator, der gemmer sin vault på din lokale disk, låst op af en hovedadgangskode du selv taster — ja, en bagdør med keylogging og filadgang kan kompromittere det.

Men en adgangskodeadministrator med hardwarebundne nøgler — hvor dekrypteringsnøglen udledes af en fysisk authenticator og aldrig findes som en fil på disken — er fundamentalt anderledes. Bagdøren kan stjæle filer, logge tastetryk og tage screenshots. Men den kan ikke udtrække en nøgle, der kun findes inde i en hardware security module under et fysisk tap.

De 634 Chrome-adgangskoder blev stjålet, fordi både de krypterede data og dekrypteringsnøglen var filer i filesystemet. Hvis dekrypteringsnøglen kræver fysisk besiddelse af en enhed, får du krypterede blobs og intet andet ud af at stjæle filer.

Hvad du kan gøre

  • Kør aldrig kode fra en samtale på din primære maskine. Brug en VM eller en separat enhed.
  • Kør npm install --ignore-scripts på ethvert ukendt repo, før du udfører noget
  • Brug en udgående firewall (Little Snitch, LuLu), der advarer om nye forbindelser
  • Hold op med at gemme adgangskoder i Chrome. Punktum.
  • Opbevar krypto på hardware wallets, ikke i browserudvidelser
  • Behandl enhver kodningsopgave fra en rekrutterer som potentielt fjendtlig, uanset hvor mange samtaler I har haft

Udvikleren overlevede, fordi en macOS-popup fangede den udgående forbindelse i tide. De fleste havde klikket Allow uden at tænke nærmere over det.

56 sekunder. Det er alt, det tager.