Konfigurace
- Konfigurace aplikace, frameworku, serveru nebo cloudu.
- Checklist pomáhá s ověřením konfigurace aplikace, jako je nastavení bezpečnostních HTTP hlaviček a další.
Architektura konfigurace
- Ověřte oddělení komponent s různou úrovní důvěryhodnosti pomocí dobře definovaných bezpečnostních kontrol, firewall pravidel, API gateways, reverzních proxy serverů, security groups v cloudu atp.
- Ověřte, zda se k nasazení binárních souborů používají binární podpisy, důvěryhodná připojení a ověřené endpointy.
- Ověřte, zda build pipeline upozorňuje na zastaralé nebo nezabezpečené komponenty a provádí příslušná opatření.
- Ověřte, zda build pipeline obsahuje automatický build a ověření bezpečného nasazení aplikace, zejména pokud je infrastruktura aplikace softwarově definována.
- Ověřte, zda nasazení aplikací dostatečně sandboxuje, kontejnerizuje a izoluje na síťové úrovni.
- Ověřte, zda aplikace nepoužívá nepodporované, nezabezpečené nebo zastaralé technologie na straně klienta, jako jsou NSAPI, Flash, Shockwave, ActiveX, Silverlight, NACL nebo Java applety.
Nezamýšlené zveřejnění zabezpečení
-
Může se stát, že dojde k úniku aplikačních dat vlivem nezamýšlené nebo chybné konfigurace.
-
Ověřte konfiguraci chybových hlášení webového nebo aplikačního serveru a frameworku tak, aby uživateli poskytovaly odpovědi, které nebudou odhalovat zabezpeční a jiné informace (stack traces, konfigurace…).
-
Ověřte, zda jsou debugging režimy a ladění zakázány.
-
Ověřte, zda HTTP hlavičky a jakákoli část HTTP odpovědi neodhaluje informace o verzi systémových komponent atp.
Bezpečenostní HTTP hlavičky
- Ověřte, zda každá HTTP odpověď obsahuje hlavičku
Content-Type
a bezpečnou znakovou sadu (UTF-8…). - Ověřte, zda všechny API odpovědi obsahují
Content-Disposition: attachment; filename=”api.json”
(nebo jiný vhodný název). - Ověřte, zda je k dispozici hlavička Content Security Policy (CSP), která zmírňuje dopad XSS a injection zranitelností.
- Ověřte, zda všechny odpovědi obsahují hlavičku
X-Content-Type-Options: nosniff
. - Ověřte, zda je ve všech odpovědích uvedena hlavička
Strict-Transport-Security
. - Ověřte, zda je zahrnuta vhodná hlavička
Referrer-Policy
(např.no-referrer
,same-origin
). - Ověřte, zda nelze obsah aplikace vložit na web třetí strany a že je embeddování povoleno pouze v případě potřeby pomocí hlaviček CSP (
frame-ancestors
) aX-Frame-Options
.
Validace HTTP požadavku
- Ověřte, zda server přijímá pouze HTTP metody používané aplikací / API, včetně
OPTIONS
, a zda loguje / upozorňuje na všechny požadavky, které nejsou platné pro kontext aplikace. - Ověřte, zda se
Origin
nepoužívá pro ověření nebo řízení přístupu, protože může být snadno zaměněn. - Ověřte, zda se v poli
Access-Control-Allow-Origin
používá seznam povolených domén a nepodporuje původnull
. - Ověřte, zda HTTP hlavičky přidané důvěryhodným proxy serverem nebo SSO jsou aplikací ověřovány.