Přeskočit na hlavní obsah

Autorizace

  • Proces ověření, zda má dotyčný dostatečná oprávnění pro vykonání dané akce.
  • Checklist pomáhá s ověřením autorizačního mechanismu aplikace jako jsou access controls a jejich architektura.

Architektura access controls

  • Ověřte, zda důvěryhodné body (access control gateway, servery, serverless funkce…) vynucují řízení přístupu. Nikdy nevynucujte řízení přístupu na klientovi.
  • Ověřte, zda je zvolené řešení řízení přístupu dostatečně flexibilní, aby splňovalo aplikační požadavky.
  • Ověřte dodržování principu nejmenších oprávnění ve funkcích, datových souborech, URL, řadičích, službách a dalších. Tzn. ochrana proti elevation of privilege.
  • Ověřte, zda aplikace používá pro přístup k chráněným datům a prostředkům jediný a dobře ověřený mechanismus řízení přístupu. Všechny požadavky musí procházet tímto jediným mechanismem.
  • Ověřte použití řízení přístupu založeného na atributech nebo funkcích, přičemž kód kontroluje oprávnění uživatele pro danou funkci / datovou položku, a nikoli pouze jeho roli.

Access control

  • Seznam oprávnění daného subjektu a mechanismus jeho ověření oproti danému objektu nebo akci, kterou se pokouší vykonat.

  • Ověřte vynucování pravidel řízení přístupu ke službě na serveru i klientovi.

  • Ověřte, že není možná neoprávněná manipulace s daty a jejich atributy nebo s access control pravidly.

  • Ověřte existenci principu nejmenšího oprávnění.

  • Ověřte existenci deny-by-default zásady.

    • Všichni začínají s minimálním oprávněním, dokud jim není výslovně přidělen vyšší přístup.
  • Ověřte, zda kontroly řízení přístupu selhávají bezpečně včetně případů, kdy dojde k výjimce.

  • Ověřte, zda jsou citlivá data a API rozhraní chráněna před neoprávněným vytvářením, čtením, aktualizací a mazáním dat.

  • Ověřte použití silného anti-CSRF mechanismu.

  • Ověřte použití vícefaktorového ověřování.

  • Ověřte, zda je zakázáno procházení adresářů.

  • Ověřte, zda nejsou zpřístupněny soubory nebo adresáře s metadaty, jako jsou .git, .svn, atp.

Kam dál

Zranitelnosti

Cheat sheety