Added logging of faulty login attempts, fixes #1321
Signed-off-by: Roman Schmerold (BNoiZe) <bnoize@froxlor.org>
This commit is contained in:
@@ -78,19 +78,22 @@ if ($page == 'log'
|
|||||||
$_action = $lng['admin']['customer'];
|
$_action = $lng['admin']['customer'];
|
||||||
break;
|
break;
|
||||||
case RES_ACTION:
|
case RES_ACTION:
|
||||||
$_action = 'Reseller';
|
$_action = $lng['logger']['reseller'];
|
||||||
break;
|
break;
|
||||||
case ADM_ACTION:
|
case ADM_ACTION:
|
||||||
$_action = 'Administrator';
|
$_action = $lng['logger']['admin'];
|
||||||
break;
|
break;
|
||||||
case CRON_ACTION:
|
case CRON_ACTION:
|
||||||
$_action = 'Cronjob';
|
$_action = $lng['logger']['cron'];
|
||||||
|
break;
|
||||||
|
case LOGIN_ACTION:
|
||||||
|
$_action = $lng['logger']['login'];
|
||||||
break;
|
break;
|
||||||
case LOG_ERROR:
|
case LOG_ERROR:
|
||||||
$_action = 'Internal';
|
$_action = $lng['logger']['intern'];
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$_action = 'Unknown';
|
$_action = $lng['logger']['unknown'];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -100,6 +100,10 @@ if ($action == 'login') {
|
|||||||
$uid = 'adminid';
|
$uid = 'adminid';
|
||||||
$adminsession = '1';
|
$adminsession = '1';
|
||||||
} else {
|
} else {
|
||||||
|
// Log failed login
|
||||||
|
$rstlog = FroxlorLogger::getInstanceOf(array('loginname' => $_SERVER['REMOTE_ADDR']), $settings);
|
||||||
|
$rstlog->logAction(LOGIN_ACTION, LOG_WARNING, "Unknown user '" . $loginname . "' tried to login.");
|
||||||
|
|
||||||
redirectTo('index.php', Array('showmessage' => '2'), true);
|
redirectTo('index.php', Array('showmessage' => '2'), true);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
@@ -131,6 +135,11 @@ if ($action == 'login') {
|
|||||||
WHERE `$uid`= :uid"
|
WHERE `$uid`= :uid"
|
||||||
);
|
);
|
||||||
Database::pexecute($stmt, array("lastlogin_fail" => time(), "uid" => $userinfo[$uid]));
|
Database::pexecute($stmt, array("lastlogin_fail" => time(), "uid" => $userinfo[$uid]));
|
||||||
|
|
||||||
|
// Log failed login
|
||||||
|
$rstlog = FroxlorLogger::getInstanceOf(array('loginname' => $_SERVER['REMOTE_ADDR']), $settings);
|
||||||
|
$rstlog->logAction(LOGIN_ACTION, LOG_WARNING, "User '" . $loginname . "' tried to login with wrong password.");
|
||||||
|
|
||||||
unset($userinfo);
|
unset($userinfo);
|
||||||
redirectTo('index.php', Array('showmessage' => '2'), true);
|
redirectTo('index.php', Array('showmessage' => '2'), true);
|
||||||
exit;
|
exit;
|
||||||
|
|||||||
@@ -25,5 +25,7 @@ if(!defined('ADM_ACTION'))
|
|||||||
define('ADM_ACTION', '30');
|
define('ADM_ACTION', '30');
|
||||||
if(!defined('CRON_ACTION'))
|
if(!defined('CRON_ACTION'))
|
||||||
define('CRON_ACTION', '40');
|
define('CRON_ACTION', '40');
|
||||||
|
if(!defined('LOGIN_ACTION'))
|
||||||
|
define('LOGIN_ACTION', '50');
|
||||||
if(!defined('LOG_ERROR'))
|
if(!defined('LOG_ERROR'))
|
||||||
define('LOG_ERROR', '99');
|
define('LOG_ERROR', '99');
|
||||||
|
|||||||
@@ -1779,3 +1779,11 @@ $lng['admin']['templates']['SERVER_IP'] = 'Replaces the default server ip-addres
|
|||||||
$lng['admin']['templates']['SERVER_PORT'] = 'Replaces the default server port';
|
$lng['admin']['templates']['SERVER_PORT'] = 'Replaces the default server port';
|
||||||
$lng['admin']['templates']['DOMAINNAME'] = 'Replaces the customers standard-subdomain (can be empty if none is generated)';
|
$lng['admin']['templates']['DOMAINNAME'] = 'Replaces the customers standard-subdomain (can be empty if none is generated)';
|
||||||
$lng['admin']['show_news_feed'] = 'Show news-feed on admin-dashboard';
|
$lng['admin']['show_news_feed'] = 'Show news-feed on admin-dashboard';
|
||||||
|
|
||||||
|
// Added in Froxlor 0.9.32
|
||||||
|
$lng['logger']['reseller'] = "Reseller";
|
||||||
|
$lng['logger']['admin'] = "Administrator";
|
||||||
|
$lng['logger']['cron'] = "Cronjob";
|
||||||
|
$lng['logger']['login'] = "Login";
|
||||||
|
$lng['logger']['intern'] = "Internal";
|
||||||
|
$lng['logger']['unknown'] = "Unknown";
|
||||||
|
|||||||
@@ -1505,3 +1505,11 @@ $lng['admin']['templates']['SERVER_IP'] = 'Wird mit der standard System IP-Adres
|
|||||||
$lng['admin']['templates']['SERVER_PORT'] = 'Wird mit dem standard Port ersetzt';
|
$lng['admin']['templates']['SERVER_PORT'] = 'Wird mit dem standard Port ersetzt';
|
||||||
$lng['admin']['templates']['DOMAINNAME'] = 'Wird mit der Standardsubdomain des Kunden ersetzt (kann leer sein, wenn keine erstellt werden soll)';
|
$lng['admin']['templates']['DOMAINNAME'] = 'Wird mit der Standardsubdomain des Kunden ersetzt (kann leer sein, wenn keine erstellt werden soll)';
|
||||||
$lng['admin']['show_news_feed'] = 'Zeige News-Feed im Admin-Dashboard';
|
$lng['admin']['show_news_feed'] = 'Zeige News-Feed im Admin-Dashboard';
|
||||||
|
|
||||||
|
// Added in Froxlor 0.9.32
|
||||||
|
$lng['logger']['reseller'] = "Reseller";
|
||||||
|
$lng['logger']['admin'] = "Administrator";
|
||||||
|
$lng['logger']['cron'] = "Cronjob";
|
||||||
|
$lng['logger']['login'] = "Login";
|
||||||
|
$lng['logger']['intern'] = "Intern";
|
||||||
|
$lng['logger']['unknown'] = "Unbekannt";
|
||||||
|
|||||||
Reference in New Issue
Block a user