Report s dvaceti nálezy působí na první přečtení hůř, než jaká je skutečnost. Většina položek nehoří a část z nich je na seznamu proto, aby o nich někdo věděl, ne proto, že by se měly řešit tento týden.
Tento text je návod, jak nálezy seřadit a rozhodnout, co udělat hned, co za měsíc a co nikdy.
Závažnost není totéž co priorita
Report řadí nálezy podle závažnosti. Ta vyjadřuje, co by se stalo, kdyby někdo problém využil.
Priorita je něco jiného. Určují ji tři údaje:
- Dopad. Co se stane, když k tomu dojde.
- Dostupnost. Jak snadné je problému využít. Nález, u kterého stačí změnit číslo v adrese, je něco jiného než nález vyžadující specializované nástroje a přístup do sítě.
- Náročnost opravy. Půl dne, nebo tři týdny.
Nález s vysokým dopadem, který lze snadno využít a opravit za půl dne, má být první. Nález s vysokým dopadem, který je obtížné využít a jehož oprava trvá tři týdny, může počkat, i když je v reportu výš.
Čtyři vlny
Vlna 1: Do 48 hodin
Sem patří výhradně to, co splňuje obě podmínky současně: kdokoli může problém využít bez zvláštních dovedností a výsledkem je přístup k cizím datům nebo penězům.
Typicky:
- zobrazení cizích záznamů změnou hodnoty v adrese
- administrace bez skutečného přihlášení
- soubory dostupné přes přímý odkaz bez ověření
- přístupové klíče nebo hesla umístěná v kódu
Tyto věci se neplánují do sprintu. Řeší se okamžitě, protože po celou dobu, kdy zůstávají otevřené, je může někdo využít. Zpravidla jde o hodiny až jeden den práce na položku.
Vlna 2: Do dvou týdnů
Sem patří věci s vysokým dopadem, které vyžadují buď více práce, nebo více znalostí na straně útočníka:
- ověřování částek a plateb na straně serveru
- kontrola nahrávaných souborů
- zavedení zaznamenávání událostí
- oddělení rolí uživatelů a správců
- ošetření vstupů, které aplikace posílá do jazykového modelu
Vlna 2 se plánuje jako běžná práce, ale nesmí se opakovaně odsouvat. Praktické opatření: nastavte si datum a napište ho do kalendáře, ne jen do seznamu úkolů.
Vlna 3: Do tří měsíců
Sem patří to, co má reálný, ale ne bezprostřední dopad:
- lhůty pro mazání dat a funkce výmazu
- zálohy a ověření, že je lze obnovit
- oddělení testovacího a ostrého prostředí
- převedení účtů na firmu
- základní dokumentace
Poslední dvě položky se odkládají nejčastěji, protože nejsou vidět. Zároveň se nejvíce prodraží, když se stane něco nečekaného.
Vlna 4: Vědomě nikdy
Ano, i to je legitimní rozhodnutí a je lepší ho udělat nahlas.
Nález, jehož oprava je dražší než škoda, kterou by způsobil, a jehož dopad firma unese, se nemusí opravovat. Podmínkou je, že to někdo zaznamená: co jsme neopravili, proč a kdy to znovu posoudíme.
Rozdíl mezi „rozhodli jsme se to neřešit“ a „nedostali jsme se k tomu“ je zásadní. První je řízení rizika. Druhé je odkládání, které se jednou bude vysvětlovat.
Kdo to opraví
Máte tři možnosti a každá má své místo.
Autor aplikace. U nálezů z první a druhé vlny je zpravidla nejlevnější a nejrychlejší, protože zná strukturu aplikace. Je tu ale riziko: pokud chybu udělal proto, že o daném principu nevěděl, oprava může být neúplná. Řešením je nechat ji překontrolovat.
Externí vývojář. Je vhodný tehdy, když autor nemá kapacitu nebo už ve firmě není. Počítejte s časem na seznámení s aplikací.
Přepis místo oprav. Přichází v úvahu, když se nálezy nakupí do jednoho vzorce: základ neunese to, co po něm chcete. Poznáte to podle toho, že oprava jednoho místa pokaždé rozbije jiné nebo že se odhad nákladů na opravy blíží ceně nového řešení.
Kontrola po opravě
Na poslední krok se často zapomíná. Opravený nález je potřeba ověřit, a to ne otázkou „Opravil jsi to?“, ale zopakováním postupu, kterým jste ho odhalili.
U nálezů z první vlny to zpravidla zvládnete sami, protože je lze ověřit bez technických znalostí. Zkuste znovu změnit číslo v adrese. Zkuste se dostat do administrace bez přihlášení. Když to už nejde, je oprava tohoto nálezu hotová.
Jednoduchá tabulka, kterou si můžete vyplnit
| Nález | Dopad (1–3) | Dostupnost (1–3) | Náročnost ve dnech | Vlna | Kdo | Termín |
|---|
Seřaďte nálezy podle součinu dopadu a dostupnosti sestupně. Nálezy se stejným součinem pak seřaďte podle náročnosti vzestupně. Tím získáte pořadí, ve kterém odstraníte nejvíce rizika za nejméně práce.
