Autor | Zpráva | ||
---|---|---|---|
Majkelju Profil |
#1 · Zasláno: 13. 12. 2013, 09:49:58
Zdravím,
mám na webu složku protected, ve které mám soubor .htaccess s parametrem deny from all. Pokud do prohlížeče zadám mujweb.cz/admin.php, tak to funguje, stránka vyhodí chybu 404. Jenže když napíšu mujweb.cz?admin, tak není pro kohokoliv problém se do administrace dostat. V souboru index.php mám totiž odkaz, který předává GET parametr a následně používám příkaz if(isset($_GET['admin'])) include './protected/admin.php'; |
||
Joker Profil |
#2 · Zasláno: 13. 12. 2013, 10:06:13
Majkelju:
To není nedokonalý .htaccess, ale bezpečnostní díra v PHP skriptu. „Jak na to, abych měl soubor admin.php chráněný i pokud nepřihlášený uživatel zadá do URL GET parametr?“ Nemít tam ten skript. Jinak moc nevím co poradit. To ani není chyba, když tak ten skript funguje záměrně. Jestli se administrace nemá zobrazovat každému kdo za stránku dopíše ?admin , proč tam je skript, který administraci zobrazí každému kdo za stránku dopíše ?admin ?
|
||
Kubo2 Profil |
#3 · Zasláno: 13. 12. 2013, 10:39:52
Majkelju:
Predpokladám že admin sa má zobraziť iba prihlásenému používateľovi, takže musíš overiť aj či je prihlásený: if(isset($_GET['admin']) && true === $_SESSION['user_je_prihlaseny']) include "./protected/admin.php"; |
||
Majkelju Profil |
#4 · Zasláno: 13. 12. 2013, 12:52:12
Kubo2: Děkuju moc, to mě mohlo napadnout! :) Takhle mi to stačí, už vím, jak dál :)
|
||
Časová prodleva: 10 let
|
0