Bezpečnost aplikací
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.
prozrazení kvůli duplicitním heslům:
– salt je uložen jako řetězec s heslem u uživatele,
– heslo je uloženo se salt a zakódováno
– mysql_query("SELECT * FROM uzivatele WHERE login =
'$_POST[login]' AND heslo_sha1 = SHA1(CONCAT('$_POST[heslo]',
salt))");
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 43
Shared Hosting
Hosting pro víc PHP aplikací (patří různým uživatelům).
Sdílené prostředí jednoho webového serveru.
Všechny soubory musí být čitelné pro web server...
To znamená: všechny soubory jsou čitelné pro všechny
uživatele.
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 44
Shared Hosting: řešení v PHP
Řešení tohoto problému na úrovni PHP je architekturálně
nekorektní, ale často používané.
PHP řeší tento problém dvěma konfiguračními direktivami:
– open_basedir – omezuje přístup k souborům na určité
adresáře.
• Relativně efektivní.
• Nekomplikované.
– safe_mode – omezuje přístup k souborům na vlastníka
běžícího skriptu.
• Pomalý a složitý přístup.
• Mnoho omezení pro PHP aplikace.
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 45
Security Through Obscurity
Další techniky zabezpečení:
– Vypnout PHP identifikační hlavičky (ini direktiva)
expose_php=off
– Vypnout Apache identifikační hlavičky (ini direktiva)
ServerSignature=off
– Nezveřejňovat <?php phpinfo(); ?>
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 46
Nejčastější bezpečnostní chyby webových aplikací
Cross Site Scripting (XSS)
Injection Flaws (SQL injection)
Malicious File Execution
Insecure Direct Object Reference
Cross Site Request Forgery (CSRF)
Information Leakage and Improper Error Handling