Weitesgehend richtig . Leider kann man nicht alle Hackversuche automatisch feststellen. Eine der Kernideen war, dass alle Logins aufgezeichnet werden, sodass man im Zweifelsfall auch manuell nachsehen kann wenn etwas nicht stimmt.
Läuft das Tool unabhängig von deinem Server?
Hier muss ich ein wenig weiter ausholen. Natürlich könnte man ein Skript lokal auf seinem Server installieren welches alle logins loggt. Hier würde jedoch jede Seite ihr eigenes ding bauen, welches im Endeffekt unüberschaubar wird. Der Vorteil von loginlog ist, dass alles zentral gespeichert und ausgewertet wird. Alle Websiten die loginlog verwenden übertragen die logindaten an den Account des Users bei uns. Vorteilhaft ist hierbei die zentrale Übersicht über alle Accounts, die ständige Weiterentwicklung der Filter sowie müssen Filter nur an einer stelle konfiguriert werden. Auch der Urlaubsmodus (temporäre Sperrung aller Accounts) muss nur einmal aktiviert werden. Die Software läuft also auf meinem Server, jedoch wird selbst bei einem Ausfalls meines Servers der Websitebetrieb nicht behindert.
Was versprichst du dir davon, oder anders gefragt - welche Gegenleistung erwartest du dafür?
Meine Server haben Kapazitäten die genutzt werden wollen
Könntest du das auch als Modul für gängige CMS fertigen (Typo3, Joomla, Drupal?)
Wird kommen. Joomla,typo3 sind schon in Arbeit, in Drupal muss ich mich noch einarbeiten.
Beim Einbauen kann ich gerne helfen. Am beispiel für phpBB kann man sehen, dass es selbst mit Log und Fehlerbehandlung nur ein paar Zeilen sind, welche für fast alle Php-Systeme direkt übernommen werden können.
Code:
/*LOGINLOG:START*/
/* IF YOU HAVE A CUSTOM ERRORPAGE ENTER IT HERE, BUT YOU CAN ALWAYS USE OUR DEFAULT */
define('LOGINLOG_REDIRECT','http://www.loginlog.com/pages/partner_block');
/* ENTER YOUR DEVELOPER TOKEN HERE */
define('LOGINLOG_DEVTOKEN','@ENTER YOUR DEVTOKEN HERE !@');
/* CONTACT API */
$fp = fopen('http://www.loginlog.com/apis1/login/ok/'.sha1($login['user_row']['user_email']).'/'.urlencode($_SERVER['REMOTE_ADDR']).'/'.base64_encode($_SERVER['HTTP_USER_AGENT']).'/'.LOGINLOG_DEVTOKEN, 'r');
$response = array('code' =>trim(fgets($fp)),'data' => trim(fgets($fp)) );
fclose($fp);
if($response['code'] == '200'){ /*CHECK FOR ERROR*/
switch ($response['data']) {
case 'block':redirect(LOGINLOG_REDIRECT);/*REDIRECT TO INFORMATION PAGE*/exit();break;
case 'warn':message('This login was flagged by loginlog.com');/* DISPLAY WARNING */break;
case 'ok':/* DO NOTHING */break;
default:add_log('critical', 'LOG_LOGINLOG_BAD_RESPONSEDATA: '.$response['data']);break;
}
}else{
add_log('critical', 'LOG_LOGINLOG_ERROR: '.$response['data']);
}
/*LOGINLOG:END */