Underhåll programvaran under hela dess användbara livslängd
Prioritera sårbarheter, uppgraderingar, konfigurationsdrift och avveckling. Följ en underhållsåtgärd fram till en verifierad korrigering i produktion.
Publicerad av TaigaSå skriver vi
Det här lär du dig
- Skilj löpande underhåll från incidenthantering.
- Prioritera arbetet utifrån exponering, utnyttjande och påverkan på tjänsten.
- Verifiera att en underhållskorrigering når tjänsten som körs.
Ge underhållet en tjänsteansvarig
Användbar programvara fortsätter att förändras efter sin första release. Beroenden får korrigeringar. Stödet för körmiljöer upphör. Certifikat löper ut. Verksamhetsregler ändras. Behörigheter som gavs vid installationen kan finnas kvar längre än avsett.
Håll ett register över tjänster, ansvariga, driftsatta versioner, beroenden och datum för supportens slut. Ta med både planerat arbete och arbete som nya fynd utlöser. Avsätt kapacitet för båda. En underhållsbacklog utan ansvarig skyddar inte tjänsten.
Skilj underhåll från omedelbar incidenthantering. En exponerad autentiseringsuppgift eller tecken på ett pågående intrång kan kräva begränsande åtgärder innan en vanlig utvecklingscykel är klar. Hänvisa sådana fall till processen för säkerhetsincidenter.
Prioritera den faktiska exponeringen
Allvarlighetsgrad beskriver möjliga konsekvenser. Prioriteten beror också på utnyttjande, åtkomlighet, data, befintliga kontroller och kostnaden för att vänta. En intern tjänst med lite trafik kan ändå innehålla viktiga autentiseringsuppgifter.
CISA:s katalog Known Exploited Vulnerabilities samlar sårbarheter som det finns belägg för att angripare har utnyttjat. Använd katalogen som ett underlag för prioritering. Att en sårbarhet saknas där bevisar inte att den är ofarlig. CISA:s katalog.
Betrakta dessa fiktiva fynd. Tidsgränserna gäller organisationen i exemplet. De är inte allmänna tidsfrister.
| Fynd | Kända förhållanden | Lämplig första åtgärd |
|---|---|---|
| Sårbarhet i ett beroende | Känt utnyttjande; den berörda routen är publikt åtkomlig | Eskalera, kontrollera exponeringen och planera omedelbar begränsning och korrigering |
| Autentiseringsuppgift i en commit | Uppgiften är fortfarande aktiv; åtkomsten till repositoryt är osäker | Involvera säkerhetsfunktionen; återkalla eller rotera uppgiften genom den godkända processen |
| Stödet för körmiljön upphör | Stödet upphör om 60 dagar; det finns ingen testad uppgradering | Utse ansvarig för uppgraderingen och en period för kompatibilitetstester |
| Konfigurationsavvikelser i infrastrukturen | En manuell ändring öppnade en oavsiktlig nätverksväg | Bekräfta ändringen, begränsa vägen med behöriga åtgärder och rätta konfigurationen |
Gör inte automatiskt varje fynd till en stor uppgradering. Välj en korrigering som stöds, granska kompatibiliteten och testa det beteende som är viktigt. Dokumentera tillfälliga begränsande åtgärder med ansvarig och villkor för när de upphör.
Följ korrigeringen hela vägen till produktion
Använd en spårbar följd: fynd, beslut, ändring, granskning, driftsättning och verifiering. Dokumentera identifieraren för den artefakt som produktionen faktiskt använder. Skanna den relevanta artefakten eller miljön igen efter ändringen.
I ett fiktivt exempel med ett sårbart PDF-paket mergar teamet en uppgradering klockan 10:00. Produktionen kör fortfarande gårdagens avbildning klockan 11:00. Korrigeringen i repositoryt är klar. Åtgärden i produktion är ofullständig.
Verifiera både paketversionen och PDF-genereringen efter driftsättningen. En sårbarhetsskanning kan inte fastställa att exporten fortfarande fungerar. Ett funktionstest kan inte fastställa att den sårbara komponenten har tagits bort.
NIST:s SSDF omfattar fortlöpande identifiering och hantering av sårbarheter. Använd metoderna under hela livscykeln, även för programvara som får få önskemål om nya funktioner. NIST SSDF.
Använd automatisering med synliga gränser
Taiga Maintaining skannar länkade repositoryn och kan omvandla fynd till initiativ för att åtgärda dem. Kontrollera den senaste lyckade skanningen, den berörda versionen och ändringen som följer. En repositoryskanning fastställer inte åtkomlighet i produktion. Maintaining.
Automatisering kan minska upprepat arbete, men tjänsten behöver fortfarande ansvar för driftsättning och verifiering. Håll releasebeslut, nödåtkomst och undantagens sluttider uttryckliga.
Underhåll omfattar också avveckling. Ta bort oanvända router, autentiseringsuppgifter, integrationer och infrastruktur genom en kontrollerad process. Kontrollera krav på lagring och beroende tjänster före borttagning. Avveckla tjänsten som körs och fördela eventuella kvarstående uppgifter för lagring eller revision.
Nästa lektion går igenom kontinuerlig sårbarhetsskanning och åtgärder i detalj.
Gör övningen
Använd de fyra fiktiva fynden i lektionen. Ange ansvarig, första åtgärd, verifieringsmetod och tid för uppföljning för varje fynd. Förklara vilken ny observation som skulle ändra din prioritering.
Ladda ned övningsblad (Markdown)Kontrollera din förståelse
Källor och vidare läsning
- NIST: Secure Software Development Framework ↗
- CISA: Known Exploited Vulnerabilities Catalog ↗
- Taiga docs: Maintaining ↗
Relaterad läsning från Taiga
Om du avmarkerar valet raderas alla framsteg som sparats i den här webbläsaren.
Framstegen stannar i webbläsaren. Inget konto, ingen spårning.