<?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>Kavoir &#187; Anti Spam Tips &amp; Tricks</title>
	<atom:link href="http://www.kavoir.com/category/anti-spam/feed" rel="self" type="application/rss+xml" />
	<link>http://www.kavoir.com</link>
	<description>Just another dumbass webmaster, goofing around...</description>
	<lastBuildDate>Thu, 09 Feb 2012 01:59:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>PHP: Checking Text Strings against Reserved or Censored Words</title>
		<link>http://www.kavoir.com/2010/09/php-checking-text-strings-against-reserved-or-censored-words.html</link>
		<comments>http://www.kavoir.com/2010/09/php-checking-text-strings-against-reserved-or-censored-words.html#comments</comments>
		<pubDate>Mon, 27 Sep 2010 05:56:03 +0000</pubDate>
		<dc:creator>Yang Yang</dc:creator>
				<category><![CDATA[Anti Spam Tips & Tricks]]></category>
		<category><![CDATA[PHP Tips & Tutorials]]></category>

		<guid isPermaLink="false">http://www.kavoir.com/2010/09/php-checking-text-strings-against-reserved-or-censored-words.html</guid>
		<description><![CDATA[I created a free online web form builder a while back and since it went well in search engine rankings, spammers and phishers found it and started to use it creating forms to collect email account usernames and passwords through phishing attempts. I’ve got to do something before my host closes down my site because [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I created a <a href="http://www.formkid.com">free online web form builder</a> a while back and since it went well in search engine rankings, spammers and phishers found it and started to use it creating forms to collect email account usernames and passwords through phishing attempts. I’ve got to do something before my host closes down my site because of all the complaints and alerts from security department of the universities. They’ve got good reasons. I’m hosting all the phishing forms.</p>

<p>Phishers tend to use URL slugs that include words such as ‘admin’, ‘webmail’ or ‘account’ so that the form seems authoritative at first glance. After they have <a href="http://www.formkid.com/">signed up</a>, they will create forms with fields labeled ‘Password’ or something. So what I’m going to do is to list all such words as reserved words and prohibit the users from doing anything with them.</p>
<p>A function will be needed to examine a subject string against an array of reserved words that will be censored when users use them as input. Listed is a my function:</p>
<pre><code>public static function isStringLegal($subjectString = '', $disallowedWords = array()) {
	$alphabetSubject = <strong>preg_replace</strong>('|[^a-zA-Z]+|', '', $subjectString);
	foreach ($disallowedWords as $disallowedWord) {
		if (<strong>stripos</strong>($alphabetSubject, $disallowedWord) !== false) {
			return false;
		}
	}
	return true;
}</code></pre>
<p>The PHP function <strong>stripos</strong>() returns a numeric value if it finds $disallowedWord in $alphabetSubject, case-insensitive. If it fails to find anything, it returns false.</p>
<p>A sample disallowed words list:</p>
<pre><code>$slugDisallowedWords = array(
	'formkid',
	'kavoir',
	'mail',
	'admin',
	'account',
	'password'
);</code></pre>
<p>The disallowed words list can only contain alphabet letters. If you need a phrase such as ‘no way’, you have to add it in the array as ‘noway’. This is to prevent illegal attempts to add any word or phrase in manners such as ‘<strong>a-d-m-i-n</strong>’ or ‘<strong>Pa_ss Word</strong>’. All the non-alphabet letters / characters are first gotten rid of and then the deprived string which contains only alphabet letters are checked against each word in the disallowed words list.</p>
<h3>Related Posts:</h3>
<ul class="similar-posts">
<li><a href="http://www.kavoir.com/2009/07/php-count-words-in-a-string.html" rel="bookmark" title="July 29, 2009">PHP: Count Words in a String</a></li>
<li><a href="http://www.kavoir.com/2012/01/php-check-if-a-string-contain-only-uppercase-capital-letters.html" rel="bookmark" title="January 20, 2012">PHP: Check if A String Contain Only Uppercase / Capital Letters</a></li>
<li><a href="http://www.kavoir.com/2011/10/php-crontab-class-to-add-and-remove-cron-jobs.html" rel="bookmark" title="October 30, 2011">PHP: Crontab Class to Add, Edit and Remove Cron Jobs</a></li>
<li><a href="http://www.kavoir.com/2009/04/php-string-case-uppercase-all-letters-or-lowercase-all-letters-in-a-string-uppercase-first-letter-of-a-string-uppercase-first-letter-of-all-words-in-a-string.html" rel="bookmark" title="April 23, 2009">PHP String Case: Uppercase all Letters or Lowercase all Letters in a String | Uppercase First Letter of a String | Uppercase First Letter of all Words in a String</a></li>
<li><a href="http://www.kavoir.com/2009/06/javascript-split-and-divide-text-string-by-a-delimiter.html" rel="bookmark" title="June 16, 2009">JavaScript: Split and Divide Text String by A Delimiter</a></li>
</ul>
<p><!-- Similar Posts took 2.251 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kavoir.com/2010/09/php-checking-text-strings-against-reserved-or-censored-words.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to know if your site has been penalized by Google for malicious software or suspicious content?</title>
		<link>http://www.kavoir.com/2009/05/how-to-know-if-your-site-has-been-penalized-by-google-for-malicious-software-or-suspicious-content.html</link>
		<comments>http://www.kavoir.com/2009/05/how-to-know-if-your-site-has-been-penalized-by-google-for-malicious-software-or-suspicious-content.html#comments</comments>
		<pubDate>Wed, 20 May 2009 02:19:18 +0000</pubDate>
		<dc:creator>Yang Yang</dc:creator>
				<category><![CDATA[Anti Spam Tips & Tricks]]></category>
		<category><![CDATA[Content / SEO Tips & Tutorials]]></category>
		<category><![CDATA[Google Hacks, Cheats & Tips]]></category>
		<category><![CDATA[Information Security]]></category>

		<guid isPermaLink="false">http://www.kavoir.com/2009/05/how-to-know-if-your-site-has-been-penalized-by-google-for-malicious-software-or-suspicious-content.html</guid>
		<description><![CDATA[Back when WordPress was pretty young there’s some loopholes that enable hackers to inject unauthorized and dangerous HTML code into your website pages, thus promoting the distribution of malware that damages the end users computer. I was once there and got penalized by Google for one of my sites. However, they are gentle enough to [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Back when WordPress was pretty young there’s some loopholes that enable hackers to inject unauthorized and dangerous HTML code into your website pages, thus promoting the distribution of malware that damages the end users computer. I was once there and got penalized by Google for one of my sites. However, they are gentle enough to detect that this might not be my fault but still decided to bring down the overall ranking of all the pages on that site for a while to protect Internet users and notify me.</p>

<p>If you have spotted anything suspicious or sense that your overall site ranking is down, you may want to check it out for sure if your site has been infected with malware or anything else that’s a threat to your site and the visitors.</p>
<p>Just go here: <a title="http://www.google.com/safebrowsing/diagnostic?site=econguru.com" href="http://www.google.com/safebrowsing/diagnostic?site=example.com">http://www.google.com/safebrowsing/diagnostic?site=example.com</a></p>
<p>And Google will present you a detailed report of what they have found on your site for the last 90 days.</p>
<h3>Related Posts:</h3>
<ul class="similar-posts">
<li><a href="http://www.kavoir.com/2009/06/google-restrict-search-results-by-searching-only-the-anchor-text-page-title-page-url-or-filetype.html" rel="bookmark" title="June 13, 2009">Google: Restrict matching results by searching only the anchor text, page title, page URL, page text or filetype</a></li>
<li><a href="http://www.kavoir.com/2007/06/what-is-wrong-with-supplemental-result.html" rel="bookmark" title="June 3, 2007">What is wrong with &#8216;Supplemental result&#8217;?</a></li>
<li><a href="http://www.kavoir.com/2010/09/auto-generated-content-by-user-searches.html" rel="bookmark" title="September 29, 2010">Auto-generated content by user searches</a></li>
<li><a href="http://www.kavoir.com/2007/08/find-the-perfect-page-to-build-links-on.html" rel="bookmark" title="August 8, 2007">Find the perfect page to build links on</a></li>
<li><a href="http://www.kavoir.com/2009/06/web-hosting-ip-and-seo-are-you-a-slum-dog-or-are-you-a-millionaire.html" rel="bookmark" title="June 11, 2009">Web Hosting IP and SEO: Are You A Slum Dog or Are You A Millionaire?</a></li>
</ul>
<p><!-- Similar Posts took 2.390 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kavoir.com/2009/05/how-to-know-if-your-site-has-been-penalized-by-google-for-malicious-software-or-suspicious-content.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>phpBB Spam Control – phpBB Anti-Spam Options for Fresh Forum Installations</title>
		<link>http://www.kavoir.com/2009/03/phpbb-spam-control-phpbb-anti-spam-options-for-fresh-forum-installations.html</link>
		<comments>http://www.kavoir.com/2009/03/phpbb-spam-control-phpbb-anti-spam-options-for-fresh-forum-installations.html#comments</comments>
		<pubDate>Sun, 15 Mar 2009 05:22:21 +0000</pubDate>
		<dc:creator>Yang Yang</dc:creator>
				<category><![CDATA[Anti Spam Tips & Tricks]]></category>
		<category><![CDATA[Information Security]]></category>
		<category><![CDATA[Web Applications & Online Software]]></category>

		<guid isPermaLink="false">http://www.kavoir.com/2009/03/phpbb-spam-control-phpbb-anti-spam-options-for-fresh-forum-installations.html</guid>
		<description><![CDATA[phpBB is pretty much the best php forum software out there that is free, and comes the first choice of many webmasters. However, after a few weeks of first installation, many complain that spam bots start to overwhelm their forums, flooding with automated spam registrations and spam posts. Unfortunately, that is generally because: phpBB disables [...]]]></description>
			<content:encoded><![CDATA[<p></p><p><a href="http://www.phpbb.com">phpBB</a> is pretty much the best php forum software out there that is free, and comes the first choice of many webmasters. However, after a few weeks of first installation, many complain that spam bots start to overwhelm their forums, flooding with automated spam registrations and spam posts.</p>

<p>Unfortunately, that is generally because:</p>
<ol>
<li>phpBB disables <strong>account activation</strong> by default so that any registered account would be instantly able to write and submit posts.</li>
<li>The default image captcha at registration is much too easy for anti-captcha programs to break.</li>
</ol>
<p>So, taking <a href="http://www.phpbb.com">phpBB 3.0.4</a> for an example, to prevent the majority of simple phpBB forum spam bots, with every new phpBB installation, you will:</p>
<ol>
<li><span style="text-decoration: underline;">Enable registration activation</span>: Administration Control Panel =&gt; General =&gt; (Board Configuration) User registration settings =&gt; (General settings) <span style="text-decoration: underline;"><strong>Account activation</strong></span> =&gt; Now select &#8216;<strong>By User</strong>&#8216; from &#8216;<strong>None</strong>&#8216; =&gt; Submit.Thereby all new registered accounts will be required to validate the email address which no automated spam bots would do with fabricated ones, at least for not-so-valuable new forums.</li>
<li><span style="text-decoration: underline;">Use harder captcha images</span>: Administration Control Panel =&gt; General =&gt; (Board Configuration) Visual confirmation settings =&gt; (General options) =&gt; <span style="text-decoration: underline;"><strong>GD CAPTCHA foreground noise</strong></span> =&gt; Select &#8216;<strong>Yes</strong>&#8216; instead of &#8216;<strong>No</strong>&#8216; =&gt; Submit.This would make the captcha a lot harder to break but also less user friendly / accessible because the texts are also much harder for human recognizing. To ease the pain, you may want to set the numeric values just below the option for <span style="text-decoration: underline;">background noises</span> of <strong>x-axis</strong> and <strong>y-axis</strong> <em>higher</em> or <em>zero</em>. I use 200.</li>
</ol>
<p>After all these efforts you should be receiving much less spam now. If they still laugh at your defense and keep on coming, you should consider using more advanced image captcha such as <a href="http://www.recaptcha.net">reCaptcha.net</a>.</p>
<h5>For an idea of what captcha works best</h5>
<p>Below is a list of famous Chinese websites image captchas that have <a href="http://wangrun.web6.a48.cn/captcha/">allegedly been broken</a> by automated text recognition programs with an accuracy percentage and price for each of them. From them you can get an idea of what captcha works the best and what can be easily worked around.</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<th scope="col">Origin</th>
<th scope="col">Samples</th>
<th scope="col">Accuracy</th>
<th scope="col">Price</th>
<th scope="col">Comments</th>
</tr>
<tr>
<td>9you</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/1.gif" alt="captcha broken by spam bots" width="392" height="20" /></td>
<td>100%</td>
<td>500<br />
$100</td>
<td>Very Easy</td>
</tr>
<tr>
<td>tiancity</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/2.gif" alt="captcha broken by spam bots" width="396" height="20" /></td>
<td>100%</td>
<td>500<br />
$100</td>
<td>Very Easy</td>
</tr>
<tr>
<td>cncard</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/3.gif" alt="captcha broken by spam bots" width="396" height="20" /></td>
<td>100%</td>
<td>500<br />
$100</td>
<td>Very Easy</td>
</tr>
<tr>
<td>the9</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/4.gif" alt="captcha broken by spam bots" width="412" height="16" /></td>
<td>100%</td>
<td>500<br />
$100</td>
<td>Very Easy</td>
</tr>
<tr>
<td>the9</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/5.gif" alt="captcha broken by spam bots" width="391" height="49" /></td>
<td>99%</td>
<td>1000<br />
$200</td>
<td>Easy</td>
</tr>
<tr>
<td>kingsoft</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/6.gif" alt="captcha broken by spam bots" width="420" height="69" /></td>
<td>98%</td>
<td>1000<br />
$200</td>
<td>Easy</td>
</tr>
<tr>
<td>taobao</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/7.gif" alt="captcha broken by spam bots" width="412" height="45" /></td>
<td>95%</td>
<td>1000<br />
$200</td>
<td>Easy</td>
</tr>
<tr>
<td>dvbbs</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/8.gif" alt="captcha broken by spam bots" width="417" height="45" /></td>
<td>95%</td>
<td>1000<br />
$200</td>
<td>Easy</td>
</tr>
<tr>
<td>126</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/9.gif" alt="captcha broken by spam bots" width="428" height="55" /></td>
<td>95%</td>
<td>1000<br />
$200</td>
<td>Easy</td>
</tr>
<tr>
<td>163</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/10.gif" alt="captcha broken by spam bots" width="368" height="65" /></td>
<td>95%</td>
<td>1500<br />
$300</td>
<td>Middle</td>
</tr>
<tr>
<td>shanda</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/11.gif" alt="captcha broken by spam bots" width="417" height="56" /></td>
<td>90%</td>
<td>1500<br />
$300</td>
<td>Middle</td>
</tr>
<tr>
<td>qq</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/12.gif" alt="captcha broken by spam bots" width="366" height="55" /></td>
<td>90%</td>
<td>1500<br />
$300</td>
<td>Middle</td>
</tr>
<tr>
<td>xiaonei</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/xiaonei.gif" alt="captcha broken by spam bots" width="445" height="85" /></td>
<td>85%</td>
<td>1000<br />
$200</td>
<td>Middle</td>
</tr>
<tr>
<td>sdo</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/sdo.gif" alt="captcha broken by spam bots" width="405" height="85" /></td>
<td>85%</td>
<td>1500<br />
$300</td>
<td>Middle</td>
</tr>
<tr>
<td>ourgame</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/ourgame.gif" alt="captcha broken by spam bots" width="376" height="85" /></td>
<td>80%</td>
<td>1500<br />
$300</td>
<td>Middle</td>
</tr>
<tr>
<td>chinaren</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/13.gif" alt="captcha broken by spam bots" width="416" height="45" /></td>
<td>85%</td>
<td>2000<br />
$400</td>
<td>Middle</td>
</tr>
<tr>
<td>monter</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/14.gif" alt="captcha broken by spam bots" width="372" height="46" /></td>
<td>80%</td>
<td>2000<br />
$400</td>
<td>Middle</td>
</tr>
<tr>
<td>baidu</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/15.gif" alt="captcha broken by spam bots" width="368" height="85" /></td>
<td>80%</td>
<td>$3000</td>
<td>Difficult</td>
</tr>
<tr>
<td>qq</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/16.gif" alt="captcha broken by spam bots" width="398" height="55" /></td>
<td>75%</td>
<td>$3000</td>
<td>Difficult</td>
</tr>
<tr>
<td>ebay</td>
<td><img src="http://www.kavoir.com/img/posts/captcha/17.gif" alt="captcha broken by spam bots" width="412" height="105" /></td>
<td>60%</td>
<td>$4000</td>
<td>Difficult</td>
</tr>
<tr>
<td>myspace</td>
<td colspan="3"><img src="http://www.kavoir.com/img/posts/captcha/19.gif" alt="captcha broken by spam bots" width="604" height="224" /></td>
<td>30%</td>
</tr>
<tr>
<td>google</td>
<td colspan="3"><img src="http://www.kavoir.com/img/posts/captcha/20.gif" alt="captcha broken by spam bots" width="608" height="145" /></td>
<td>30%</td>
</tr>
<tr>
<td>hotmail</td>
<td colspan="3"><img src="http://www.kavoir.com/img/posts/captcha/21.gif" alt="captcha broken by spam bots" width="663" height="102" /></td>
<td>30%</td>
</tr>
<tr>
<td>yahoo</td>
<td colspan="3"><img src="http://www.kavoir.com/img/posts/captcha/22.gif" alt="captcha broken by spam bots" width="584" height="249" /></td>
<td>45% $8000</td>
</tr>
</tbody>
</table>
<h3>Related Posts:</h3>
<ul class="similar-posts">
<li><a href="http://www.kavoir.com/2009/04/phpbb-disabling-user-registrations-signup.html" rel="bookmark" title="April 18, 2009">phpBB: Disabling User Registrations / Signup</a></li>
<li><a href="http://www.kavoir.com/2010/06/how-to-enable-change-vbulletin-default-thread-subscription-mode-for-new-user-registrations.html" rel="bookmark" title="June 14, 2010">How to Enable / Change vBulletin Default Thread Subscription Mode for New User Registrations?</a></li>
<li><a href="http://www.kavoir.com/2009/11/how-to-change-cj-password-of-commission-junction.html" rel="bookmark" title="November 21, 2009">How to change CJ password? (of Commission Junction)</a></li>
<li><a href="http://www.kavoir.com/2009/04/paircom-hosting-coupons-and-promo-codes-bonus-paircom-control-panel-screenshots.html" rel="bookmark" title="April 19, 2009">Pair.com Hosting Coupons and Promo Codes (Bonus: Pair.com Control Panel Screenshots)</a></li>
<li><a href="http://www.kavoir.com/2009/01/699-com-domain-coupon-at-godaddy-for-both-registration-and-renewal.html" rel="bookmark" title="January 25, 2009">$6.99 .com domain coupon at GoDaddy for both registration and renewal</a></li>
</ul>
<p><!-- Similar Posts took 2.660 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kavoir.com/2009/03/phpbb-spam-control-phpbb-anti-spam-options-for-fresh-forum-installations.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

