// todo [rb10-botfilter] delete all honeypot related things? honeypot_request_log // Dit is een honeypotlink voor bots. Het is een onzichtbare link die mensen nooit zullen volgen. // formaat: hhonhhon/account_code/campaign_code/listconfig_code/member_code require_once('required.php'); require_once('required_buffer.php'); // haal de codes uit de url $codes = EventUtil::extractVarsFromPath($_SERVER['PATH_INFO'], array( 'account' => 1, 'campaign' => 2, 'listconfig' => 3, 'member' => 4 )); //print_r($codes); //error_log(print_r($codes,1)); //error_log(print_r($_GET,1)); // geen fouten in de codes? if (!in_array(false, $codes)) { // schrijf naar mysql //error_log(__FILE__); // Stel een hash samen van headers en link info. Dit doen we hetzelfde bij het vastleggen van de click row // (in res/inc/classes/EventUtil.php). Bij het verwerken van de clicks kunnen we aan de hash zien of het // om een bot gaat, en de clicks vervolgens negeren. //if ($codes['account'] == 'sh8urxti7y') { // verzamel headers // 22-6-21: omdat UA vaak wisselt doen we dit niet meer $headers = ''; /* $headers_readable = ''; $headers_wanted = [ 'User-Agent' ]; foreach (getallheaders() as $name => $value) { //error_log($name . ': ' . $value); $headers_readable .= $name . ': ' . $value . "\n"; if (in_array($name, $headers_wanted)) { $headers .= trim($name . $value); } } $headers = preg_replace('/\s/', '', $headers); */ // voeg hieraan toe: account, list, campaign, member $id = $codes['account'] . $codes['listconfig'] . $codes['campaign'] . $codes['member']; //error_log($headers); //error_log($id); // md5 is snel en goed genoeg $hash = md5($headers . $id); //error_log($hash); // eventueel een type $type = $_GET['type']; $sql = "INSERT INTO honeypot_request_log (`date`, account, campaign, listconfig, member, headers, hash, type, ip, uri) VALUES ( NOW(), '" . db_escape($codes['account']) . "', '" . db_escape($codes['campaign']) . "', '" . db_escape($codes['listconfig']) . "', '" . db_escape($codes['member']) . "', '" . db_escape($headers_readable) . "', '" . db_escape($hash) . "', '" . db_escape($type) . "', '" . db_escape($_SERVER['REMOTE_ADDR']) . "', '" . db_escape($_SERVER['REQUEST_URI']) . "' )"; db_query($sql); if (db_errno()) error_log(db_error($sql)); //} } else { //error_log(__FILE__ . ': geen correcte codes: ' . $_SERVER['REQUEST_URI']); } // we sturen door $sites = [ 'https://www.example.nl/', 'https://www.example.net/', 'https://www.example.com/', 'https://www.example.org/' ]; //print $sites[array_rand($sites)]; Util::redirect($sites[array_rand($sites)], 1); ?>
No news today.