När malware slår till som en räv i hönshuset – och hur du skyddar dig

30 mars 2026 — Ulfbåge Consulting

Förra veckan fick jag ett samtal från en kollega som låter som en dåligt skriven deckare: ”Tricksie, min dator har börjat bete sig som en tokig ekorre på kaffe – 11 000 Python-processer på fem minuter! Jag trodde först att jag råkat köra import this i en oändlig loop, men nu ser det ut som om någon lagt en malware-bomb i mitt site-packages.”

Visst, det där med ekorrar och kaffe var mitt bidrag till konversationen. Men poängen står sig: moderna supply chain-attacker är som att få en ovänlig räv in i hönshuset. Den ser ut som en vanlig höna (eller PyPI-paket), men plötsligt är alla dina kycklingar borta – och med ”kycklingar” menar jag SSH-nycklar, AWS-credentials och din hemliga recept på kanelbullar.

Varför just nu är som att leka kurragömma med en hackare

Det senaste året har vi sett tre oroande trender:

  1. Malware som smyger sig in via legitima verktyg – som när LiteLLM-paketet (som 50 000 utvecklare använder) plötsligt började stjäla Kubernetes-tokens.
  2. Messaging-appar som C2-servrar – FBI varnar för att iranier använder Telegram som fjärrkontroll för sina skadliga program. (Proffstips: Om din moster plötsligt skickar en ZIP-fil via Telegram med texten ”LOL KATTVIDEOR!!!”, så är det inte kattvideor.)
  3. Firmware-backdoors i nya enheter – Sophos hittade malware inbyggd i Android-surfplattor. Det är som att köpa en ny soffa och upptäcka att den redan har termiter.

Det som gör detta extra lurigt är att attackerna utnyttjar vår egen infrastruktur. Python-paket som ser ut som vanliga beroenden. Chattappar vi litar på. Till och med våra egna build-pipelines. Det är som att bli rånad av någon som har nyckeln till ditt hus – för att du själv gav den till dem.

Hur en malware-attack ser ut inifrån (spoiler: kaos)

Låt oss bryta ner vad som hände i LiteLLM-fallet, för det är en masterclass i modern malware:

  1. Smuggla in sig: En komprometterad version (1.82.8) laddades upp till PyPI – men ingen motsvarande GitHub-tagg fanns. Klassiskt ”hejsan, jag är en uppdatering du inte beställde!”.
  2. Persistens-försök: Malwaren försökte skapa ~/.config/sysmon/sysmon.py (som tur var avbröts skrivningen, så filen blev 0 bytes stor – som en tom ölburk efter festen).
  3. Fork bomb: 11 000 processer på några minuter. Datorn blev så överbelastad att användaren tvingades till en hård omstart. (Proffstips: Om din fläkt låter som en helikopter på startbanan, är det dags att börja oroa sig.)
  4. Utnyttja miljöskillnader: Malwaren letade efter Kubernetes-tokens på Linux-sökvägar – som inte finns på macOS. Som att försöka stjäla nycklarna till en bil du tror är en Volvo, men det visar sig vara en IKEA-vagn.

För några år sedan hjälpte jag en kompis som fått malware på sin Windows-dator. När vi körde analysverktyg hittade vi en fil som hette svchost.exe – men den låg i C:\Users\Bosse\Music\. ”Vad gör en systemfil i din musikmapp?” frågade jag. ”Kanske är det min nya favoritlåt?”, svarade Bosse. Nej, Bosse. Det var inte din nya favoritlåt.

De vanligaste misstagen (och hur du undviker dem)

När paniken slår till är det lätt att göra dumma saker. Här är vad jag ser folk göra – och vad du ska göra istället:

🚫 Fel sätt ✅ Rätt sätt
Kör rm -rf / för att ”ta bort all malware” Använd lsof och ps aux för att identifiera misstänkt aktivitet först
Litar på att pip install --upgrade fixar allt Verifiera paket med pip check och kolla SHA-hashar mot officiella källor
Ignorerar ”konstiga” processer för att de har legitima namn Kolla process-träd med pstree – malware gömmer sig ofta som barn till python eller node

Din anti-malware checklista (som faktiskt fungerar)

  • Aktivera 2FA på alla pakethanterare – PyPI, npm, RubyGems. Ja, det är tråkigt. Ja, det räddar dig när någon laddar upp left-pad-2.0.0-malware-edition.tar.gz.
  • Använd pip-audit eller npm audit regelbundet – precis som tandtråd, men för din kod.
  • Isolera build-miljöer – Docker-containers för beroendeinstallationer. Om malwaren bryter ut, bryter den åtminstone ut i en låda.
  • Overvaka .pth-filer och sitecustomize.py – dessa körs automatiskt vid Python-start. Som en trojansk häst, fast i script-form.
  • Sätt processgränser – Lägg till ulimit -u 2048 i din shell-konfig. 11 000 processer? Inte på min maskin, tack.
  • Kolla nätverkstrafik med iftop eller nethogs – Malware som exfiltrerar data ser ut som en elefant som försöker smyga förbi i en porslinsbutik.
  • Ha en ”clean room”-miljö – En virtuell maskin eller separat enhet enbart för att ladda ner och inspektera misstänkt kod. Som en karantän för dina digitala sjukdomar.
  • Träna på incidenthantering – Precis som branddrill. Fast istället för att krypa under ett bord övar du på att köra tcpdump -w evil_traffic.pcap.

När paranoian är en dygd (och andra livsvisdomar)

Efter 10 år i branschen har jag lärt mig några saker:

  1. Om något känns fel, så är det fel. Din magkänsla är bättre än de flesta antivirus-program.
  2. Backa upp innan du börjar fippla. Inte efter. Inte ”snart”. Nu.
  3. Documentera allt. När du är mitt i en attack kommer du inte ihåg vad du gjorde för 10 minuter sedan. Skriv ner:
    • Exakta tidpunkter (”11:07 – märklig fil skapades i ~/.config”)
    • Kommandon du kör och deras output
    • Skärmdumpar (ja, även om de är från din telefon)
  4. Lita inte på att malware är dum. Den här LiteLLM-attacken kollade om den kördes i en Kubernetes-miljö och anpassade sitt beteende. Det är som en inkräktare som klär om beroende på vilken fest hen går på.

Och kom ihåg: Om du någonsin ser en process som heter google_update.exe och den ligger i /tmp/definitely_not_evil/ – då är det dags att dra ut nätverkssladden. Litar du på mig?

Nästa steg: Din överlevnadsguide

  1. Kör ett ”malware-fire drill” idag: Välj ett slumpmässigt paket du använder och gör en fullständig audit. Hur skulle du märka om det var komprometterat?
  2. Konfigurera alert för nya beroenden: Verktyg som renovate eller dependabot kan varna för misstänkt aktivitet i dina dependencies.
  3. Lär dig grunderna i statisk analys: Verktyg som bandit (för Python) eller semgrep hittar misstänkt mönster i kod innan den körs.
  4. Gå med i en CTF-grupp eller bug bounty-program: Inget lär dig att tänka som en hackare bättre än att försöka hacka (laget).
  5. Uppdatera din .gitignore: Se till att den inte ignorerar filer som *.pth eller sitecustomize.py – du vill se om de dyker upp oväntat.

Och slutligen: Om du någonsin känner dig ensam i jakten på digitala skadedjur, kom ihåg – även rävarna har sina dåliga dagar. Förra veckan fastnade jag själv i en loop där jag försökte debugga ett script, bara för att upptäcka att jag hade skrivit if x == tru (ja, utan det sista e:t) i 47 olika filer. Så även proffsen gör misstag. Skillnaden är att vi har git blame att skylla på.

← Tillbaka till startsidan

Stärk er säkerhetsförmåga

Vill du diskutera hur vi kan hjälpa er organisation? Kontakta oss för ett förutsättningslöst samtal om era behov.

Plats Palma de Mallorca / Remote
Arbetar Internationellt, fokus Norden