Autor Zpráva
ondrakrajcik
Profil *
Zdravím,

napadla mě jedna otázka ohledně bezpečnosti. Když mám web a v hlavním adresáři mám nějaký ten soubour index.php, pak tam mám třeta adresář "images" a adresář "phpScripts".

Ve složce "phpScripts" mám svoje php skripty, které nechci aby si někdo mohl prohlížet. Je nějak možné, aby se k nim někdo nějak dostal a stáhl si je do počítače?

Pokud ano jak? Určitě na to bude nějaký program

Lze se proti tomu nějak chránit? jak? .htaccess?
Fisir
Profil
Reaguji na ondrakrajcika:
Pokud vše funguje tak, jak má, případný útočník se dostane jen k tomu, co tyto skripty vypíší, nikoli k jejich zdrojovému kódu. Pokud se však nějakým nedopatřením poškodí modul PHP (špatná konfigurace), bude možné skripty stáhnout jako klasické textové soubory, tedy zobrazit jejich zdrojový kód. Řešením by mohlo být vytvoření .htaccessu ve složce „phpScripts“ (mimochodem, obvykle je spolehlivější pojmenovávat složky a soubory bez diakritiky a malými písmeny) s tímto obsahem:
order deny, allow
deny from all
janbarasek
Profil
ondrakrajcik:
pro všechny případy tomu adresáři můžeš přes funkci chmod nastavit tak omezené práva, že se tam skoro nikdo nedostane. Otázkou pak ale zůstává, jak se k tomu dostaneš ty. :)
Joker
Profil
ondrakrajcik:
Je nějak možné, aby se k nim někdo nějak dostal a stáhl si je do počítače?
Musel by využít nějakou chybu a odstavit zpracování PHP, nebo se dostat k FTP (ale proti někomu, kdo má přístup na FTP, se prakticky chránit nelze).
Krátce by to šlo popsat termínem hack.

Lze se proti tomu nějak chránit? jak? .htaccess?
Asi nejbezpečnější způsob je PHP skripty umístit nad documentroot.
Tj. adresář phpScripts posunout výš, než kam je nasměrovaná ta doména (na FTP by byly třeba adresáře phpScripts a www, přičemž doména by byla nasměrovaná na adresář www).
Pak nebude vůbec možné se na ty skripty přes HTTP dostat (ostatní PHP skripty se k nim pořád dostanou přes souborový systém).

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0