Why spam can only be managed, not ended

Summary: Years ago when I was still a bit more naive, I thought we could end the spam dilemma if we would simply implement domain-level sender authentication using digital signatures.  In fact when David Berlind wrote  "Why spam could destroy the Internet" in November 2002, Berlind quoted me saying that every domain's official SMTP server should digitally sign each message to prove the email came from that domain.

Years ago when I was still a bit more naive, I thought we could end the spam dilemma if we would simply implement domain-level sender authentication using digital signatures.  In fact when David Berlind wrote  "Why spam could destroy the Internet" in November 2002, Berlind quoted me saying that every domain's official SMTP server should digitally sign each message to prove the email came from that domain.  SenderID and Yahoo's DomainKeys came out around 2004 gave me the satisfaction of knowing that I wasn't alone in calling for domain-level authentication and DomainKeys is very similar to what I was proposing in 2002.  The difference is that I proposed using standard commercial digital certificates from commercial Certificate Authorities to distribute public keys whereas DomainKeys used DNS to publish its public key information.

I was so sure at the time that if we could only get people to use this system we would surely stop spam.  Microsoft's Bill Gates gave me some company in 2004 when he proclaimed that "spam will be a thing of the past in two years' time".  As it turns out, we were both wrong and naive to say that we can stop spam because it's like saying you can stop crime and the most we can ever hope for is to manage it to tolerable levels when there are determined adversaries who will do anything to get around any barrier you can put up.  I am coming clean on this now because there are still so people who believe that stopping spam is simple and that if it isn't stopped, it's must be the fault of the major ISPs and corporations for dragging their feet.

My colleague David Berlind blamed the spam problem on the big-four email vendors and declared rDNS (reverse DNS) and maybe SPF (Sender Policy Framework) the solution.  Now I'm certainly not trying to belittle David Berlind because his heart is definitely in the right place.  In fact, I'm essentially saying that Bill Gates and I were wrong to say that say that spam could be stopped and that it's about time my colleague David Berlind takes a good hard look at the problem and stop implying that spam could be stopped if only we did XYZ.

The fundamental challenge here is that we're will never stop spam because we will never go to the pure white-list model where we will only accept email from verified entities.  In fact there's the little problem of human rights we have to deal with because words can get you imprisoned or executed in many countries.  I never gave much consideration to this issue in the past but I've given it some thought over the years and I've given in to the legitimate need for anonymous and decentralized email.

Why charging for email to stop spam is just plain dumb One of the most commonly floated ideas for stopping email spam is that if only we charged a postage fee for every email ever sent, then the cost of spending spam would be so outrageous that it would deter spammers.  Not only will it not work, but there is the risk of abuse by some larger ISPs to charge users and legitimate companies for sending legitimate bulk email under the justification of stopping spam.  Why bother charging honest people for email when you can simply fine the bad apples and leave everyone else alone?For one thing, spammers don't send the spam directly; they have their hijacked botnet armies send it for them.  These are personal computers (and some servers) that have been taken over with malicious software by criminal.  If anyone is going to pay, it will be the owners of those computers who pay.

The second most obvious thing that proponents of the email postage idea missed is that if you actually had such a massive billing scheme in place, it would have to have every sender registered with their credit card on file and every email ever sent had a digital signature that proves it was sent by the purported sender.  If this were the case, you would have already stopped spam without charging a dime for any emails because you can slap them with a massive fine if they ever dared send spam.  Why bother charging honest people for email when you can simply fine the bad apples and leave everyone else alone?

<Next page - The key to managing spam is reliable white-lists

The key to managing spam is reliable white-lists

[Updated 4:40PM - Revised wording for clarity] So what do we do about spam?  Well for the most part it is already being managed relatively effectively when a good SMTP gateway solution is in place.  When you look inside your Hotmail or Gmail inbox, almost all of the spam is shoved in to the spam folder (which can be quickly flushed) and rarely does spam make it to the inbox.  Everything that we're certain is spam is rejected outright and everything we're unsure of will end up in the user's likely spam folder.  The user will then skim the spam folder with human eyes and save any legitimate messages and empty the rest with a few simple clicks.

Some of the key criteria for ranking emails as likely spam is to check whether a message is bulk or not using a centralized checksum database, heuristics, IP blacklisting, keywords, and a few other things.  These methods are pretty much universal in the anti-spam industry but the way it is implemented means the difference between having a very good spam catch rate along with very low false positives versus poor catch rates with high false positives.  The bottom line is that I might see 2 or 3 pieces of spam make it to my inbox and 1 legitimate email in the spam folder and I'll simply flush the spam folder after I spend 3 seconds skimming the subject lines.

What remains a problem is the occasional false positive where good email is lost.  My worst fear isn't getting 2 or 3 spams in my inbox but losing legitimate email to the spam filter before the message ever makes it to my computer and that's where the white-list becomes critical.  So to make the system better and mitigate false positives where good email gets filtered, we need a reliable white-list of trusted senders that we will always accept and we'll use software algorithms to perform statistical analysis to filter non-white listed email based on a large number of criteria.  The challenge is to make the white-list as encompassing as possible while keeping its integrity.

The biggest problem with email right now is that there is no reliable white-list mechanism in place since relatively few email domains have implemented DKIM (IETF standardized version of DomainKeys).  I left out SenderID because it lacks non-repudiation and it breaks email forwarding which are two deal breakers in the creation of a trustworthy white-list.  Breaking email forwarding is a deal breaker for many organizations so that's one major strike against SenderID.  But what would be a travesty is if large ISPs could bully small businesses in to paying thousands of dollars a week to send legitimate email Non-repudiation is critical in enforcing proper behavior among white-list participants since you can't send a piece of spam to someone and claim you didn't send it because your digital signature is on the message.

If an email to me came from a SenderID domain from the official SenderID-designated SMTP servers and it contained spam, what can I do about it?  Nothing since I have no way to prove it came from that domain short of having a trusted third party monitor my mail infrastructure and witness the spam coming in.  If the email came from a DKIM domain, I have all the proof I need in the email itself because it contains a digital signature that only the legitimate mail server could have generated and I don't need any witnesses.  If I were a small business that relied on sending out tens or hundreds of thousands of legitimate bulk mail, I would be happy to put up a $1000 bond that I would forfeit if anyone can submit a piece of spam with my mail server's DKIM signature and I would be kicked off the white-list permanently.  But what would be a travesty is if large ISPs could bully small businesses in to paying thousands of dollars a week to send legitimate email.

<Return to top>

Topics: Collaboration, Microsoft, Security

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

138 comments
Log in or register to join the discussion
  • But bot nets can use white listed computers

    What is to prevent a computer that you have white listed from becoming owned by a bot net? It seems to me that being on a white list is one more piece of evidence about the trustworthiness of a computer/user. If your white lists are found (by the user) to be 99% of spam, then you have strong evidence. But that should be combined with other evidence (e.g. results of a Bayes filter). The resulting evidence can be rigorously combined with Bayes theorem to give probabilities of each email being spam or 'ham'. This would also be a way to use third party black lists, e.g. SpamHaus. If you know that they are 99% accurate in identifying spam, then you can use that fact as one more piece of evidence. This approach might also help SpamHaus when the are sued, since they can claim that they are not blocking anyone, they are merely providing lists that have a strong correlation with spam. In this model, being placed on the SpamHaus list doesn't equal being automatically blacklisted.
    shis-ka-bob
    • Then you lose your bond and get kicked off the list.

      If you can't secure your computer to stay off someone's botnet, then you lose your bond and get kicked off the list. Part of being a TRUSTWORTHY whitelist and the responsibility to keep your computer TRUSTWORTHY. If you want the privilige of being trusted, then you need to earn your turst.
      georgeou
      • > Permanently < off the list?!

        That's what you wrote in the Comment:

        "If I were a small business that relied on sending out tens or hundreds of thousands of legitimate bulk mail, I would be happy to put up a $1000 bond that I would forfeit if anyone can submit a piece of spam with my mail server?s DKIM signature and I would be kicked off the white-list permanently."

        You were right that stopping spam is like stopping crime.

        White listing would become valuable, so stealing it would be a goal of the crinminals. Bet on them succeeding, at least for a time.

        So, not wanting to inconvenience, even put a legitimate company out of business, the actual rule would be a requirement that a hijacked sender be fixed. Which would make the criminals' advantage temporary on any given machine.

        But a large number of temporary advantages is sufficient for crime to pay.

        I suggest you see the reason for the failure, but still don't want to admit that spam can't be stopped, or even slowed appreciably.
        Anton Philidor
        • No, more money to get back on the list

          You lose the bond and you gotta pay a lot more money to get back on.
          georgeou
          • The solution is really much simpler than that...

            I am really surprized that the people who are losing money over spam haven't stepped up to the plate. The internet infrastructure is used to spam. The internet providers, and infrastructure owners should publish the companies who are employing these spammers. Advertise their names and actions everywhere. Make the use of spam a business death sentence. When the well dries up for the spammers the problem will solve itself.
            Information_z
      • trustworthy is relative

        Lets take the case of a large high tech company. They may have hundreds of thousands of users. They probably have highly effective, but still imperfect, controls in place to prevent computers in their domain from being owned.

        What level of trustworthy would they have to achieve? You could express this in 'sigma'. Perhaps they can be a five sigma organization in this regard. You could set up white lists at different 'sigma levels'. Then admins could specify what sigma level of spam they would accept.

        But this sort of characterization is what I was talking about with the use of Bayes' Theorem. You have a quantifiable, but non-zero level of spam. You can still improve your final 'sigma level' if you combine white listing with other tools in a statistically valid way (e.g., Bayes factors).

        Zero is never an acceptable defect rate because we don't live in a perfect world. So we need to define acceptable risk. That means a statistical, not an absolute, approach.
        shis-ka-bob
        • Good point, that is the challenge that needs to be addressed.

          The user that wants to be trusted would have to be willing to either pay a fine (credit card already on file) or put up a bond if they send spam (willingly or unwillingly). If they're not willing to do that, the ISP would simply not mark them trustworthy. Of course not many users are willing to go this far and it would be the highest level of trust. We can think of this as the "gold" users.

          You would need something that's in between where user who have non-free email accounts simply agrees to immediate account lockout if they send spam even if they've paid their fees. If they want to get their email back, they have to pay a fine.

          Then the last category would be anonymous free email accounts like GMail or Hotmail. Here we're pretty much at the mercy of Google and Microsoft to suspend suspicious accounts as soon as they come up. Even though we have authentication and non-repudiation in place, its trustworthiness is heavily reduced but still better than nothing. At least Microsoft and Google do some internal policing where they limit the crap you can send out.
          georgeou
          • Expensive solution...

            ?that will inherently be problematic.

            Having a forwarding address to your Internet Provider is an easy way to list the spam. The Internet Provider (along with help from the owners of the infrastructure) can then list the websites and companies profiting from this kind of advertising.

            Educating internet users about the problem and who is supporting it should eliminate the problem. The IP can e-mail people daily with a list of companies profiting from circulating spam. No one will want to be on this list. Companies will no longer use spam to sell. Spammers will go out of business.

            It is my opinion that this will be a cheaper and more effective way of reducing and eventually eliminating spam.

            Take the incentive away from pushing e-mail onto people.
            Information_z
      • addressbook virus; was Re: you lose your bond and get kicked off

        What about the infamous "Address Book virus" --it takes over your address Book and
        sends itself to all your correspondents -- that I have fallen victim to myself and been
        blacklisted for by moronic servers? The time to clear it up and you are b***ed s being
        a spammer...
        mandehu@...
  • How about smarter ISPs?

    How about solving the problem like this:

    1. ISPs wake up and realize how much SPAM is costing them and how much it is angering their customers.
    2. ISPs notify customers that their computers are "own3d" and cut off Internet connectivity of computers in the botnet armies.
    3. ISPs tell the users to get their computers cleaned up in order to be reinstated to the network. Until then, "no Internet for you!"
    4. Businesses and other large organizations do the same with their networks.

    Would this somehow not work?
    bidemytime
    • re: smarter ISPs

      great points, although I wish it were that simple.
      1) isps have enough to do; sadly there is no motivation for them to now monitor computers that are on their networks.
      2) own3d computers face the same issues with virus companies; being the footprint changes constantly.
      3) saying "no internet for you" means no profit for the isp; which is never going to happen
      4) see 3.

      it's really about targeting the companies that employ the spammers. make it too costly for them to do business and they are out of business. (see my reply for more details)

      it is great that you have passion about the issue of spam
      ace101pub@...
    • The cost for 3 probably out ways the cost of 1

      In order to implement 3 you need to have a number to call to get your internet connection back on. So the cost of beefing up the help desk will probably exceed the cost of the transmission of spam.
      mrOSX
      • out what?

        ?
        lysdexia
    • Perhaps

      When ISPs wise up and outlaw Windows (pre-Vista?) computers (because that's where the bots live) can they survive with only Vista. Apple and Linux users?
      I expect we can see that Vista sales have finally taken off when AOL can do that.
      epcraig
    • Funny you say (smart) ISP's

      Because smart or even ethical ISP's & organizations do the following:

      Allow port 25 to their mail server(s)
      Allow port 25 from their mail server(s)
      deny port 25 everywhere else

      And if every organization did this we would not have to worry about viri or botnets, but just the blatant spammers which spamhaus and other RBL's could take care of.
      Suicida|
    • But they do...

      ISPs,at least some of them, do tell users that they are sending bulk e-mails, it's just that the bar is to high, but that might be part of a solution. What if the ISP simply notified people that they are using port 25, even a little. If my computer started to send e-mail, even for a ledgit reason, I would want to know. (for one thing I would want to know how it got by the firewall and the router). Maybe someone has an app to do just that, monitor ports and jump up and say "Hey you! do you know that that screen capture program you loaded is sending e-mails?"
      peterlamonica
    • its so easy when youre not knee deep

      so you run an isp and you implement those rules?
      consider this: i work for an isp, not a major one, but one that is local to our state. we disable accounts if they have been owned and are sending spam/worm activity/virus activity. the customers get angry and call in to get the issue resolved. we help over the phone 2 times to try to clean up. if a 3rd time happens, theyre offline until they can take the computer to a shop or have a technician come in and clean it.

      we also use spam/virus filtering on our servers and there are still customers getting spam.

      now, one spam filter i would like to see is the one when im driving, i keep seeing spam all over the place as i look out the windows of my car.
      i dont watch tv anymore because it seems for every 5 minutes of commercials, there are about 2 minutes of actual programming.
      i went out and checked my postal mail, there were a bunch of ads to someone named resident. clearly, resident doesnt live there, so i shouldnt be getting their mail.
      linuxoverwindows
    • Disallow Port 25

      Simple Solution?
      1) ISP's worldwide blocked all port 25 traffic by default
      2) Insist that those wanting port 25 access machines that have valid MX records before the port is opened.
      3) All others must send mail via ISP servers.
      The Results?
      1) No SPAM Bot armies
      2) Mail senders would be 100% traceable, so they can be prosecuted for abuse
      grunter_z
  • target the companies EMPLOYING the spammers, NOT THE SPAMMERS themselves

    I too have discounted charging for emails and SMTP authentication for a few years now. Spammers will always find a way around this. However, the REAL way to stop spam is to target the companies employing the spammers, not the spammers themselves.

    Do this by publicizing or capturing the company's contact information and FLOOD them to increase their usage costs. Market capitalism (ie. increasing the costs associated with spam/marketing decreases demand to use spam) will drive the source (companies using spammers) to stop using spam - and hence significantly decrease spam. The ONE thing that stays constant is how to contact the companies using spam; as it is not cost effective to change their phone number and postal address. When an company employs spam, they would be entered into a system and bombarded with 800 calls from a bot, driving up their usage costs (since 800 numbers are charged on a per minute basis). In addition, when they have automatic fields to capture address and credit card info, you flood it with useless information (even if there is credit card authentication there are EASY ways to pass this), knocking it offline and making too much data to sift through.

    Point is, if there was an organization that did this, no companies would spam because it would end up COSTING them money. Target the companies EMPLOYING the spammers - NOT the spammers Do this and you'll solve the problem.

    However the probability of this message being just another piece of "feedback" that will be swept under the rug because no-one of competence will read it and hence do anything about it is probably pretty high. ... Maybe someday someone (or public consciousness) will take this suggestion to heart and DO something about it.
    ace101pub@...
    • Two things

      1. Isn't this fighting illegal activity with more illegal activity? Having a bot make 800-number calls *must* be against the law.

      2. Even though this message is in a feedback section, it is always valid to use such forums to suggest and explore ideas. Good ideas almost never go here to die, and many have come from here and flourished.
      bidemytime