Bezpečnost webových aplikací (skriptování na straně serveru, šifrování, hashování)
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
PAD Programování a databáze
Téma 24
Školní rok 2017/2018
1/2
Jan Švábík, V4D
Bezpečnost webových aplikací (skriptování na
straně serveru, šifrování, hashování)
Bezpečnost webových aplikací
Webové aplikace a data uživatelů na serveru je samozřejmě nutné nějakým způsobem zabezpečit.
Webovým aplikacím jako takovým (jejich očekávané funkčnosti a stabilitě) hrozí nejvíce obvykle
uživatelé, kteří aplikaci nepoužívají správným (programem očekávaným) způsobem a následně
lidé, kteří se snaží využít právě bezpečnostních děr v programu (např. pomocí SQL injection).
Data uživatelů často bývají uložena v databázi. I ta je nutné zabezpečit, zejména pak uživatelská
hesla. K jejich zabezpečení se používá hashování.
Skriptování na straně serveru
Nejčastěji je využíváno právě pro běh webových aplikací. Protože je kód vykonáván na straně
serveru, nemá k němu klient přístup (jako např. u JavaScriptu) a je tak zajištěna integrita kódu,
zatímco při skriptování na straně klienta je možné různé kontroly zadaných hodnot obejít. Je-li
kontrola prováděna na straně serveru, obejít ji nelze. Veškeré zabezpečení je nutné tedy zajistit na
straně serveru (kontrola zadané hodnoty – číslo, string, enum, …), kontrola maximální délky aj…).
Zároveň je na serveru nutné zajistit ošetření dalších možných problémů, jako je například možnost
provedení tzv. SQL injection – odeslání SQL kódu webovým formulářem na server, který jej
namísto toho, aby s ním pracoval jako s textem, zpracuje. Data v databázi tak nejsou chráněná před
neoprávněným čtením či například jejich nenávratným odstraněním.