Většina bezpečnostních incidentů v malých a středních projektech nevzniká kvůli sofistikovaným útokům, ale kvůli jednoduchým mezerám: zapomenutému administrátorskému účtu, zastaralému pluginu, omylem zveřejněnému tajnému klíči. Znalost základů pomáhá majiteli klást správné otázky a ověřit, že na ně dostal odpověď.
Přístup se ověřuje na serveru
Skrytí tlačítka v rozhraní nic nechrání. Každá akce - zobrazení, změna či smazání dat - se musí ověřit na serveru: kdo je uživatel a smí to udělat? V systémech s databází přidávají pravidla přístupu na úrovni dat další vrstvu ochrany, aby ani chyba v kódu neodhalila cizí data.
S hesly a tajnými klíči se zachází opatrně
Hesla uživatelů se nikdy neukládají v čitelné podobě; zavedené autentizační služby či knihovny to dělají správně. API klíče, hesla k databázi a tokeny jsou v chráněné konfiguraci na serveru - nikdy v kódu webu, který se dostane do prohlížeče, ani ve sdílených dokumentech nebo chatech. Administrátoři používají silná jedinečná hesla a tam, kde je to možné, dvoufázové ověření.
Vše se průběžně aktualizuje
Frameworky, knihovny, pluginy i operační systém serveru pravidelně dostávají bezpečnostní opravy. Projekt, který se rok neaktualizoval, nejspíš obsahuje známé zranitelnosti. Plánujte pravidelné aktualizace jako součást údržby, ne jako nouzové opatření.
Data se přenášejí šifrovaně
Celý web běží přes HTTPS, takže data mezi uživatelem a serverem nelze cestou přečíst ani změnit. Cookies se session informacemi jsou označené jako zabezpečené a nedostupné pro skripty. Citlivé soubory neleží ve veřejně přístupných složkách.
Vstupům se nevěří
Vše, co přichází zvenčí - formuláře, nahrané soubory, parametry v odkazech, zprávy z partnerských systémů -, se ověřuje na serveru. Limity velikosti a typu nahrávaných souborů a ochrana formulářů před automatickým spamem předejdou mnoha běžným problémům.
Problémy jsou vidět
Záznamy důležitých akcí, upozornění na opakovaná neúspěšná přihlášení a pravidelná kontrola toho, kdo má administrátorská práva, umožní problém zachytit včas. Spolu s otestovanými zálohami promění potenciální katastrofu ve zvládnutelný incident.
Ve zkratce
Ověřujte přístup na serveru, chraňte hesla a tajné klíče, udržujte software aktuální, používejte všude HTTPS, ověřujte všechny vstupy a sledujte záznamy. Tyto základy předejdou většině skutečných incidentů.