PDA

Zobacz pełną wersję : problem z zalogowaniem się do panelu



poirytowany
11-06-2014, 11:47
Witam mili Panstwo.
Na początku poinformuje iż jestem w tym ciemny jak tabaka w cieście.
Stawiałem kolejna stronę na joomli i od zaplecza instalowałem moduły szablonu itd.
Instalujac pluginy nagle przegladarka przestała działać a sesja wygasła i pojawił się problem z logowaniem do panelu.
Strona jak była tak jest bez zmian lecz problem z logowaniem do zaplecza.
Nadmienie tylko iż backup wykonałem z pomocą konsultanta ovh lecz to chyba za mało bo nie pomogło.
Opis który się pojawia przy próbie brzmi groźnie bo:
Fatal error: Call to a member function isAdmin() on a non-object in /home/homedecot/www/meble/Joomla3.2.0/plugins/authentication/cookie/cookie.php on line 53


Na chłopski rozum więc wchodze na serwer przez filezila aby zobaczyć czy może są tam jakies info, i odszukałem ów katalog.
A w nim.


$response->type = 'Cookie';

// Get cookie
$cookieName = JUserHelper::getShortHashedUserAgent();
$cookieValue = $this->app->input->cookie->get($cookieName);

if (!$cookieValue)
{
return;
}

$cookieArray = explode('.', $cookieValue);

// Check for valid cookie value
if (count($cookieArray) != 2)
{
// Destroy the cookie in the browser.
$this->app->input->cookie->set($cookieName, false, time() - 42000, $this->app->get('cookie_path', '/'), $this->app->get('cookie_domain'));
JLog::add('Invalid cookie detected.', JLog::WARNING, 'error');

return false;
}

// Filter series since we're going to use it in the query
$filter = new JFilterInput;
$series = $filter->clean($cookieArray[1], 'ALNUM');

// Remove expired tokens
$query = $this->db->getQuery(true)
->delete('#__user_keys')
->where($this->db->quoteName('time') . ' < ' . $this->db->quote(time()));
$this->db->setQuery($query)->execute();

// Find the matching record if it exists.
$query = $this->db->getQuery(true)
->select($this->db->quoteName(array('user_id', 'token', 'series', 'time')))
->from($this->db->quoteName('#__user_keys'))
->where($this->db->quoteName('series') . ' = ' . $this->db->quote($series))
->where($this->db->quoteName('uastring') . ' = ' . $this->db->quote($cookieName))
->order($this->db->quoteName('time') . ' DESC');
$results = $this->db->setQuery($query)->loadObjectList();

if (count($results) !== 1)
{
// Destroy the cookie in the browser.
$this->app->input->cookie->set($cookieName, false, time() - 42000, $this->app->get('cookie_path', '/'), $this->app->get('cookie_domain'));
$response->status = JAuthentication::STATUS_FAILURE;

return;
}

// We have a user with one cookie with a valid series and a corresponding record in the database.
else
{
$token = JUserHelper::hashPassword($cookieArray[0]);

if (!JUserHelper::verifyPassword($cookieArray[0], $results[0]->token))
{
// This is a real attack! Either the series was guessed correctly or a cookie was stolen and used twice (once by attacker and once by victim).
// Delete all tokens for this user!
$query = $this->db->getQuery(true)
->delete('#__user_keys')
->where($this->db->quoteName('user_id') . ' = ' . $this->db->quote($results[0]->user_id));
$this->db->setQuery($query)->execute();

// Destroy the cookie in the browser.
$this->app->input->cookie->set($cookieName, false, time() - 42000, $this->app->get('cookie_path', '/'), $this->app->get('cookie_domain'));

// Issue warning by email to user and/or admin?
JLog::add(JText::sprintf('PLG_AUTH_COOKIE_ERROR_LO G_LOGIN_FAILED', $results[0]->user_id), JLog::WARNING, 'security');
$response->status = JAuthentication::STATUS_FAILURE;

return false;
}




nie wiem co to!;) i coś tu jest nie tak wrzuciłem do tłumacza google i nie rozumiem nadal tego błędu bo z treści wynika iż pojawił się jakiś bląd.
Czuje że to błachostka bo nic wielkiego nie robiłem ale ta błachostka kładzie mnie na kolana.

Poproszę zatem o pomoc. Jestem do dyspozycji w każdej chwili w każdy możliwy sposób na forum maila lub telefon.

palyga007
11-06-2014, 23:51
Instalujac pluginy nagle przegladarka przestała działać a sesja wygasła i pojawił się problem z logowaniem do panelu
Jakie pluginy?
Nie instalowałeś jakiegoś pluginu z cookie w nazwie?
Jeśli tak to wejdź do bazy i go wyłącz (jak to zrobić opisano wielokrotnie na forum).