Autor Zpráva
had
Profil *
ahoj,

mám malý problém. nedávno jsem spustil nový stránky do provozu a začala mě napadat ip adresa 66.249.xxx.xxx s těmito hláškami. Prostě jsem ji v .htaccess bloknul (denny) a po pár dnech přestala.

Když skončila, objevila se další, pro změnu velmi podobná (obě ze stejného místa na zemi), a tak jsem zakázal už celý rozsah 66.249.xxx.xxx

Proč mi to pořád vypisuje tuhle chybovou hlášku?

[Thu Jan 22 15:32:25 2009] [error] [client 66.249.xxx.xxx] PHP Warning: session_start() [<a href='function.session-start'>function.session-start</a>]: The session id contains illegal characters, valid characters are a-z, A-Z, 0-9 and '-,' in /home/vsftp/_server_/_server_/conn.php on line 3

...na řádku č. 3 v souboru conn.php je session_start().
U jiných IP adres tenhle problém není, jenom u tohohle rozsahu 66.249.xxx.xxx.

Proč to tak je? Jsou to roboti, co mě napadá server? Jakým způsobem můžou vyvolat tuhle hlášku? Já myslel, že PHP funkce session_start() si dokáže vygenerovat náhodný řetezce sama a bezpečně... nebo to je nějaký druh útoku (třeba session_fixation?)
bohyn
Profil
had
session_start() si bere SID (Session ID) z cookie, pokud cookie neexistuje pak teprve vytvori novy SID. Pravdepodbne se jednalo o nejaky utok a podvrzene SID.
had
Profil *
co se proti tomu nechá dělat? samozřejmě krom blokace...?
po přihlášení mám ochranu session_regenerate_id(), ale to bych musel dát ještě před session_start() a to přece nejde, ne? nebo znovu přegenerovat cookie před session_start() ? to by mohlo pomoct, ne?

díky
AM
Profil *
Myslím, že ti nic nehrozí, možná se to pokouší útočit na nějakou slabinu v zabezpečení serveru, ale kdybys ji tam měl, asi už bys to poznal. Můžeš udělat třeba tohle:
if (ereg('[^a-zA-Z0-9\\-]', @$_COOKIE['PHPSESSID'])){
//nejaky osetrujici kod, muzes treba smazat phpsessid nebo cely skript ukoncit normalne die();
}
v praxi jsem to nezkoušel, ale je to tak jednoduché, že na tom snad nemá co nefungovat.
Jen pro vysvětlení, podmínka ověří, jestli proměnná PHPSESSID neobsahuje jiné znaky, než číslice, písmena a pomlčku (což je obsahem chybové hlášky, kterou jsi poslal).
had
Profil *
díky kluci. ;) poučen pro příští redakční 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: