[pLog-svn] r3818 - in plugins/trunk/badbehavior: . bad-behavior

mark at devel.lifetype.net mark at devel.lifetype.net
Fri Jul 28 02:50:44 GMT 2006


Author: mark
Date: 2006-07-28 02:50:42 +0000 (Fri, 28 Jul 2006)
New Revision: 3818

Modified:
   plugins/trunk/badbehavior/bad-behavior/core.inc.php
   plugins/trunk/badbehavior/bad-behavior/housekeeping.inc.php
   plugins/trunk/badbehavior/bad-behavior/post.inc.php
   plugins/trunk/badbehavior/bad-behavior/version.inc.php
   plugins/trunk/badbehavior/readme.txt
Log:
Upgrade bad-behavior to 2.0.4

Modified: plugins/trunk/badbehavior/bad-behavior/core.inc.php
===================================================================
--- plugins/trunk/badbehavior/bad-behavior/core.inc.php	2006-07-27 12:50:52 UTC (rev 3817)
+++ plugins/trunk/badbehavior/bad-behavior/core.inc.php	2006-07-28 02:50:42 UTC (rev 3818)
@@ -185,7 +185,7 @@
 		// More intensive screening applies to POST requests
 		if (!strcasecmp('POST', $package['request_method'])) {
 			require_once(BB2_CORE . "/post.inc.php");
-			bb2_test($settings, $package, bb2_post($package));
+			bb2_test($settings, $package, bb2_post($settings, $package));
 		}
 	}
 

Modified: plugins/trunk/badbehavior/bad-behavior/housekeeping.inc.php
===================================================================
--- plugins/trunk/badbehavior/bad-behavior/housekeeping.inc.php	2006-07-27 12:50:52 UTC (rev 3817)
+++ plugins/trunk/badbehavior/bad-behavior/housekeeping.inc.php	2006-07-28 02:50:42 UTC (rev 3818)
@@ -7,7 +7,7 @@
 	bb2_db_query($query);
 
 	// Waste a bunch more of the spammer's time, sometimes.
-	if (rand(1,25) == 1) {
+	if (rand(1,1000) == 1) {
 		$query = "OPTIMIZE TABLE `" . $settings['log_table'] . "`";
 		bb2_db_query($query);
 	}

Modified: plugins/trunk/badbehavior/bad-behavior/post.inc.php
===================================================================
--- plugins/trunk/badbehavior/bad-behavior/post.inc.php	2006-07-27 12:50:52 UTC (rev 3817)
+++ plugins/trunk/badbehavior/bad-behavior/post.inc.php	2006-07-28 02:50:42 UTC (rev 3818)
@@ -1,10 +1,8 @@
 <?php if (!defined('BB2_CORE')) die('I said no cheating!');
 
 // All tests which apply specifically to POST requests
-function bb2_post($package)
+function bb2_post($settings, $package)
 {
-	global $settings;
-	
 	// MovableType needs specialized screening
 	if (stripos($package['headers_mixed']['User-Agent'], "MovableType") !== FALSE) {
 		if (strcmp($package['headers_mixed']['Range'], "bytes=0-99999")) {
@@ -31,16 +29,8 @@
 	if (isset($_POST[BB2_COOKIE])) {
 		$screener2 = explode(" ", $_POST[BB2_COOKIE]);
 	}
+	$screener = max($screener1[0], $screener2[0]);
 
-	if (isset($screener1) && isset($screener2))
-		$screener = max($screener1[0], $screener2[0]);
-	else if (isset($screener1) && !isset($screener2))
-		$screener = $screener1[0];
-	else if (!isset($screener1) && isset($screener2))
-		$screener = $screener2[0];
-	else
-		$screener = 0;
-
 	if ($screener > 0) {
 		// Posting too fast? 5 sec
 		// FIXME: even 5 sec is too intrusive
@@ -49,21 +39,22 @@
 		// Posting too slow? 48 hr
 		if ($screener + 172800 < time())
 			return "b40c8ddc";
-	}
 
-	// Screen by IP address
-	$ip = ip2long($package['ip']);
-	$ip_screener = ip2long($screener[1]);
-//	FIXME: This is b0rked, but why?
-//	if ($ip && $ip_screener && abs($ip_screener - $ip) > 256)
-//		return "c1fa729b";
+		// Screen by IP address
+		$ip = ip2long($package['ip']);
+		$ip_screener = ip2long($screener[1]);
+//		FIXME: This is b0rked, but why?
+//		if ($ip && $ip_screener && abs($ip_screener - $ip) > 256)
+//			return "c1fa729b";
 
-	// Screen for user agent changes
-	// User connected previously with blank user agent
-	$q = bb2_db_query("SELECT COUNT(*) FROM " . $settings['log_table'] . " WHERE (`ip` = '" . $package['ip'] . "' OR `ip` = '" . $screener[1] . "') AND `user_agent` = '' AND `date` > DATE_SUB('" . bb2_db_date() . "', INTERVAL 1 MINUTE)");
-	if ($q !== FALSE)
-		return "799165c2";
+		// Screen for user agent changes
+		// User connected previously with blank user agent
+		$q = bb2_db_query("SELECT `ip` FROM " . $settings['log_table'] . " WHERE (`ip` = '" . $package['ip'] . "' OR `ip` = '" . $screener[1] . "') AND `user_agent` = '' AND `date` > DATE_SUB('" . bb2_db_date() . "', INTERVAL 1 MINUTE)");
+		if ($q !== FALSE && $q != NULL)
+			return "799165c2";
 
+	}
+
 	return false;
 }
 

Modified: plugins/trunk/badbehavior/bad-behavior/version.inc.php
===================================================================
--- plugins/trunk/badbehavior/bad-behavior/version.inc.php	2006-07-27 12:50:52 UTC (rev 3817)
+++ plugins/trunk/badbehavior/bad-behavior/version.inc.php	2006-07-28 02:50:42 UTC (rev 3818)
@@ -1,3 +1,3 @@
 <?php if (!defined('BB2_CWD')) die("I said no cheating!");
-define('BB2_VERSION', "2.0.3");
+define('BB2_VERSION', "2.0.4");
 ?>

Modified: plugins/trunk/badbehavior/readme.txt
===================================================================
--- plugins/trunk/badbehavior/readme.txt	2006-07-27 12:50:52 UTC (rev 3817)
+++ plugins/trunk/badbehavior/readme.txt	2006-07-28 02:50:42 UTC (rev 3818)
@@ -22,4 +22,7 @@
 
 You also can use the followings method to get some useful information:
 1. Use {$badbehavior->showBB2Timer()} to get the badbehavior timer
-2. Use {$badbehavior->showBB2Status()} to get the badbehavior status
\ No newline at end of file
+2. Use {$badbehavior->showBB2Status()} to get the badbehavior status
+
+To Do:
+1. Add an admin panel to review the blocked spams
\ No newline at end of file



More information about the pLog-svn mailing list