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.
Omezit povolených jmen souborů pro upload.
Vkládat kód mohou jenom důvěryhodní uživatelé (ne stroje).
Nepoužívat funkci eval() s neošetřeným vstupem.
Nevkládat (include) nedůvěryhodné soubory.
Ošetřovat (escape) všechny příkazy pro shel .
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 35
Chybová hlášení
Vypisování PHP chyb v produkčním nasazení:
– obtěžuje uživatele
– může prozradit důležité informace:
• cesty k souborům a skriptům,
• neinicializované proměnné,
• parametry podávané funkcím.
Vypnutí chybových hlášení znemožní nalezení chyb v
kódu.
Potřeba řešení...
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 36
Chybová hlášení: jedno z řešení
Vypnout vypisování chyb na obrazovku:
ini_set(“display_errors”, FALSE);
Zapnout log chyb na disku:
ini_set(“log_errors”, TRUE);
do souboru:
ini_set(“error_log”, “/var/log/php.log”);
nebo do syslog-u:
ini_set(“error_log”, “syslog”);
To samé se dá udělat v php.ini
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 37
Bezpečnost souborů
PHP aplikace obvykle mají soubory obsahující:
– konfigurace
– knihovny pomocných funkcí
– slovníky.
Tyto soubory musí webserver číst, mohou být viditelné z
webu.
Je-li tomu tak, uživatelé je můžou stáhnout a číst.
department of computer
science
and engineering
X36TW1 – Tvorba webových aplikací 1
Přednáška 9 / Strana 38
Zabezpečení souborů
Do kořenového adresáře aplikace nedávejte žádné
soubovy, které tam nemají být.
Když soubor nemá žádný výstup (knihovna, konfigurace),
dejte mu příponu PHP
– to znamená, že ho pri pokusu o zobrazení z webu bude
parsovat PHP parser
Používejte .htaccess na řízení přístupu k souborům a
adresářům
<Files ~ "\.tpl$">
Order allow,deny
Deny from all
</Files>