<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bad Behavior / Bad Behaviour &#187; Bad Behavior</title>
	<atom:link href="http://bad-behavior.ioerror.us/category/bad-behavior/feed/" rel="self" type="application/rss+xml" />
	<link>http://bad-behavior.ioerror.us</link>
	<description>The Web&#039;s premier link spam killer.</description>
	<lastBuildDate>Wed, 16 May 2012 15:16:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Bad Behavior 2.2.6 and 2.0.48</title>
		<link>http://bad-behavior.ioerror.us/2012/05/16/bad-behavior-2-2-6-and-2-0-48/</link>
		<comments>http://bad-behavior.ioerror.us/2012/05/16/bad-behavior-2-2-6-and-2-0-48/#comments</comments>
		<pubDate>Wed, 16 May 2012 15:16:47 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1463</guid>
		<description><![CDATA[Bad Behavior 2.2.6 and 2.0.48 have been released. This update is a security update for WordPress users and affected users should update as soon as possible. Please note: The 2.0 series of Bad Behavior is receiving limited updates, including unblocks, bug fixes and security fixes only. Users who have not yet updated to the 2.2 [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.2.6 and 2.0.48 have been released. This update is a <strong>security</strong> update for <strong>WordPress</strong> users and affected users should update as soon as possible.</p>
<p>Please note: The 2.0 series of Bad Behavior is receiving limited updates, including unblocks, bug fixes and security fixes only. Users who have not yet updated to the 2.2 series should plan to update as soon as possible. Support for the 2.0 series will end June 30, 2013.</p>
<h3>Who Should Update?</h3>
<p>WordPress users should update to prevent cross-site scripting (XSS) attacks targeted against the blog administrator(s). Users of other platforms are not affected by this issue, but port maintainers may wish to take a moment to check their ports for similar issues.</p>
<h3>Download</h3>
<p><a href="http://bad-behavior.ioerror.us/download/">Download Bad Behavior now</a>.</p>
<h3>What&#8217;s New?</h3>
<p>Changes since <a href="http://bad-behavior.ioerror.us/2012/05/13/bad-behavior-2-2-5-and-2-0-47/">2.2.5 and 2.0.47</a>:</p>
<ul>
<li>Due to a <a href="https://bugs.php.net/bug.php?id=44928">change</a> in the way PCRE works, input validation code added to the previous release to guard against cross-site scripting attacks failed to work properly on PHP versions higher than 5.2.6. This issue has been fixed.</li>
</ul>
<h3>Support</h3>
<p>Bad Behavior still needs your support. If you haven&#8217;t donated recently, or at all, <a href="http://bad-behavior.ioerror.us/donate/"><strong>donate today</strong></a> to ensure that I can keep going in the fight against our mutual enemies, the spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/05/16/bad-behavior-2-2-6-and-2-0-48/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bad Behavior 2.2.5 and 2.0.47</title>
		<link>http://bad-behavior.ioerror.us/2012/05/13/bad-behavior-2-2-5-and-2-0-47/</link>
		<comments>http://bad-behavior.ioerror.us/2012/05/13/bad-behavior-2-2-5-and-2-0-47/#comments</comments>
		<pubDate>Sun, 13 May 2012 16:50:51 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1455</guid>
		<description><![CDATA[Bad Behavior 2.2.5 and 2.0.47 have been released. This update is a security update for WordPress users and affected users should update as soon as possible. Note that due to the security validation used in this release, the WordPress system requirements have changed. Bad Behavior 2.2 now requires at least WordPress 3.1 or higher; Bad [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.2.5 and 2.0.47 have been released. This update is a <strong>security</strong> update for <strong>WordPress</strong> users and affected users should update as soon as possible.</p>
<p>Note that due to the security validation used in this release, the WordPress system requirements have changed. Bad Behavior 2.2 now requires at least WordPress 3.1 or higher; Bad Behavior 2.0 requires at least WordPress 2.9 or higher.</p>
<p>Please note: The 2.0 series of Bad Behavior is receiving limited updates, including unblocks, bug fixes and security fixes only. Users who have not yet updated to the 2.2 series should plan to update as soon as possible. Support for the 2.0 series will end June 30, 2013.</p>
<h3>Who Should Update?</h3>
<p>WordPress users should update to prevent cross-site scripting (XSS) attacks targeted against the blog administrator(s). Users of other platforms are not affected by this issue, but port maintainers may wish to take a moment to check their ports for similar issues.</p>
<h3>Download</h3>
<p><a href="http://bad-behavior.ioerror.us/download/">Download Bad Behavior now</a>.</p>
<h3>What&#8217;s New?</h3>
<p>Changes since <a href="http://bad-behavior.ioerror.us/2012/05/03/bad-behavior-2-2-4/">2.2.4 and 2.0.46</a>:</p>
<ul>
<li>Several XSS vulnerabilities were found by a third party and disclosed on a security web site a few days ago. Since I was never notified directly prior to the disclosure, it took longer for me to respond than it normally would have. These vulnerabilities have been fixed through the addition of sanitization and input and output validation. Thanks to <a href="http://coveredwebservices.com/">Mark Jaquith</a> who provided a patch partially addressing the issues.</li>
</ul>
<h3>Support</h3>
<p>Bad Behavior still needs your support. If you haven&#8217;t donated recently, or at all, <a href="http://bad-behavior.ioerror.us/donate/"><strong>donate today</strong></a> to ensure that I can keep going in the fight against our mutual enemies, the spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/05/13/bad-behavior-2-2-5-and-2-0-47/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bad Behavior 2.2.4 and 2.0.46</title>
		<link>http://bad-behavior.ioerror.us/2012/05/03/bad-behavior-2-2-4/</link>
		<comments>http://bad-behavior.ioerror.us/2012/05/03/bad-behavior-2-2-4/#comments</comments>
		<pubDate>Thu, 03 May 2012 20:25:45 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[cookie]]></category>
		<category><![CDATA[EU]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1438</guid>
		<description><![CDATA[Bad Behavior 2.2.4 and 2.0.46 have been released. This update is exclusively for users with sites located in or targeting the European Union. Port maintainers should implement the new option provided by this release as soon as possible. Please note: The 2.0 series of Bad Behavior is receiving limited updates, including unblocks, bug fixes and [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.2.4 and 2.0.46 have been released. This update is exclusively for users with sites located in or targeting the European Union.</p>
<p>Port maintainers should implement the new option provided by this release as soon as possible.</p>
<p>Please note: The 2.0 series of Bad Behavior is receiving limited updates, including unblocks, bug fixes and security fixes only. Users who have not yet updated to the 2.2 series should plan to update as soon as possible. Support for the 2.0 series will end June 30, 2013.</p>
<h3>Who Should Update?</h3>
<p>As you may be aware, as of the 26th May 2012 all web sites in the European Union or targeting people in the EU must comply with draconian new regulations that require web site operators to gain consent prior to setting most cookies on users&#8217; computers. Bad Behavior uses a session cookie named <code>bb2_screener_</code> to ensure the security of your site and each visitor&#8217;s session.</p>
<p>After reviewing the new regulations and <a href="http://www.ico.gov.uk/news/latest_news/2011/~/media/documents/library/Privacy_and_electronic/Practical_application/guidance_on_the_new_cookies_regulations.ashx">ICO guidance on implementing the regulations</a> I believe that Bad Behavior&#8217;s cookie is exempt from the regulation because it is a site security cookie meant to help comply with the <a href="http://www.ico.gov.uk/for_organisations/data_protection/the_guide/principle_7.aspx">seventh data protection principle</a>.</p>
<p>The regulations provide for two exemptions, the second of which is:</p>
<blockquote><p>(b) where such storage or access is strictly necessary for the provision of an information society service requested by the subscriber or user.</p></blockquote>
<p>In part, the ICO guidance reads:</p>
<blockquote><p>The term &#8216;strictly necessary&#8217; &#8230; will also include what is required to comply with any other legislation the person using the cookie might be subject to, for example, the security requirements of the seventh data protection principle.</p></blockquote>
<p>It is not clear at this time whether the regulation will be interpreted the same way outside the UK. This situation is still evolving as the deadline approaches, and I am still monitoring it. Please keep in mind that although Bad Behavior&#8217;s cookie may be exempt from this regulation, you should still disclose its presence in your list of cookies.</p>
<h3>Download</h3>
<p><a href="http://bad-behavior.ioerror.us/download/">Download Bad Behavior now</a>.</p>
<h3>What&#8217;s New?</h3>
<p>Changes since <a href="http://bad-behavior.ioerror.us/2012/04/02/bad-behavior-2-2-3/">2.2.3</a> and <a href="http://bad-behavior.ioerror.us/2011/10/10/bad-behavior-2-0-45/">2.0.45</a>:</p>
<p>For those who believe that Bad Behavior&#8217;s security cookie may not be exempt from the regulation, a new option <code>eu_cookie</code> is now available as an interim measure. Setting this option disables Bad Behavior&#8217;s use of cookies entirely. (When cookies are disabled, Bad Behavior falls back to a JavaScript security screener which performs the same function.) In a future release, integration options will be provided to allow for Bad Behavior to query your host platform and discover whether the user has consented to receiving cookies.</p>
<p>The new <code>eu_cookie</code> option can be set in <code>settings.ini</code> for platforms which use it, or the administrative page for platforms which provide such a page (e.g. WordPress).</p>
<p>Port maintainers who provide an administrative page should implement this option as soon as possible to help users to comply with these new regulations.</p>
<h3>Support</h3>
<p>Bad Behavior still needs your support. If you haven&#8217;t donated recently, or at all, <a href="http://bad-behavior.ioerror.us/donate/"><strong>donate today</strong></a> to ensure that I can keep going in the fight against our mutual enemies, the spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/05/03/bad-behavior-2-2-4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Bad Behavior 2.2.3</title>
		<link>http://bad-behavior.ioerror.us/2012/04/02/bad-behavior-2-2-3/</link>
		<comments>http://bad-behavior.ioerror.us/2012/04/02/bad-behavior-2-2-3/#comments</comments>
		<pubDate>Mon, 02 Apr 2012 18:57:17 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1427</guid>
		<description><![CDATA[Bad Behavior 2.2.3 has been released. This is a strongly recommended update for WordPress users; it is optional for users of other platforms. Port maintainers should take note of an additional callback function which needs to be implemented in your ports prior to releasing this version. Who Should Update? WordPress users should update to take [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.2.3 has been released. This is a strongly recommended update for WordPress users; it is optional for users of other platforms.</p>
<p>Port maintainers should take note of an additional callback function which needs to be implemented in your ports prior to releasing this version.</p>
<h3>Who Should Update?</h3>
<p>WordPress users should update to take advantage of bug fixes and a new feature in this release. Users of other platforms do not need to update.</p>
<p>Users who have not yet updated to the 2.2 series should plan to update as soon as possible. Support for the 2.0 series will end June 30, 2013.</p>
<h3>Download</h3>
<p><a href="http://bad-behavior.ioerror.us/download/">Download Bad Behavior now</a>.</p>
<h3>What&#8217;s New?</h3>
<p>Changes since <a href="http://bad-behavior.ioerror.us/2012/02/22/bad-behavior-2-2-2/">2.2.2</a>:</p>
<ul>
<li><strong>WordPress</strong>: The WordPress automatic update system destroys a user-provided whitelist.ini file, making it difficult for WordPress users to maintain a whitelist. For this reason, Bad Behavior no longer uses whitelist.ini on WordPress. Instead, a new administrative page is now available where users can manage their whitelists within WordPress.</li>
<li><strong>WordPress</strong>: Some code which was present for backward compatibility with very old, no longer maintained versions of WordPress has been removed.</li>
<li><strong>WordPress</strong>: A bug causing cookies to be malformed in an uncommon server configuration has been fixed.</li>
<li>The code which checks whether a form submission originated from the same web site now considers hostnames beginning with &#8220;www.&#8221; and without &#8220;www.&#8221; to be equivalent.</li>
</ul>
<p>Port maintainers should note that a new function bb2_read_whitelist() should be implemented in order to read the whitelist on any host platform. This will allow you to implement your own administrative pages if you desire (saving the whitelist is up to you). For backward compatibility, Bad Behavior will by default load the whitelist.ini file if you haven&#8217;t implemented this function, but this will be removed in a future release. See the default implementation in bad-behavior-generic.php and contact me if you have any questions.</p>
<h3>Support</h3>
<p>If you didn&#8217;t read my appeal last month including the <a href="http://bad-behavior.ioerror.us/2012/03/04/bad-behavior-needs-you-version-3-roadmap/">roadmap for Bad Behavior 3.0</a>, please check it out. While many people stepped up and donated last month, and I appreciate even the smallest donations, I did not receive nearly enough donations for me to put significant time into the project.</p>
<p>Bad Behavior still needs your support. If you haven&#8217;t donated recently, or at all, <a href="http://bad-behavior.ioerror.us/donate/"><strong>donate today</strong></a> to ensure that I can keep going in the fight against our mutual enemies, the spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/04/02/bad-behavior-2-2-3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>EU Cookie Requirement Disclosure</title>
		<link>http://bad-behavior.ioerror.us/2012/04/02/eu-cookie-requirement-disclosure/</link>
		<comments>http://bad-behavior.ioerror.us/2012/04/02/eu-cookie-requirement-disclosure/#comments</comments>
		<pubDate>Mon, 02 Apr 2012 14:53:05 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1425</guid>
		<description><![CDATA[It seems the European Union has gone absolutely insane with extreme requirements for websites which use cookies. As Bad Behavior uses a cookie, and I&#8217;ve received requests for information about it, this post should serve to disclose (probably in much more detail than you really need) what Bad Behavior&#8217;s cookie is used for and what [...]]]></description>
			<content:encoded><![CDATA[<p>It seems the European Union has gone absolutely insane with extreme requirements for websites which use cookies. As Bad Behavior uses a cookie, and I&#8217;ve received requests for information about it, this post should serve to disclose (probably in much more detail than you really need) what Bad Behavior&#8217;s cookie is used for and what you may need to tell users to comply with the new EU regulations.</p>
<p>Bad Behavior sets a single session cookie named &#8220;bb2_screener_&#8221;. This cookie, which expires at the end of the user&#8217;s browser session, records the user&#8217;s IP address and time of their most recent visit to your site. The cookie is sent directly from your site, and not by a third party.</p>
<p>Bad Behavior uses this cookie to determine whether a request is a spammer who is rotating through different IP addresses. It is therefore used to maintain the security of your web site.</p>
<p>This cookie is solely used for the security of your web site and is not used for marketing purposes. For the purpose of site security, you may choose to share logs of user requests containing this cookie with a third party (me). If you share these records with me, I use them for the purpose of improving Bad Behavior&#8217;s detection of spam, and for no other purpose, I maintain them in encrypted storage, and I delete the records within 90 days.</p>
<p>Currently Bad Behavior has no means to determine whether your users have given consent to receive cookies. Since it is used solely to maintain the security of your site from malicious activity, you may be able to argue that it is exempt from the consent requirement, but since this requirement is new and untested in the courts, it&#8217;s not clear whether this will work. It&#8217;s also unclear at this time how to integrate such a requirement into Bad Behavior and all of the various possible platforms on which it can run.</p>
<p>If you feel you need any additional information in order to comply with these bizarre new requirements, just contact me and I&#8217;ll get you the information you need.</p>
<p>P.S. Bad Behavior is still in need of your support. If you haven&#8217;t <a href="http://bad-behavior.ioerror.us/donate/">donated</a> recently, or at all, please consider doing so.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/04/02/eu-cookie-requirement-disclosure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bad Behavior Needs You! (Version 3 Roadmap)</title>
		<link>http://bad-behavior.ioerror.us/2012/03/04/bad-behavior-needs-you-version-3-roadmap/</link>
		<comments>http://bad-behavior.ioerror.us/2012/03/04/bad-behavior-needs-you-version-3-roadmap/#comments</comments>
		<pubDate>Sun, 04 Mar 2012 02:58:09 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1309</guid>
		<description><![CDATA[It&#8217;s that time again. Time for me to take Bad Behavior, throw its core engine away and rewrite it from scratch. For the second time. Why? As of now, Bad Behavior is shockingly effective, as one user said, at blocking automated spam and other malicious activity. However, that doesn&#8217;t catch all possible spam. There&#8217;s one [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s that time again.</p>
<p>Time for me to take Bad Behavior, throw its core engine away and rewrite it from scratch.</p>
<p>For the second time.</p>
<p>Why?</p>
<p>As of now, Bad Behavior is shockingly effective, as one user said, at blocking automated spam and other malicious activity. However, that doesn&#8217;t catch all possible spam. There&#8217;s one important class of automated spam I would like to catch but cannot right now: that is delivered from hijacked Web browsers. This accounts for virtually all of the spam that Bad Behavior currently misses.</p>
<p>I believe I have a good strategy for catching this class of spam, but Bad Behavior&#8217;s current design won&#8217;t accommodate it.</p>
<p>In addition, there are a number of features which were pushed to post-2.2 because the current design won&#8217;t easily accommodate them either.</p>
<p>Thus, it&#8217;s time to redesign Bad Behavior.</p>
<p>I&#8217;ve already begun laying out Bad Behavior 3, and depending on the time available to me, I hope to have an alpha quality release by the end of the month.</p>
<p>To make that happen, though, I need your help right now.</p>
<h3>Core Changes</h3>
<p>Bad Behavior 3 will include an automatic update facility which you will be able to use to keep Bad Behavior up to date automatically, even if your host platform does not allow for automatic updates. For host platforms that have their own automatic update process, such as WordPress, you will be able to choose which process you want to use to keep Bad Behavior updated. Updates distributed with this new method will be protected via digital signature.</p>
<p>Bad Behavior 3 will support internationalization and localization, with translations available in as many languages as I can find translators for. Bad Behavior will use the PHP gettext extension, which is available on virtually all platforms including Windows, for core i18n/l10n. I will make a call for translators sometime in the next few days.</p>
<p>As of now, Bad Behavior 3 will require PHP 5.2 or later. If your server is still running some antique server software, now is a good time to update it.</p>
<h3>Platform Connector Changes</h3>
<p>Bad Behavior&#8217;s platform connectors will also be completely redesigned; the API for version 3 is completely different from version 2 and will not be backward compatible. The new design will enable features on various platforms which were difficult or impossible before, such as PostgreSQL support and a special page on MediaWiki, better Drupal 6 and 7 integration, a 100% functional generic platform out of the box including SQLite support, and many other things.</p>
<p>In cases where platform connectors provide platform-specific text, Bad Behavior will use the host platform&#8217;s i18n/l10n functions instead of using gettext directly. This will put some extra work on both myself and translators, but it is necessary to ensure maximum compatibility with all possible host platforms.</p>
<p>The integrated administrative pages which currently exist for WordPress will be generalized as much as possible, so that their functionality can be provided for multiple host platforms. Because every platform has a unique method of handling administrative pages, this may not be complete for all platforms at 3.0 release. At minimum, though, platforms which provide such administrative pages should all be able to change Bad Behavior&#8217;s settings and manage a whitelist through such a page.</p>
<p>For platforms capable of it, a second administrative page will allow full searching through Bad Behavior&#8217;s database, as the WordPress port does today, in addition to export functionality which you will be able to use to send me copies of spam you have received or other traffic that you think should have my attention. This export process will be released for WordPress shortly. As always, I hold such submissions in strict confidence, on encrypted media, use them solely for security analysis, and destroy them within 90 days. I never use personally identifying information which might be present in such submissions.</p>
<p>Database access has been generalized further so that different platforms can provide database access in their own unique ways. This new design is highly database agnostic, and fairly closely resembles Drupal&#8217;s database abstraction. It allows for the use of almost anything from SQLite to Oracle and much in between, including the use of database masters/slaves as in MediaWiki.</p>
<h3>Development Process Changes</h3>
<p>The test suite planned for Bad Behavior 2.2 never quite took shape, which has resulted in several embarrassing incidents where code was released that still contained obvious errors and typos. With Bad Behavior 3, I will be building the test suite (using PHPUnit) alongside the code, ensuring 100% coverage and hopefully this will make for more stable releases.</p>
<p>I have set up a completely new development environment which is linked to github. <a href="https://github.com/bad-behavior">Github will be the primary source code repository for Bad Behavior 3</a>, and from it, release engineering scripts will test the code and construct releases for all available platforms. These releases will then be offered for download here and pushed to third party download sites such as WordPress. This process flow should virtually eliminate releases with syntax errors and obvious regressions.</p>
<p>Using github will also allow me to integrate more closely with third parties who develop platform connectors, by pulling in their updates as they make them available and by providing users with a single download regardless of host platform. I&#8217;ll be providing more details on this as work progresses.</p>
<h3>Spam Prevention</h3>
<p>The new techniques for blocking spam from hijacked web browsers which I mentioned above will be incorporated into Bad Behavior 3.</p>
<p>I am currently working on a ruleset-based design which will allow for Bad Behavior&#8217;s spam blocking rules to be distributed independently of the core and the platform connector. This will simplify most updates and allow for environments which restrict updates, such as enterprise installations, to still keep up to date on spam blocking rules. Again, these updates will be protected with digital signatures.</p>
<p>A feature planned for 2.2 was to allow Project Honey Pot users to provide <a href="http://www.projecthoneypot.org/manage_honey_pots.php">honey pots</a> or <a href="http://www.projecthoneypot.org/manage_quicklink.php">QuickLinks</a> on their web sites. This is still something I want to do, and the new platform connectors should make it possible. No guarantees on this, though.</p>
<h3>Status</h3>
<p>As I write this, the display at the bottom of this page says Bad Behavior has blocked more than 19,000 access attempts in the last week, on this site alone. In that same time, 34 messages got through and were caught by Akismet, which I use as my <a href="http://bad-behavior.ioerror.us/2005/10/26/akismet-automattic-kismet/">secondary spam plugin</a>.</p>
<p>Now I&#8217;m after those last 34.</p>
<p>But, as I mentioned above, I need your help.</p>
<p>One night back in early 2005, when I first started blogging, I got my first comment spam. Unfortunately, my first comment spam was followed by 700 more over the space of a few hours. As you can imagine, I was thoroughly pissed. I spent some time looking at anti-spam solutions, but at the time there wasn&#8217;t much, and what there was didn&#8217;t work all that well. I felt I had to roll my own. A couple of months later, Bad Behavior was born.</p>
<p>I still clearly remember cleaning up after that first incident, and killing link spam has become something of a personal crusade for me. But I&#8217;ve learned that I can&#8217;t possibly do it all alone. Fortunately this field has grown significantly and there are now a whole lot of smart people working on various aspects of the link spam problem. What Bad Behavior brings to the table is to take that 700 spam attack and allow fewer than one percent to reach your blog. Having to clean up 7 spam is much easier than cleaning up 700. (This is one reason why <a href="http://bad-behavior.ioerror.us/documentation/spam-prevention-strategy/">I advise using more than one anti-spam solution</a>.)</p>
<p>As new spammers start up and new botnets come online, some find themselves already blocked, while others need to be analyzed and updates made to block them, so Bad Behavior will always require continuous development. Often this development is delayed because I have to pay bills. As you may be aware if you&#8217;ve been a very long time user, I lost my job in 2005 and since then I have lived on revenue from blogging and paid web consulting work. Therefore I can only work on Bad Behavior when my finances permit.</p>
<p>Historically, keeping up with the spammers has not been that difficult, as there is only so much the spammers can do while maintaining their high rates of spamming. Today, 100,000 or more spams in a single run is not unusual, and one spammer I&#8217;ve blocked can send 1,000,000 in a day. Bad Behavior attempts to drive up the cost of link spamming by blocking as many automated spammy requests as possible, forcing the spammers to resort to much slower manual methods, or ideally, give up and find more honest work. And Bad Behavior 3 promises to cut into the spam delivered by those much slower methods.</p>
<p>Only one thing remains, and that is to do the work. As I have noted before, Bad Behavior is a user-supported project. If you think this roadmap looks good, and want to accelerate Bad Behavior development, <a href="http://bad-behavior.ioerror.us/donate/">your financial contribution</a> will help ensure that I can devote more time to its development and bring it to fruition much faster. Otherwise, I have to spend my time first on other work which brings in revenue, and that means it will be much longer before you see these features.</p>
<p>I would estimate that all of the above would take me about six months to complete if it isn&#8217;t otherwise funded. At the same time I think contributions totaling $500 or more would allow me time to complete the majority of the above within a month. I know that a lot of you are having financial trouble due to the economy; so am I. Even if you are unable to <a href="http://bad-behavior.ioerror.us/donate/">send a contribution</a>, please leave your comments so that I know you support Bad Behavior and wish it to continue. And, thank you to all of you who have sent in contributions recently.</p>
<p>This is also the time to send in feature requests. If Bad Behavior doesn&#8217;t do something you would like it to do, please leave a comment. (And remember that feature requests accompanied by a <a href="http://bad-behavior.ioerror.us/donate/">contribution</a> are more likely to be implemented sooner.)</p>
<p>On that note, if you know someone who needs custom code written for WordPress, you should also contact me.</p>
<p>Thank you again for your support, and here&#8217;s to a future without spam.</p>
<p>P.S. I am still looking for someone who knows how to deliver electric shocks over the Internet. If you do, please contact me. This could be the <a href="http://en.wikipedia.org/wiki/Vardan_Kushnir">ultimate spam-prevention feature</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/03/04/bad-behavior-needs-you-version-3-roadmap/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Bad Behavior 2.2.2</title>
		<link>http://bad-behavior.ioerror.us/2012/02/22/bad-behavior-2-2-2/</link>
		<comments>http://bad-behavior.ioerror.us/2012/02/22/bad-behavior-2-2-2/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 02:17:42 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1301</guid>
		<description><![CDATA[Bad Behavior 2.2.2 has been released. This is a maintenance release and is recommended for all users. Who Should Update? MediaWiki and WordPress users, as well as all users who have enabled the Reverse Proxy feature, should update in order to receive the important bug fixes contained in this release. Users who have not yet [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.2.2 has been released. This is a maintenance release and is recommended for all users.</p>
<h3>Who Should Update?</h3>
<p>MediaWiki and WordPress users, as well as all users who have enabled the Reverse Proxy feature, should update in order to receive the important bug fixes contained in this release.</p>
<p>Users who have not yet updated to the 2.2 series should plan to update as soon as possible. Support for the 2.0 series will end June 30, 2013.</p>
<h3>Download</h3>
<p><a href="http://bad-behavior.ioerror.us/download/">Download Bad Behavior now</a>.</p>
<h3>What&#8217;s New?</h3>
<p>Changes since <a href="http://bad-behavior.ioerror.us/2012/02/01/bad-behavior-2-2-1/">2.2.1</a>:</p>
<ul>
<li>When a site enabled the Reverse Proxy option when it was not actually needed, Bad Behavior would sometimes fail to acquire the correct IP address for incoming requests. Bad Behavior&#8217;s code to detect this situation and acquire the correct IP address has been completely rewritten.</li>
<li><strong>MediaWiki</strong>: The default for the setting $wgBadBehaviorTimer has been reset to false. This setting enables an HTML comment to be inserted into wiki pages with run time information; however this causes blank lines to appear in pages with transcluded content or HTML forms. This code will be revisited in a future release.</li>
<li><strong>WordPress</strong>: A spurious PHP warning was being emitted when Bad Behavior captured a copy of incoming spam that was identified by another plugin. This warning has been removed.</li>
</ul>
<h3>Support</h3>
<p><a href="http://bad-behavior.ioerror.us/donate/"><strong>Donate today</strong></a> to ensure that I can keep going in the fight against our mutual enemies, the spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/02/22/bad-behavior-2-2-2/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Bad Behavior 2.2.1</title>
		<link>http://bad-behavior.ioerror.us/2012/02/01/bad-behavior-2-2-1/</link>
		<comments>http://bad-behavior.ioerror.us/2012/02/01/bad-behavior-2-2-1/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 10:42:30 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1288</guid>
		<description><![CDATA[Bad Behavior 2.2.1 has been released. This is a maintenance release and is recommended for all users. Who Should Update? All 2.2 series users should update in order to receive the important bug fixes contained in this release. Users who have not yet updated to the 2.2 series should plan to update as soon as [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.2.1 has been released. This is a maintenance release and is recommended for all users.</p>
<h3>Who Should Update?</h3>
<p>All 2.2 series users should update in order to receive the important bug fixes contained in this release.</p>
<p>Users who have not yet updated to the 2.2 series should plan to update as soon as possible. Support for the 2.0 series will end June 30, 2013.</p>
<h3>Download</h3>
<p><a href="http://bad-behavior.ioerror.us/download/">Download Bad Behavior now</a>.</p>
<h3>What&#8217;s New?</h3>
<p>Changes since <a href="http://bad-behavior.ioerror.us/2012/01/29/bad-behavior-2-2/">2.2.0</a>:</p>
<ul>
<li>On platforms where database logging is available, Bad Behavior would sometimes continue to log even when the logging setting was turned off. This has been fixed.</li>
<li>When a site enabled the Reverse Proxy option when it was not actually needed, Bad Behavior would sometimes fail to acquire the correct IP address for incoming requests. Bad Behavior&#8217;s code to detect this situation and acquire the correct IP address has been improved.</li>
<li><strong>WordPress</strong>: When a different anti-spam plugin identifies a request as spam, and Bad Behavior did not, Bad Behavior will now log a copy of that request (if logging is enabled). This is to help facilitate reporting of spam not yet detected by Bad Behavior. WordPress users may view the log by visiting the administrative page <strong>Tools</strong> &raquo; <strong>Bad Behavior Log</strong>.</li>
<li><strong>WordPress</strong>: To improve compatibility with other plugins, Bad Behavior no longer stores data in PHP sessions while screening requests.</li>
</ul>
<h3>Support</h3>
<p>I will skip the usual speech. If you&#8217;re reading this you already know how valuable Bad Behavior is. <a href="http://bad-behavior.ioerror.us/donate/"><strong>Donate today</strong></a> to ensure that I can keep going in the fight against our mutual enemies, the spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/02/01/bad-behavior-2-2-1/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Bad Behavior 2.2</title>
		<link>http://bad-behavior.ioerror.us/2012/01/29/bad-behavior-2-2/</link>
		<comments>http://bad-behavior.ioerror.us/2012/01/29/bad-behavior-2-2/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 08:54:33 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>
		<category><![CDATA[Blog Spam]]></category>
		<category><![CDATA[MediaWiki]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[stable]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1265</guid>
		<description><![CDATA[Bad Behavior 2.2.0 has now been released. This is the first general availability release for the 2.2 series and is recommended for all users. Support for the Bad Behavior 2.0 branch will end June 30, 2013. All users should make plans to migrate to version 2.2 prior to that date. Who Should Upgrade? All users [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.2.0 has now been released. This is the first general availability release for the 2.2 series and is recommended for all users.</p>
<p>Support for the Bad Behavior 2.0 branch will end June 30, 2013. All users should make plans to migrate to version 2.2 prior to that date.</p>
<h3>Who Should Upgrade?</h3>
<p>All users should plan to upgrade to Bad Behavior 2.2.</p>
<p>IPv6 users, and users who use reverse proxies, load balancers or content distribution networks such as Akamai and CloudFlare, should accelerate their migration plans and upgrade as soon as possible.</p>
<h3>Download</h3>
<p>Impatient? Go <a href="http://bad-behavior.ioerror.us/download/">download Bad Behavior now</a>. The on-site <a href="http://bad-behavior.ioerror.us/documentation/">documentation</a> has already been updated for version 2.2, so please check the documentation before upgrading to familiarize yourself with the changes and new options.</p>
<h3>What&#8217;s New?</h3>
<p>Bad Behavior 2.2 adds new features, including some designed to assist enterprise users with very high traffic installations on large server farms, as well as convenience features for all users and a variety of fixes and improvements.</p>
<p>Since Bad Behavior 2.0:</p>
<ul>
<li>Some additional known spammers have been identified and blocked.</li>
<li>IPv6 support has been improved, including new support for IPv6 whitelisting.</li>
<li>New configuration options are available for web sites running behind reverse proxies/load balancers and third party content distribution networks such as Akamai and CloudFlare. These options ensure that Bad Behavior can correctly screen requests when operating in these environments.</li>
<li>Search engines are screened faster and more accurately, improving search engine metrics such as Google Page Speed and YSlow and virtually eliminating the possibility of false positives for search engines. (Bad Behavior still blocks most malicious traffic originating from search engine providers&#8217; networks.)</li>
<li>Blackhole lists other than <a href="http://www.projecthoneypot.org/">http:BL</a> have been removed as unsuitable for sites running Bad Behavior. Because of its comment spammer tracking, http:BL remains the only blackhole list Bad Behavior uses. (It is disabled by default; enable it in your settings if you wish to use it.)</li>
<li>For platforms without built-in administrative pages, Bad Behavior has a simplified method of changing settings. Settings changes on these platforms are preserved through software updates.</li>
<li>Bad Behavior&#8217;s whitelisting feature has been completely revamped. Whitelists are much easier to maintain and are preserved through software updates.</li>
<li>Across the board performance improvements have been added.</li>
<li>Messaging displayed to blocked requests has been significantly improved for clarity and to facilitate issue resolution.</li>
<li>MediaWiki: Fixes for database access have been incorporated. It should no longer be necessary to place strange hacks in LocalSettings.php to use Bad Behavior on MediaWiki.</li>
<li>WordPress: Minor display issues in the log viewer have been corrected.</li>
<li>Numerous additional minor improvements.</li>
</ul>
<h3>What&#8217;s Coming?</h3>
<p>Shortly I&#8217;ll be posting my roadmap for Bad Behavior 3.0, the next major version. This will be a ground-up rewrite of Bad Behavior incorporating lessons learned over the past seven years of fighting link spam and programming in general.</p>
<p>I will also once again be adding new spammers to Bad Behavior as I catch them. Analyzing spammers is an ongoing process and is probably the most time-consuming part of this whole project.</p>
<h3>Support</h3>
<p>I will skip the usual speech. If you&#8217;re reading this you already know how valuable Bad Behavior is. <a href="http://bad-behavior.ioerror.us/donate/">Donate today</a> to ensure that I can keep going in the fight against our mutual enemies, the spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/01/29/bad-behavior-2-2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Bad Behavior 2.2 RC4 (2.1.16)</title>
		<link>http://bad-behavior.ioerror.us/2012/01/25/bad-behavior-2-2-rc4-2-1-16/</link>
		<comments>http://bad-behavior.ioerror.us/2012/01/25/bad-behavior-2-2-rc4-2-1-16/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 07:49:28 +0000</pubDate>
		<dc:creator>Michael Hampton</dc:creator>
				<category><![CDATA[Bad Behavior]]></category>

		<guid isPermaLink="false">http://bad-behavior.ioerror.us/?p=1223</guid>
		<description><![CDATA[Bad Behavior 2.1.16 has been released. For 2.1 users, this is a maintenance release and upgrading as soon as possible is recommended. Legacy 2.0 users should make migration plans as soon as possible. This release is the fourth and final release candidate for Bad Behavior 2.2 and should be safe to use on production sites. [...]]]></description>
			<content:encoded><![CDATA[<p>Bad Behavior 2.1.16 has been released. For 2.1 users, this is a maintenance release and upgrading as soon as possible is recommended. Legacy 2.0 users should make migration plans as soon as possible.</p>
<p>This release is the fourth and final release candidate for Bad Behavior 2.2 and should be safe to use on production sites. </p>
<p>Please note: The 2.0 series of Bad Behavior is receiving limited updates, including unblocks, bug fixes and security fixes only.</p>
<h3>Who should upgrade?</h3>
<p>All users should make plans to upgrade from 2.0 at this time. People who are porting Bad Behavior to other platforms should finalize any necessary changes to their ports.</p>
<h3>What&#8217;s new?</h3>
<p>New in this release (since <a href="http://bad-behavior.ioerror.us/2011/10/10/bad-behavior-2-2-rc3-2-1-15/">2.1.15</a>):</p>
<ul>
<li>A bug caused Bad Behavior to interfere with other PHP code which opened PHP sessions. This interfered with a wide variety of code, most notably various CAPTCHA solutions. This issue has been fixed.</li>
<li>WordPress: A PHP warning would be printed if Bad Behavior was unable to look up the hostname for an IP address in the administrative page. This warning has been suppressed.</li>
<li>MediaWiki: A spurious PHP warning would be printed when first installing Bad Behavior. This warning has been suppressed.</li>
<li>The sample whitelist included with Bad Behavior now includes an updated IP address range for digg.</li>
<li>Bad Behavior is now licensed under the GNU Lesser General Public License, either version 3, or at your option, any later version.</li>
</ul>
<h3>What&#8217;s coming?</h3>
<p>At the moment, barring any major bugs, this release will be 2.2. The last thing remaining to be done is documentation; this somehow always turns out to be a larger job than the actual code. I will be updating the online documentation over the next days as my time permits.</p>
<p>Since this branch is finally about as stable as it will get, post-2.2 I will be returning to focus on spammers who have so far evaded Bad Behavior and increasing its capability to block many of the new spambots which have appeared on the network in the last few months.</p>
<p>I will also be focusing on a major rewrite of Bad Behavior which will eventually become 3.0, focusing on lessons learned over the last seven years and bringing in new features which have proved impossible to implement in the current framework. I hope the next seven years will be as exciting as the last, and that together we can kill even more spammers. Dead.</p>
<h3>Download</h3>
<p><a href="http://bad-behavior.ioerror.us/download/">Download</a> the latest release of Bad Behavior now!</p>
<h3>Support</h3>
<p>If you&#8217;ve been here more than a few months, you&#8217;ve noticed that this release has been very long delayed. The primary reason for this is that, like most of you, I have to spend my days making money, and can only devote spare time to this project. Unfortunately my spare time is quite limited; I only get to spend more time on this when the community of Bad Behavior users want me to do so enough to put actual money behind it. Then it becomes &#8220;money making&#8221; and I can actually do significant work on it.</p>
<p>What&#8217;s more, I have a lengthy to-do list for a major rewrite which, if it ever gets done, will be Bad Behavior 3.0. I&#8217;m excited about it but I have no time to devote to it. This is doubly unfortunate because one of my favorite things in the world is beating spammers to within an inch of their&#8230;I mean giving them a quick clean&#8230;excuse me. Stopping spam. That&#8217;s it.</p>
<p>As I put the finishing touches on 2.2, get the documentation written and prepare it for final release, I&#8217;m asking you to decide how much time you want me to spend on this. What is it worth to you? <a href="http://bad-behavior.ioerror.us/donate/">Donate now</a> to ensure that I can continue development and find new ways to frustrate spammers.</p>
]]></content:encoded>
			<wfw:commentRss>http://bad-behavior.ioerror.us/2012/01/25/bad-behavior-2-2-rc4-2-1-16/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.193 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-05-23 09:47:27 -->
<!-- Compression = gzip -->
