Проверка наличие security-ключа в сессии
engine/modules/security/Security.class.php
Соответственно тут валиться
Гуглил по запросу «livestreet Hacking attemp», тем много, все читать лень, но как понимаю возможно проблемы связанные.
p.s.
'Hacking attemp!' != 'Hacking attempt!'
/**
* Проверяет наличие security-ключа в сессии
*
* @param null|string $sCode Код для проверки, если нет то берется из реквеста
* @return bool
*/
public function ValidateSessionKey($sCode=null) {
if(!$sCode) $sCode=getRequest('security_ls_key');
return ($sCode==$this->GenerateSessionKey()); //TRUE никогда не возвратит?
}
Соответственно тут валиться
/**
* Производит валидацию отправки формы/запроса от пользователя, позволяет избежать атаки CSRF
*/
public function ValidateSendForm() {
if (!($this->ValidateSessionKey())) {
die("Hacking attemp!");
}
}
Гуглил по запросу «livestreet Hacking attemp», тем много, все читать лень, но как понимаю возможно проблемы связанные.
p.s.
'Hacking attemp!' != 'Hacking attempt!'
19 комментариев
1) При валидации формы вызывается метод ValidateSessionKey для проверки security_ls_key
2) Параметр security_ls_key передается в форме и получаем его методом getRequest
3) далее делаем return ($sCode==$this->GenerateSessionKey());
тоесть наш переданный security_ls_key сравниваем с тем что возвратит GenerateSessionKey().
Наш переданный security_ls_key разумеется будет отличаться от того что заново сгененирует GenerateSessionKey(). Тоесть return ($sCode==$this->GenerateSessionKey()); всегда будет возвращать FALSE. Тоесть валидация нашего security_ls_key никогда не пройдет.
GenerateSessionKey всегда должен возвращать тот же кэш, тк Session_GetId возвращает тот же id.
возвратит.
заново? бред.
clip2net.com/s/2tAop
может проблема в этом?
все разные ключи как и должно быть.