Month: June 2003

  • What We Say to SCO vs. What They Hear

    Some years back, that clever cartoonist of the Far Side defined what I like to call the “Larson’s Dog Syndrome.” Here is a transcription of the dialog in the bubbles over the characters heads:

    What we say to dogs: “Okay Ginger! I’ve had it! You stay out of the garbage! Understand Ginger? Stay out of the garbage or else!”

    What they hear: “blah blah Ginger blah blah blah blah blah Ginger blah blah blah blah blah blah”

    Which is why this past Sunday’s artistic offering from UserFriendly based upon the original so hilarious … if the whole SCO/*nix saga weren’t so daggumed pathetic.

  • Variation on the HoneyPot theme :: the Looback

    Kung Fu Grippe’s (KFG) “Honeypot for spam harvesters” got me to thinking. In the past, I’ve often added a loopback email address on a contacts page so that dumb spambots that harvest and email on the fly will send a copy to whomever is hosting the spammer’s operations. That address would be abuse@[127.0.0.1]. Which is okay up until you get into the world of hijacked servers, open SMTP relays and or spambots looking for the well known IP looback address of 127.0.0.1.

    So taking some ideas from KFG’s article, I created a bit of PHP that will look up the domain of the spambot/spybot and create and email address for their abuse administrator, such as abuse@verizon.net. Here is how I do it

    $GLB_Loopback;
    function GetLoopback() {

        global $GLB_Loopback, $REMOTE_ADDR;
        if($GLB_Loopback) return $GLB_Loopback;

        $loopback = gethostbyaddr($REMOTE_ADDR);
        if($loopback && $loopback != $REMOTE_ADDR) {
         $levels = explode(“.”, $loopback);
         $ubound = count($levels);
         if($ubound – 2) $loopback = $levels[$ubound-2].’.’.$levels[$ubound-1];
        } else {
         $loopback = “[$loopback]”;
        }
        
        $GLB_Loopback = ‘abuse@’.$loopback;
        return $GLB_Loopback;
    }

    Here is how I add it to my church’s contacts page. I created a 1×1 transparent .GIF file, then put it on a place on the page where no normal human would suspect. You can view the source to see how your results vary:

    <a href=”mailto:<?php echo GetLoopback(); ?>” title=””><img alt=”” src=”/graphics/email.gif” width=”1″ height=”1″ border=”0″ /></a>

    Coming up next … for those of you getting cross-eyed with all the hyper-tech … simple site reviews … I swear (well, not really!-)

  • Honeypot for spam harvesters

    In case you didn’t know, a ‘Honeypot’ is usually a site, server, a page, sometimes even a network that is configured to draw the low-life, maggot-bearing flies that are spammers. In doing so, those setting the trap record the spammer’s IPs and user agents so they can be blocked, thwarted, poison, and other things spambots and spybots deserve.

    Mark Pilgrim showed us a version of one such Honeypot in his oft-quoted article, “How to block spambots, ban spybots, and tell unwanted robots to go to … ” … er … h-e-double-hockey-sticks. In the article, Mark shows us how to set up a page to snare those bot’s that ignore or abuse the Robot Exclusion standard. He then adds offenders to a growing .htaccess file to deny the pests access to his server.

    That was back in February. Almost half-a-year later, Merlin Mann at kung fu grippe shows us another ingenious catch and destroy method in his article entitled Honeypot for spam harvesters (now officially Project Honey Pot). Similar to an anti-spam technique for those leaving comments on blogs and bbs’ where one uses a throw-away email address built on the name of the blog and the date (e.g. hycw-21jun03@…), this article gives us a very simple PHP techinque to give spam harvesters what they want, an email address.

    Only the address they get is THEIR (the spammer’s) IP address and date sent back to them. Concurrently, the Honeypot records the IP, time and user agent to whom the address was distributed. If and when spam comes in via the harvested address, you have enough information to complain upstream, and to block that particular user agent and/or IP in the future. Pure genius I tell you!

    One caveat that the article offers, that I entirely agree with — use a throw-away domain name. Which I have. Hmmm .. perhaps a site with more than one technique? (what you don’t hear right now is the evil laughter billowing through the basement of my house !-)