- Key Takeaways
- Den förödande effekten av ett misslyckande med kodsignering
- Bedömning av programvarans förtroende och granskningsprocesser
- Förstå kodsigneringsproblemet
- Bästa praxis för robust kodsignering
- Vill du veta hur vi kan hjälpa dig?
- Slutsats
- Vanliga frĂĄgor om partihandel med mat och dryck
Kodsignering är en avgörande mekanism för att etablera autenticitet och förtroende, vilket säkerställer att programvara inte komprometteras under distribution. Felaktig kodsignering kan dock medföra betydande risker. I den här bloggen utforskar vi vikten av kodsignering och fördjupar oss i de potentiella konsekvenserna av en komprometterad kodsigneringsprocess.
Stärka programvarusäkerheten genom kodsignering, kort sagt: de incidenter som fortsätter att återkomma (NotPetya, ShadowPad, ASUS, CCleaner) delar alla en grundorsak, en komprometterad version eller nyckel som ledde till en legitim signatur på skadlig kod. HSM-baserad nyckelförvaring, centraliserad nyckelhantering och obligatorisk försigneringsskanning är det som specifikt förhindrar en upprepning, inte allmän medvetenhet.
Key Takeaways
- NotPetya (distribuerat via MeDoc) och ShadowPad (distribuerat via NetSarangs Xmanager/Xshell) är två separata attacker mot leveranskedjorna från 2017; båda komprometterade en byggprocess för att distribuera skadlig kod genom en legitimt signerad uppdatering, men de riktade sig mot olika företag och programvara.
- För den fullständiga incident-responssekvensen om du misstänker en aktiv kompromettering, hotmodell, inneslutning, återkallelse och återställning, se Stärk kodsigneringssäkerheten mot integritetskringningar.
Den förödande effekten av ett misslyckande med kodsignering
Nedan följer några anmärkningsvärda attacker som inträffade till följd av komprometterad eller misslyckad kodsignering:
-
NotPetya-attack
I juni 2017 drabbades det globala sjöfartskonglomeratet AP Moller-Maersk av skadlig kodattack med NotPetya. Attacken kom från ett litet ukrainskt mjukvaruföretag, MEDoc, som hade fallit offer för statligt sponsrade hackare. Genom att utnyttja sårbarheter i företagets säkerhetsinfrastruktur fick hackarna tillgång till kodsigneringsnycklarna, vilket gjorde det möjligt för dem att injicera skadlig kod i en legitim programuppdatering. Denna skadliga uppdatering distribuerades därefter till kunder, inklusive AP Moller-Maersk, vilket resulterade i en omfattande infektion och betydande störningar.
-
ShadowPad-attack i leveranskedjan
År 2017 komprometterade en separat leveranskedjeattack byggservern tillhörande NetSarang, en utvecklare av serverhanteringsprogramvara inklusive Xmanager och Xshell. Angriparna infogade en bakdörr, senare kallad ShadowPad, i en legitim programuppdatering, som NetSarang sedan digitalt signerade och distribuerade till kunder som inte var medvetna om att byggen hade manipulerats. Denna incident, som upptäcktes i augusti 2017, riktade sig mot ett helt annat företag och en helt annan produkt än NotPetya/MeDoc-attacken ovan, trots att båda följde samma mönster: kompromettera byggen, låta den normala signeringsprocessen legitimera skadlig programvara.
-
ASUS Live Update Hack
År 2019 infiltrerade hackare ASUS webbuppdateringsserver och injicerade skadlig programvara i legitima ASUS-drivrutinsuppdateringar. De komprometterade kodsigneringsnycklarna gjorde att de skadliga uppdateringarna såg ut att vara autentiska, vilket resulterade i att över en miljon ASUS-datorer infekterades. Denna attack belyste sårbarheten i programvaruleveranskedjor och vikten av robusta kodsigneringsrutiner.
-
CCleaner-bakdörr
År 2017 komprometterades det populära systemoptimeringsverktyget CCleaner när hackare injicerade skadlig programvara i en av deras officiella programuppdateringar. Angriparna signerade den skadliga uppdateringen med ett giltigt kodsigneringscertifikat och lurade därmed användarna att tro att det var en legitim uppdatering. Händelsen påverkade miljontals användare och underströk vikten av kodsigneringsintegritet.
Dessa attacker fungerar som en tydlig påminnelse om den avgörande roll kodsignering spelar för att säkerställa programvarans tillförlitlighet och äkthet.
Bedömning av programvarans förtroende och granskningsprocesser
Mot bakgrund av sådana incidenter är det avgörande att ifrågasätta den nivå av förtroende vi har för den programvara vi installerar och använder. Företag är beroende av många externa programvarupaket för att stödja sin dagliga verksamhet. Avsaknaden av strikta granskningsprocesser för dessa programvarupaket kan dock medföra betydande risker. För att förbättra programvarusäkerheten, överväg följande åtgärder:
-
Granskning och vitlistning
Implementera en robust process för att granska och godkänna programvara innan användare får installera den. Överväg att upprätta en vitlista över betrodd programvara och begränsa installationer till endast de godkända applikationerna.
-
Intern programvaruproduktion
Inse vikten av att säkra ditt företags programvara. Behandla dina privata kodsigneringsnycklar som nycklarna till ditt företags rike. Implementera strikta åtkomstkontroller, kryptering och övervakningsmekanismer för att skydda dessa nycklar från stöld eller missbruk. Överväg att använda hårdvarusäkerhetsmoduler (HSM) för att lagra och skydda dina kodsigneringsnycklar, eftersom de ger hög säkerhet och manipuleringsskydd.
-
Försörjningskedjans integritet
Se till att programvaran du får från externa källor genomgår noggranna säkerhetskontroller. Implementera mekanismer för att verifiera integriteten och äktheten hos programuppdateringar före installation.
Förstå kodsigneringsproblemet
Effektiviteten av kodsignering för att skydda programvaruleveranskedjor har bevisats under de senaste tre decennierna. Vissa utmaningar hindrar dock dess effektivitet. Organisationer kämpar ofta med att effektivt hantera privata kodsigneringsnycklar, vilket leder till sårbarheter och potentiella komprometter. Låt oss utforska några vanliga problem:
-
Brist pĂĄ centraliserad nyckelhantering
Många globala organisationer har geografiskt spridda team av mjukvaruutvecklare. Dessa team behöver tillgång till privata kodsigneringsnycklar för att signera sin programvara. Men när nycklar lagras på utvecklares bärbara datorer, byggservrar eller webbuppdateringsservrar blir de sårbara för stöld eller missbruk.
-
UnderlĂĄtenhet att inse nyckelvikt
Privata kodsigneringsnycklar bör behandlas som huvudnycklar till ditt företag. Tyvärr förbiser organisationer ofta deras kritiska betydelse och misslyckas med att implementera tillräckliga säkerhetsåtgärder för att skydda dem.
-
Otillräckliga säkerhetsrutiner
Otillräckliga säkerhetsrutiner, såsom svag lösenordshantering, bristande kryptering och otillräckliga åtkomstkontroller, bidrar ytterligare till sårbarheter i kodsignering.
Bästa praxis för robust kodsignering
För att förbättra säkerheten och integriteten i din programvaruinfrastruktur är det absolut nödvändigt att implementera bästa praxis för kodsignering. Överväg följande rekommendationer:
-
Implementera hårdvarusäkerhetsmoduler (HSM)
HSM:er tillhandahåller en dedikerad och säker miljö för nyckellagring och kryptografiska operationer. Genom att utnyttja HSM:er kan organisationer skydda sina privata nycklar från fysiska och logiska attacker, vilket säkerställer integriteten i kodsigneringsprocessen.
-
Rotera tangenterna regelbundet
Rotera regelbundet kodsigneringsnycklar för att mildra effekterna av potentiella nyckelkomprometter. Genom att regelbundet uppdatera nycklar minimerar organisationer risken för obehörig åtkomst och upprätthåller tillförlitligheten hos sin signerade programvara.
-
Använd policyer och procedurer för kodsignering
Utveckla omfattande policyer och procedurer för kodsignering som definierar roller, ansvarsområden och arbetsflöden för kodsigneringsprocessen. Säkerställ att anställda får korrekt utbildning och följer dessa policyer för att upprätthålla en säker kodsigneringsmiljö.
-
Kontinuerlig övervakning och revision
Implementera en robust övervaknings- och revisionsmekanism för att upptäcka och utreda misstänkta aktiviteter relaterade till kodsignering. Granska regelbundet loggar och utför revisioner för att identifiera potentiella säkerhetsbrister och vidta korrigerande åtgärder omedelbart.
-
Skanna efter virus
Även om kodsignering ger autentisering garanterar det inte själva kodens säkerhet. Därför rekommenderas det starkt att utföra noggranna virus- och skadlig kodskanningar av koden innan publicering och signering med digitala certifikat . Att utföra dessa skanningar förbättrar kodens övergripande kvalitet och hjälper till att identifiera och minska potentiella säkerhetsrisker.
Vill du veta hur vi kan hjälpa dig?
Encryption Consultings CodeSign Secure erbjuder organisationer en heltäckande kodsigneringslösning skräddarsydd för deras unika behov. Genom att använda denna lösning kan organisationer etablera en stark kodsigneringspolicy som effektivt minskar säkerhetsrisker och säkerställer äktheten hos deras programvara. Vår produkt effektiviserar kodsigneringsprocessen och erbjuder en rad funktioner utformade för att förbättra säkerheten.
En viktig funktion i CodeSign Secure är säker nyckelhantering . Det gör det möjligt för organisationer att säkert lagra sina privata nycklar till kodsigneringscertifikatet genom att integrera med branschledande hårdvarusäkerhetsmoduler (HSM) som är FIPS- certifierade. Denna integration eliminerar de potentiella riskerna med stulna, skadade eller missbrukade nycklar, eftersom de privata nycklarna aldrig lämnar HSM under kodsigneringsoperationen.
Slutsats
Kodsignering är en avgörande del av att säkerställa programvarans äkthet och förtroende. De potentiella konsekvenserna av en komprometterad kodsigneringsprocess är dock allvarliga, vilket framgår av anmärkningsvärda attacker som NotPetya-attacken mot AP Moller-Maersk och andra incidenter. För att skydda din programvaruinfrastruktur är det viktigt att implementera robusta kodsigneringsrutiner och prioritera säkerheten för privata kodsigneringsnycklar. Organisationer kan minska riskerna i samband med kodsigneringsmisslyckanden genom att följa bästa praxis som HSM-användning, regelbunden nyckelrotation, strikta kodsigneringspolicyer, kontinuerlig övervakning och virusskanning.
Vanliga frĂĄgor om partihandel med mat och dryck
Var NotPetya och ShadowPad samma attack?
Nej. NotPetya distribuerades via en komprometterad uppdatering till MEDoc, en ukrainsk bokföringsprogramvara. ShadowPad var en separat incident som distribuerades via en komprometterad version av NetSarangs Xmanager och Xshell-serverhanteringsverktyg. Båda följde samma bygg-kompromettera-sedan-signera-mönster, men de är separata attacker mot olika företag.
Vilken är den enskilt mest effektiva kontrollen mot detta attackmönster?
HSM-baserad nyckelförvaring kombinerad med skanning efter skadlig kod i förväg. Ingetdera ensamt är tillräckligt: ​​HSM-lagring skyddar nyckeln från stöld, men fångar inte skadlig kod som redan finns i bygget; skanning fångar skadlig kod, men skyddar inte en exponerad nyckel.
