Omezení přístupu k některým souborům pomocí .htaccess
Omezení přístupu k souborům s konkrétní koncovkou doporučujeme využívat typicky u adresářů, do kterých lze zapisovat prostřednictvím Vašich stránek nebo jejich administrace (např. upload, images, ...).
V těchto případech jde o nezbytnou součást zabezpečení, která by neměla chybět u žádného takového adresáře, do kterého lze prostřednictvím stránek zapsat nový soubor. Tato funkčnost je jednou z nejčastěji zneužívaných slabin útočníky, kteří tak mohou (místo např. očekávaného obrázku) uploadovat vlastní PHP skript. Díky tomu je mu umožněna libovolná činnost na serveru (rozesílání spamu, napadání serveru, provádění DoS útoků na jiné servery, aj.), ale také tímto získává plný přístup ke všem souborům na Vašem FTP (případně i DB).
Přestože koncovky .htm nebo .html soubory nejsou implicitně zpracovávány PHP parserem, doporučujeme i jejich omezení z důvodu možné zneužitelnosti k phishingovým útokům.
Jak v adresáři zamezit volání souborů dle přípony
V prvé řadě se přesvědčte v Administraci, že máte aktivní soubory .htaccess - Služby → PHP → Aktivace .htaccess
V adresáři, v kterém chcete omezení zřídit (např. images), vložte do souboru s názvem .htaccess
následující obsah
<FilesMatch \.(php|php5|htm|html)>
Require all denied
</FilesMatch>
Seznam přípon v prvním řádku (případně celý regulární výraz) můžete upravit dle potřeb. Podotýkáme, že soubory s touto koncovkou nebude možné zobrazit prohlížečem na přímo (z jiného PHP skriptu na serveru přístupné nadále budou).
Pokud dojde k prolomení bezpečnosti Vašich stránek (děje se velmi často zejména u OpenSource projektů) a útočníkovi se podaří nahrát do adresáře vlastní PHP skript, server odmítne tento soubor spustit.
Funkčnost pravidla snadno otestujete vložením jednoduchého souboru test.php
s libovolným obsahem a v prohlížeči zavoláte
http://www.example.com/images/test.php
(záleží na umístění adresáře na Vašem FTP), server by měl odpovědět chybou 403. Pokud by vrátil 404, pravděpodobně zadáváte v URL chybně cestu.