Každý formulář, který nasadíte, je potenciální vstupní brána pro útočníky. Bezpečnost formulářů se nestane náhodou a nelze ji přeskočit. Jediný nezabezpečený formulář může vystavit jména, e-maily, telefonní čísla, platební údaje nebo hesla vašich návštěvníků komukoli, kdo je ochoten to zneužít.
Základy bezpečnosti formulářů pokrývají zásadní postupy, které chrání data uživatelů. Tento článek vysvětluje, jak vypadá zabezpečený formulář, proč každá vrstva ochrany záleží a jak jednotlivé části spolupracují, aby údaje vašich návštěvníků zůstaly chráněné.
Co se dozvíte: základní principy bezpečnosti formulářů, jak data formulářem procházejí, jaké útoky míří na nezabezpečené formuláře a kam zaměřit ochranu nejdřív.
Co je bezpečnost formulářů?
Bezpečnost formulářů je praxe navrhování a provozu formulářů tak, aby data uživatelů zůstala chráněná od okamžiku, kdy je někdo zadá, až po uložení a smazání. Zahrnuje několik vrstev: kód, který formulář zpracovává, spojení mezi návštěvníkem a serverem, pravidla o tom, jaká data sbíráte, a jak dlouho je uchováváte.
Zabezpečený formulář dělá tři věci:
- Validuje, co přichází. Kontroluje, že data jsou opravdu taková, jaká čekáte (e-mail má formát e-mailu, telefonní číslo obsahuje jen číslice a podobně). Zachytí tak náhodné chyby i záměrné útoky.
- Chrání data při přenosu. Používá šifrování, aby data putující z prohlížeče návštěvníka na váš server nemohl nikdo jiný přečíst ani zachytit.
- Ukládá data bezpečně. Chrání informace po uložení, dodržuje zákony o tom, kdo k nim smí mít přístup a jak dlouho se smějí uchovávat, a brání tomu, aby si neoprávněné osoby prohlížely odeslané údaje.
Bezpečnost formulářů není jediná funkce. Spojuje technické postupy, soulad s právními předpisy a provozní kázeň.
Proč na bezpečnosti formulářů záleží vaší značce
Jsou tři důvody, proč bezpečnost formulářů není k diskusi:
Důvěra návštěvníků a reputace značky
Když někdo vyplní formulář na vašem webu, svěřuje vám informace, které veřejně nesdílí. Pokud jsou tyto informace ukradeny nebo uniknou, ztratíte jejich důvěru i potenciální zákazníky. Únik dat má reputační cenu, ze které se těžko vzpamatovává. Lidé si pamatují, když značka nechrání jejich údaje.
Právní a regulatorní požadavky
Podle toho, kde se vaši návštěvníci nacházejí a jaké informace sbíráte, vám zákon může ukládat tato data chránit. GDPR (pro evropské návštěvníky), CCPA (pro obyvatele Kalifornie) a nesčetné další zákony o ochraně soukromí stanovují konkrétní bezpečnostní standardy. Porušení těchto pravidel může vést k pokutám, žalobám a právním sankcím.
Zabránění útočníkům, aby váš formulář použili jako zbraň
Nezabezpečený formulář není jen riziko krádeže dat. Útočníci ho mohou také použít k vložení škodlivého kódu, únosu relací návštěvníků, oklamání vaší databáze, aby provedla příkazy, nebo k zahlcení vaší schránky tisíci falešných odeslání. Každý typ útoku způsobuje jiné škody.
Jak data z formuláře procházejí vaším systémem
Pochopení toku vám pomůže vidět, kde bezpečnost záleží nejvíc. Takto to probíhá, když někdo formulář odešle:
- Návštěvník zadá data v prohlížeči. Píše do polí formuláře. V tuto chvíli jsou data jen na jeho zařízení.
- Návštěvník formulář odešle. Prohlížeč shromáždí všechna data a pošle je na váš server.
- Váš server je přijme. Zpracování formuláře data zkontroluje a rozhodne, co s nimi udělat.
- Data se uloží. Dostanou se do vaší databáze, e-mailu nebo jiného systému, kde odeslání uchováváte.
- Vy nebo někdo jiný je později získá. Členové týmu přistupují k odeslaným datům, aby odpověděli na dotazy, zpracovali objednávky nebo informace analyzovali.
- Nakonec se smažou. V určitém bodě by se data měla odstranit podle vašich zásad uchovávání dat.
Bezpečnostní hrozby se mohou objevit v kterémkoli kroku. Heslo návštěvníka může být zachyceno při přenosu internetem. Útočník může oklamat váš formulář, aby uložil škodlivý kód. Zaměstnanec s přístupem k odeslaným údajům může data zveřejnit. Nebo můžete uchovávat informace déle, než zákon dovoluje.
Hlavní vrstvy bezpečnosti formulářů
Zabezpečení přenosu (HTTPS a šifrování)
Když návštěvník formulář odešle, data putují internetem na váš server. Bez ochrany může kdokoli v síti vidět, co posílá. HTTPS (zabezpečená verze webového protokolu) tato data při přenosu šifruje, takže je může přečíst jen váš server. Proto musí každý formulář běžet na HTTPS, nikdy na obyčejném HTTP.
Validace vstupů
Váš formulář by měl zkontrolovat, že data dávají smysl, než s nimi cokoli udělá. E-mail má vypadat jako e-mail. Telefonní číslo má obsahovat jen číslice. Platební částka má být číslo, ne text. Tím zachytíte překlepy a zabráníte útočníkům, aby do formuláře posílali data navržená k tomu, aby způsobila problémy.
Autentizace a správa relací
Pokud je váš formulář svázaný s uživatelským účtem, musíte ověřit, že ten, kdo ho odesílá, je opravdu tím, za koho se vydává. To znamená kontrolovat jeho přihlášenou relaci, zajistit, že relace nevypršela ani nebyla unesena, a u citlivých akcí vyžadovat dodatečné ověření (například dvoufázové ověření).
Řízení přístupu k datům
Jakmile jsou data z formuláře uložená, měli by je vidět jen oprávnění lidé. Pokud máte kontaktní formulář, možná by k odeslaným zprávám měl mít přístup jen váš obchodní tým. Pokud máte formulář pro obnovení hesla, nikdo kromě člověka, který heslo obnovuje, by neměl vidět jeho nové heslo. Řízení přístupu určuje, kdo může odeslané formuláře zobrazit, upravit nebo smazat.
Soulad s předpisy a zásady uchovávání
Různé zákony stanovují pravidla o tom, jaká data smíte sbírat, jak je musíte chránit a jak dlouho je smíte uchovávat. Dodržování těchto zákonů je součástí bezpečnosti formulářů. Musíte vědět, které předpisy se na vaše formuláře vztahují, navrhnout formuláře tak, aby tyto požadavky splňovaly, a data smazat, když to zákon vyžaduje.
Běžné hrozby, které míří na formuláře
Pochopení útoků vám pomůže vidět, proč jednotlivé vrstvy ochrany existují.
Útoky typu man-in-the-middle
Útočník zachytí data putující mezi návštěvníkem a vaším serverem. Děje se to ve veřejných sítích WiFi nebo když někdo odposlouchává internetový provoz. Šifrování HTTPS tomu brání tím, že data učiní nečitelnými pro kohokoli kromě vašeho serveru.
Injekční útoky
Útočník vloží do pole formuláře škodlivý kód (například kód SQL nebo JavaScript). Pokud váš formulář tento vstup nevaliduje a nečistí, škodlivý kód se spustí uvnitř vašeho systému. Validace a sanitace vstupů tomu zabrání.
Krádež přihlašovacích údajů
Útočníci se snaží z formulářů ukrást hesla, klíče API nebo platební údaje. Mohou použít phishing (falešné formuláře podobné vašim), malware na zařízení návštěvníka nebo zachycení nešifrovaných dat. Více vrstev (HTTPS, validace, bezpečné ukládání) chrání proti různým úhlům tohoto útoku.
Spam a odeslání od botů
Útočníci (nebo jen automatické skripty) zaplavují váš formulář falešnými odesláními. To vám zabírá čas, plní databázi a může zkreslit vaši analytiku. Detekce botů a systémy CAPTCHA většině z toho zabrání.
Neoprávněný přístup k uloženým datům
I když data dorazí bezpečně a jsou uložena zabezpečeně, někdo se zlými úmysly se k nim může pokusit dostat. Může to být útočník, který se vloupe do vaší databáze, zaměstnanec, který by určitá odeslání neměl vidět, nebo někdo s fyzickým přístupem k vašemu serveru. Řízení přístupu a šifrování omezují škody, pokud se to stane.
Kde s bezpečností formulářů začít
Pokud formuláře tvoříte od základu, upřednostněte toto pořadí:
- Používejte HTTPS. Každý formulář musí běžet na zabezpečeném spojení. To není volitelné.
- Validujte a čistěte všechny vstupy. Kontrolujte, že data jsou taková, jaká čekáte, a před uložením odstraňte vše, co vypadá podezřele.
- Řiďte, kdo má přístup k odeslaným údajům. Přístup by měli mít jen lidé, kteří data potřebují vidět.
- Vězte, jaké zákony se vás týkají. Zjistěte, jestli se na vaše formuláře vztahuje GDPR, CCPA nebo jiné zákony o ochraně soukromí. Pokud ano, navrhněte formuláře tak, aby je splňovaly.
- Stanovte zásady uchovávání dat. Rozhodněte, jak dlouho budete odeslání uchovávat, a po uplynutí této doby je smažte.
Odtud přidávejte ochranu před boty, dvoufázové ověření, šifrování uložených dat a reportování souladu podle svých konkrétních potřeb.
Co WEMASY nabízí pro bezpečnost formulářů
Nástroj pro formuláře ve WEMASY je postavený na bezpečnosti jako výchozím bodu. Každý formulář na WEMASY běží na HTTPS. Přístup k odeslaným údajům řídíte přes uživatelská oprávnění. Platforma nabízí také volitelné funkce, jako je CAPTCHA pro ochranu před boty a e-mailová upozornění na nová odeslání.
Podrobnosti o tom, co je součástí vašeho tarifu a jak nastavit zabezpečení, najdete na ceníku.