Přeskočit obsah

A02:2025 Chybná bezpečnostní konfigurace (Security Misconfiguration) icon

Pozadí

Tato kategorie se oproti předchozímu vydání posunula z 5. místa na vyšší 2. pozici. U 100 % testovaných aplikací byla zjištěna nějaká forma chybné konfigurace, s průměrnou mírou výskytu 3,00 % a s více než 719 tisíci výskyty slabin klasifikovaných podle Common Weakness Enumeration (CWE) v této rizikové kategorii. S rostoucím rozšířením vysoce konfigurovatelného softwaru není překvapivé, že tato kategorie v žebříčku stoupá. Mezi významné zjištěné slabiny patří zejména CWE-16: Configuration a CWE-611: Improper Restriction of XML External Entity Reference (XXE).

Tabulka skóre

Počet mapovaných CWE Max míra výskytu Průměrná míra výskytu Max pokrytí Průměrné pokrytí Průměrná vážená zneužitelnost Průměrný vážený dopad Celkový počet výskytů Celkový počet CVE
16 27,70 % 3,00 % 100,00 % 52,35 % 7,96 3,97 719 084 1 375

Popis

Chybná bezpečnostní konfigurace znamená, že systém, aplikace nebo cloudová služba jsou nakonfigurovány nesprávně z hlediska bezpečnosti, což vede ke vzniku zranitelností.

Aplikace je zranitelná, pokud například:

  • Chybí odpovídající bezpečnostní hardening v některé části aplikačního stacku nebo jsou nesprávně nakonfigurována oprávnění cloudových služeb.
  • Jsou povoleny nebo nainstalovány nepotřebné funkce, například nevyužívané porty, služby, stránky, účty, testovací frameworky nebo oprávnění.
  • Výchozí účty a jejich hesla zůstávají aktivní a nezměněná.
  • Chybí centrální konfigurace pro zachytávání příliš informativních chybových zpráv. Zpracování chyb odhaluje uživatelům výpisy zásobníku (stack trace) nebo jiné příliš informativní chybové zprávy.
  • U aktualizovaných systémů jsou nejnovější bezpečnostní funkce deaktivovány nebo nejsou nakonfigurovány bezpečně.
  • Přílišné upřednostňování zpětné kompatibility vedoucí k nezabezpečené konfiguraci.
  • Bezpečnostní nastavení aplikačních serverů, aplikačních frameworků (např. Struts, Spring, ASP.NET), knihoven, databází apod. nejsou nastavena na bezpečné hodnoty.
  • Server neodesílá bezpečnostní hlavičky nebo direktivy, nebo nejsou nastaveny na bezpečné hodnoty.

Bez koordinovaného a opakovatelného procesu bezpečnostního hardeningu konfigurace aplikací jsou systémy vystaveny zvýšenému riziku.

Jak tomu zabránit

Měly by být implementovány bezpečné instalační procesy, včetně:

  • Opakovatelný proces hardeningu umožňující rychlé a snadné nasazení dalšího prostředí s odpovídajícím zabezpečením. Vývojové, testovací (QA) a produkční prostředí by měla být konfigurována shodně, přičemž v každém prostředí by se měly používat odlišné přihlašovací údaje. Tento proces by měl být automatizován, aby se minimalizovalo úsilí potřebné k nastavení nového bezpečného prostředí.
  • Minimální platforma bez zbytečných funkcí, komponent, dokumentace nebo ukázek. Odstraňte nebo neinstalujte nepoužívané funkce a frameworky.
  • Revize a aktualizace konfigurací v návaznosti na všechna bezpečnostní upozornění, aktualizace a záplaty jako součást procesu správy záplat (viz A03:2025 Selhání dodavatelského řetězce softwaru). Kontrola oprávnění cloudových úložišť (např. oprávnění S3 bucketů).
  • Segmentovanou architekturu aplikace, která zajišťuje účinné a bezpečné oddělení komponent nebo tenantů pomocí segmentace, kontejnerizace nebo cloudových bezpečnostních skupin (ACL).
  • Zasílání bezpečnostních direktiv klientům, např. bezpečnostních hlaviček (Security Headers).
  • Automatizovaný proces ověřování účinnosti konfigurací a nastavení ve všech prostředích.
  • Proaktivní zavedení centrální konfigurace pro zachytávání příliš informativních chybových hlášení jako záložního opatření.
  • Pokud tyto kontroly nejsou automatizované, měly by být alespoň jednou ročně prováděny manuálně.
  • Využívání federace identit, krátkodobě platných přihlašovacích údajů nebo mechanismů řízení přístupu založených na rolích poskytovaných podkladovou platformou namísto ukládání statických klíčů nebo tajných údajů (secrets) do zdrojového kódu, konfiguračních souborů nebo CI/CD pipeline.

Příklady scénářů útoků

Scénář #1: Na aplikačním serveru zůstaly nasazeny ukázkové aplikace, které nebyly z produkčního prostředí odstraněny. Tyto aplikace obsahují známé bezpečnostní chyby, které mohou útočníci zneužít ke kompromitaci serveru. Pokud je jednou z těchto aplikací administrační konzole a výchozí účty nebyly změněny, útočník se přihlásí pomocí výchozích přihlašovacích údajů a převezme kontrolu.

Scénář #2: Na serveru není zakázán výpis adresářů. Útočník zjistí, že může zobrazit seznam adresářů, nalezne a stáhne zkompilované třídy Java, které následně dekompiluje a analyzuje. Na základě toho odhalí závažnou chybu v řízení přístupu aplikace.

Scénář #3: Konfigurace aplikačního serveru umožňuje zobrazování detailních chybových informací, například výpisů zásobníku (stack trace). Tím může dojít ke zpřístupnění citlivých informací nebo vnitřních nedostatků, například verzí použitých komponent, o nichž je známo, že jsou zranitelné.

Scénář #4: Poskytovatel cloudových služeb (CSP) má ve výchozím nastavení povolena oprávnění ke sdílení otevřená do Internetu. To umožňuje přístup k citlivým datům uloženým v cloudovém úložišti.

Reference

Seznam mapovaných CWE