{"id":449,"date":"2005-08-22T23:23:33","date_gmt":"2005-08-23T03:23:33","guid":{"rendered":"http:\/\/www.scaredpoet.com\/wordpress\/?p=449"},"modified":"2005-08-26T12:04:05","modified_gmt":"2005-08-26T16:04:05","slug":"the-war-on-spam","status":"publish","type":"post","link":"https:\/\/scaredpoet.com\/blog\/?p=449","title":{"rendered":"The War on Spam"},"content":{"rendered":"<p>I hate spam.<\/p>\n<p>Yeah, I know, the above comment is a lot like saying &#8220;I breathe air.&#8221;  But I really do.  Not only because it&#8217;s well, spam, and it is the epitome of everything that is wrong with humankind (greed, stupidity, arrogance, etc.), but also that <em>because<\/em> of spam, millions of lines of extra code has to be written into e-mail relay servers, web site comment forms, SMS gateways, and even blogs just like this one, to prevent a wash of useless text from Ephedrine and Viagra-mongering morons, who by the way, think that you really really need to check out their online poker site.  Long ago, this site was undefended against such spam, and my &#8220;<a href=\"http:\/\/www.scaredpoet.com\/wordpress\/index.php?s=lilo\">lilo must DIE<\/a>&#8221; diatribe on the matter became site history.<br \/>\n<!--more--><\/p>\n<p>But then relief came in the form of <a href=\"http:\/\/unknowngenius.com\/blog\/\">Dr. Dave<\/a>, and his lovely <a href=\"http:\/\/unknowngenius.com\/blog\/wordpress\/spam-karma\/\">Spam Karma<\/a> code.  I threw the plugin on, flicked the switch, and watched all of my spam related troubles disappear.  No more would my blog be a free billboard for dubious pharmaceuticals intended to enhance one&#8217;s genitalia.<\/p>\n<p>And all was good.  Until just this morning.  A <a href=\"http:\/\/www.pagerealm.com\/pengypress\/\">good and trusted friend<\/a>, and a regular site visitor, discovered that he was being blacklisted for posting comment spam.  And soon, I discovered that anyone posting comments would be barred from doing so, and (albeit courteously) accused of attempting to hawk their wares.<\/p>\n<p>No sir, that&#8217;s <strong>not<\/strong> good for business.<\/p>\n<p>Thinking the database tables governing the spam filter were corrupted, I cleared the database and went with a fresh one.  No dice.  So I logged into <a href=\"http:\/\/www.mysql.com\">mySQL<\/a> as an administrator, and tried to do some manual editing.<\/p>\n<p>And this is a good time to stop and inform everyone about how <em>very dangerous<\/em> it is for a person with only a basic knowledge of SQL to have root password access to the server.  Right?<\/p>\n<p>Right.  So, after crashing the whole site, I dug up my backups and restored the database, and that brought things back up.  Great!  But I still had McCarthy lording over my comments. <\/p>\n<p>Finally, I discovered the cause: encrypted hash payloads.<\/p>\n<p>See, part of what Spam Karma does is test your browser, to make sure there actually IS a web browser viewing the page and posting the content.  If it&#8217;s really a web browser, then chances are there&#8217;s a real human being behind the keyboard with something to say, as opposed to a mechanical bot that a spammer deployed to generate thoughtful pearls of wisdom about Texas Hold&#8217;em.  To do this, the server sends a small mathematical problem for your computer to solve that can only be seen by the computer if the browser passes that information along.  A real browser (and thus, real human being) means the server will get a correct answer back, and the comment can be approved.  Pretty simple, and very transparent: the user generally doesn&#8217;t even realize they were tested to see if they were a spammer or not.  That is, until it breaks.<\/p>\n<p>Well, I&#8217;m not sure why, but with the <a href=\"http:\/\/wordpress.org\/development\/2005\/08\/one-five-two\/\">recent upgrade of wordpress to 1.5.2<\/a>,  this new version of wordpress somehow puts the kibosh on this.  The result is that all the answers to these anti-spam riddles come back wrong, or not at all.  And to Spam Karma, no solved riddle equals a likely spammer.  End result: everything gets trashed.<\/p>\n<p>In theory, a &#8220;second chance&#8221; mechanism can be put in place known as a <a href=\"http:\/\/en.wikipedia.org\/wiki\/Captcha\">captcha<\/a>.  This is a riddle that is designed such that only a human can solve it, as it (presumably) is beyond the current level of artificial intelligence.  Unfortunately, <strong>that too<\/strong> is broken on Spam Karma!  Somewhere in the code is a bug that makes Spam Karma look for the captcha page in the root directory of the site, instead of the directory where it&#8217;s supposed to be.  Joy.<\/p>\n<p>So for now, both captcha and encrypted payload tests are turned off on the site,  until these bugs can be fixed.  There are still other &#8220;weapons&#8221; that the system has in place, such as referring to blacklists and also checking the comment history of a frequent visitor as they post new comments.  Hopefully, this will keep spammers out while continuing to let legitimate comments in.<\/p>\n<p>In the meantime, if anyone experiences ANY problems posting a comment here, please let me know immediately so I can take further steps to correct the problem.  <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Commentary on some site issues.<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-449","post","type-post","status-publish","format-standard","hentry","category-site-maintenance"],"_links":{"self":[{"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/449","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=449"}],"version-history":[{"count":0,"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/449\/revisions"}],"wp:attachment":[{"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=449"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=449"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scaredpoet.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=449"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}