Hoppa till innehåll

47-dagarscertifikat kommer. Är du redo?

Agera nu →

Status för attacker i programvaruleveranskedjan

Attacker i programvaruleveranskedjan

Under de senaste två åren har du förmodligen hört mer än du någonsin velat eller förväntat dig att höra om attacker i leveranskedjan. Enligt en studie har dessa attacker haft en ökning på cirka 650 % jämfört med föregående år. Undersökningen visade att mjukvaruutveckling miljöer har fortfarande låga säkerhetsnivåer. Dessutom hade alla analyserade företag brister och konfigurationsfel som gjorde dem sårbara för attacker i leveranskedjan.

Vad är attacker i programvaruleveranskedjan?

När ondskefulla hackare tränger in i beroenden från tredjepartsprogramvara som används i ett flertal "nedströms"-applikationer, resulterar det i en attack mot programvaruleveranskedjan. Det gemensamma elementet är programvara med öppen källkod, ofta en automatiskt betrodd kodkälla som används av interna systemutvecklare. Angripare kan potentiellt stjäla känslig information från, störa tjänster för eller bryta sig in i nätverk hos hundratals eller till och med tusentals företag genom att infiltrera ett enda program eller bibliotek med öppen källkod.

Skador utdelats

Nyare forskning belyser tendensen att tre av fem företag utsattes för attacker från mjukvaruleveranskedjan. År 2021 uppgav endast 38 % av företagen att de inte påverkades av denna attack. Alla attacker är inte likadana; vissa är stora, medan andra snabbt syns i backspegeln. Några av de uppmärksammade mjukvaruattackerna som tog internet bort från stormarna var:

  • Solvindar (december 2020)

    Hotaktörer använde Orions programvara som ett vapen för att få åtkomst till flera statliga nätverk och tusentals privata system världen över, vilket gjorde SolarWinds leveranskedjeattack till en global hackerattack. De amerikanska hälso-, finans- och utrikesdepartementen var anmärkningsvärda offer för denna attack.

  • Codecov (april 2021)

    Angripare lyckades infoga en bakdörr i Codecov för att få tillgång till känslig klientdata, vilket nyligen ledde till ett stort intrång. Mycket skickliga angripare använde en brist i hur Codecov skapade Docker-avbildningar för att utföra detta intrång. De använde detta för att ändra ett skript som lät dem starta flera attacker från en fjärrserver med hjälp av miljövariabler från Codecov-användarnas CI.

  • Microsofts Winget (maj 2021)

    WinGets programvaruregister översvämmades med pull requests för applikationer som antingen var dubbletter eller inte fungerade som de skulle helgen efter lanseringen. Det översvämmades med felaktiga eller duplicerade paket, som skrev över de redan befintliga.

  • Kaseya (juli 2021)

    Flera säkerhetsleverantörers programvaruplattformar för fjärrövervakning och hantering innehöll en nolldagssårbarhet som en ransomware-organisation hittade och utnyttjade. Denna incident krypterade filer från över 1 500 företag.

  • Log4j-sårbarhet (december 2021)

    Bristen gör det möjligt för angripare att få fjärråtkomst till Log4j-användning appar. Sårbarheten ligger i kommunikationsmekanismen, vilket gör det möjligt för en angripare att infoga skadlig kod i loggarna och få den att köras på systemet.

Och många fler på listan.

Toppattackvektorer

Många olika attackvektorer används för att kompromettera en programvaruleverantör och framgångsrikt attackera genom utvecklingspipelinen. Angriparna koncentrerade huvudsakligen sina attacker på dessa punkter:

  • Utnyttjar brister i öppen källkodsapplikationer

    De flesta kommersiella programvaror har öppen källkod. Två områden är i fokus för sårbara attacker i leveranskedjan för applikationer:

    • En är att utnyttja brister i tidigare installerade och spridda program. Till exempel Log4j-sårbarheten.
    • Inkludering av skadlig kod i välkända privata och öppen källkodspaket för att få automatiserade pipeline-verktyg att inkludera dem i applikationsbyggprocessen. T.ex. us-parser-js paketförgiftning.
  • Komprometterade pipelineverktyg och ändrad byggprocess

    Den andra attackmetoden är att kompromettera pipeline-verktyg, vilket gör det möjligt för angripare att ändra eller introducera skadlig kod. Källkoden för en applikation, som fungerar som dess ritning samt utvecklingsinfrastruktur och procedurer, kan göras offentlig via en komprometterad CI/CD-pipeline.

    Samtidigt byggs programmet (liksom fallet med SolarWinds). Dessutom är pipelinen kopplad till dussintals externa beroenden som kan användas för att komma åt och starta attacker, som Codecov-attacken.

  • Manipulering av integritetskoden

    Känslig data i kod, dålig kodkvalitet och säkerhetsproblem observerades ofta i många kunders miljöer. Inlämning av felaktig kod till källkodsdatabaser har erkänts som den tredje riskfaktorn. Detta påverkar säkerhetsställningen och artefaktkvaliteten.

Lösning för företagskodsignering

Få en lösning för alla dina behov av kodsignering och kryptografi för mjukvara med vår kodsigneringslösning.

Hur kan samdesign hjälpa till?

Kodsignering är en process för att bekräfta äktheten och originaliteten hos digital information, såsom en mjukvarukod. Den försäkrar användarna om att denna digitala information är giltig och fastställer upphovsmannens legitimitet.

Kodsignering säkerställer också att denna digitala information inte har ändrats eller återkallats efter att den giltigt signerades. Kodsignering kan garantera dubbel autentisering, förhindra attacker och till och med undvika namnrymdskonflikter när du delar källkod i hela SDLC:n.

Best Practices

Här är några bästa praxis för kodsignering för att garantera säkerheten för din applikationskod.

  • Säkra alla privata nycklar

    Förlust, stöld eller kompromettering av en privat nyckel för kodsignering utgör en allvarlig säkerhetsrisk. Det finns några enkla regler vi kan följa för att undvika risken:

    • Begränsa obehörig åtkomst till nycklarna.
    • Implementera fysisk säkerhetskontroll över nycklarna för att begränsa processen.
    • Säkra nycklar med kryptografiska hårdvaruartiklar.
  • Automatisera signeringsprocessen med Pipelines

    En centraliserad helhetsstrategi för kodsigneringsprocedurer samtidigt som säkerhetsföreskrifter upprätthålls är en del av det automatiserade kodsigneringsprocessUtan att sakta ner SDLC ansluter denna automatiseringsmetod till CI/CD-pipelines och använder detaljerad åtkomstkontroll.

  • Beskriv roller, ansvarsområden och rutiner för godkännande.
  • Integrering med befintliga miljöer och verktyg kan göra kodsignering snabb och enkel för de interna teamen.
  • Använda tidsstämplar för att registrera alla samdesignaktiviteter.

Slutsats

Er mjukvaruleveranskedja är invecklad, omfattande och sammankopplad, vilket gör den sårbar för attacker. Det har förekommit några förödande och små attacker tidigare, och framtiden kan bli mycket bättre. Angripare har använt olika attackvektorer för att rikta in sig på en specifik sida. Tillämpningen av kodsignering är en avgörande säkerhetshärdande teknik.

Kodsignering säkerställer att obehöriga parter inte manipulerar programvaran och att den slutgiltiga publicerade programvaran kommer från den ursprungliga utgivaren. Genom att följa vissa bästa praxis för kodsignering kan vi säkerställa att attacker från leveranskedjan inte längre hotar oss.

För mer information kan du kontakta oss info@encryptionconsulting.com