Slashdot Log In
Fight Spam With Nolisting
Posted by
kdawson
on Mon Jan 22, 2007 10:08 PM
from the noncompliant-spambots dept.
from the noncompliant-spambots dept.
An anonymous reader writes with the technique of Nolisting, which fights spam by specifying a primary MX that is always unavailable. The page is an extensive FAQ and how-to guide that addressed the objections I immediately came up with. From the article: "It has been observed that when a domain has both a primary (high priority, low number) and a secondary (low priority, high number) MX record configured in DNS, overall SMTP connections will decrease when the primary MX is unavailable. This decrease is unexpected because RFC 2821 (Simple Mail Transfer Protocol) specifies that a client MUST try and retry each MX address in order, and SHOULD try at least two addresses. It turns out that nearly all violators of this specification exist for the purpose of sending spam or viruses. Nolisting takes advantage of this behavior by configuring a domain's primary MX record to use an IP address that does not have an active service listening on SMTP port 25. RFC-compliant clients will retry delivery to the secondary MX, which is configured to serve the role normally performed by the primary MX)."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Oblig. (Score:5, Insightful)
Your post advocates a
(x) technical ( ) legislative ( ) market-based ( ) vigilante
approach to fighting spam. Your idea will not work. Here is why it won't work. (One or more of the following may apply to your particular idea, and it may have other flaws which used to vary from state to state before a bad federal law was passed.)
( ) Spammers can easily use it to harvest email addresses
( ) Mailing lists and other legitimate email uses would be affected
( ) No one will be able to find the guy or collect the money
( ) It is defenseless against brute force attacks
(x) It will stop spam for two weeks and then we'll be stuck with it
( ) Users of email will not put up with it
( ) Microsoft will not put up with it
( ) The police will not put up with it
( ) Requires too much cooperation from spammers
( ) Requires immediate total cooperation from everybody at once
(X) Many email users cannot afford to lose business or alienate potential employers
( ) Spammers don't care about invalid addresses in their lists
( ) Anyone could anonymously destroy anyone else's career or business
Specifically, your plan fails to account for
( ) Laws expressly prohibiting it
( ) Lack of centrally controlling authority for email
( ) Open relays in foreign countries
( ) Ease of searching tiny alphanumeric address space of all email addresses
(x) Asshats
( ) Jurisdictional problems
( ) Unpopularity of weird new taxes
( ) Public reluctance to accept weird new forms of money
( ) Huge existing software investment in SMTP
( ) Susceptibility of protocols other than SMTP to attack
( ) Willingness of users to install OS patches received by email
( ) Armies of worm riddled broadband-connected Windows boxes
(X) Eternal arms race involved in all filtering approaches
( ) Extreme profitability of spam
( ) Joe jobs and/or identity theft
( ) Technically illiterate politicians
( ) Extreme stupidity on the part of people who do business with spammers
(x) Dishonesty on the part of spammers themselves
( ) Bandwidth costs that are unaffected by client filtering
( ) Outlook
and the following philosophical objections may also apply:
( ) Ideas similar to yours are easy to come up with, yet none have ever
been shown practical
( ) Any scheme based on opt-out is unacceptable
( ) SMTP headers should not be the subject of legislation
( ) Blacklists suck
( ) Whitelists suck
( ) We should be able to talk about Viagra without being censored
( ) Countermeasures should not involve wire fraud or credit card fraud
( ) Countermeasures should not involve sabotage of public networks
( ) Countermeasures must work if phased in gradually
( ) Sending email should be free
( ) Why should we have to trust you and your servers?
( ) Incompatiblity with open source or open source licenses
( ) Feel-good measures do nothing to solve the problem
( ) Temporary/one-time email addresses are cumbersome
( ) I don't want the government reading my email
( ) Killing them that way is not slow and painful enough
Furthermore, this is what I think about you:
(x) Sorry dude, but I don't think it would work.
( ) This is a stupid idea, and you're a stupid person for suggesting it.
( ) Nice try, assh0le! I'm going to find out where you live and burn your
house down!
Re:Oblig. (Score:4, Insightful)
Parent
Re:Oblig. (Score:4, Interesting)
First, at least some botnets will hit secondary MX-es first. The reason for this is because one person too many out there think that the secondary MX gets invoked only when the first one fails and do not put full sets of antispam software on it.
Second, as far as detecting SPAM is concerned the fact that a system has tried your first MX is valuable information. So while the first MX may not accept the message it should still be available to record the attempt. As a result, if you have multiple level different priority MX-es you can vastly improve on standard greylisting. The first MX resets with the usual "greylisted for 300 seconds, come again". After that system expects that you appear on the second, third, etc in the correct order and try on all MX-es of equal value before going up. In other words your connection pattern should follow the one of a normal MTA. Zombie writers are too lazy to do that (and that takes too much resources as far as they are concerned) so they fail the test and get their greylist timeout pushed up. Normal MTAs get their greylist timeout adjusted down and may even be allowed in on one of the last MX-es. I have done that using exim/mysql and I know a few other people who do that as well (trivial actually). In fact, looking at my mail logs it looks like yahoo does something similar for receiving mail and I can bet that they are not the only ones.
Parent
Re:Oblig. (Score:5, Interesting)
> (x) It will stop spam for two weeks and then we'll be stuck with it
There is another anti spam technology called (doubleverify?), if a message smells like spam the smtp server rejects it saying unavailable and waits for the sender to send it again (an hour or so later). For people who use it it works fine, but people who use it are in the minority, thus spammers won't bother writing new systems that keep track of what was rejected etc. They appeal to the (cheap) masses.
Same here, unless this becomes widely popular few spammers will adopt it. Thus there's a chance for this to work (hopefully, unlike doubleverify this is not patented)
Parent
That's "greylisting". (Score:5, Informative)
It's been pretty much defeated now because so many spammers have their machines try to hammer the message through until it does go through.
I'm using greylisting right now and the only advantage is that many times a spammer will end up on an RBL during the 15 minutes that I'm refusing his messages.
Remember, the spammers have, effectively, unlimted bandwidth and unlimited processing power at their disposal.
Parent
Re:That's "greylisting". (Score:5, Interesting)
I sincerely doubt that most of them would ever try more than the primary MX when delivering mail either.
Non-complience with the standards by email handling programs just makes it easier for the spammers by taking away a postmasters anti-spam tools
Parent
Re:That's "greylisting". (Score:4, Informative)
A better solution would be to ignore the problem, because those appliances are broken and need to be replaced or fixed no matter what.
Parent
Re:That's "greylisting". (Score:4, Informative)
However, I still believe that the best way to handle this situation is by not working around it. When users complain that a good fraction of their mail gets bounced for no apparent reason, there may be action. When you implement a workaround, things will remain as they are.
This does not only affect greylisting. I have seen bad SMTP bugs in NAI's virus checker, "SurfControl E-mail Filter", "logsat spamfilter for ISP", and another spamfilter whose name I forgot. tried to issue bug reports via their support system. It often is near impossible to submit a bug report when you are not a user of their product, and once you get through they are completely uninterested when you are not Microsoft or Sendmail. Pointing them to the RFC does not work at all, they fix bugs by the "if it delivers mail then it must be OK" paradigm.
Parent
Re:That's "greylisting". (Score:4, Informative)
see: http://it.slashdot.org/comments.pl?sid=132222&cid
From the FAQ (http://www.olympus.net/doubleVerifyNL):
DoubleVerify gets two chances to automatically identify mail. When mail arrives at our mail server the first time our server requests the sending mail server to send it a second time. Spammers rarely comply. Legitimate mail servers typically resend the mail about fifteen minutes later. Once OlympusNet receives mail the second time, it immediately delivers that mail and continues to immediately deliver mail from that sender. The DoubleVerify process works invisibly and is handled automatically by the mail servers.
Parent
Re:That's "greylisting". (Score:5, Interesting)
From the link...
--snip log example--
This spammer got stuck for 47 minutes. Current spamd sets its socket receive buffer size to one character, forcing the sender to send one TCP packet for each byte of data, even if its a non-compliant "dump and disconnect" mailer. Of course, the spammer nearly immediately tries to retransmit the spam. Repeatedly.
Parent
Zero Spam is easy... (Score:4, Interesting)
*If* you are serious about getting rid of the spam then just do it. The technical part is readily available.
I deployed that almost a year ago and never looked back. I still see the occassional spam in a
mailing list folder because those go through unfiltered for obvious reasons but I couldn't care less.
My inbox has been spam-free since then and that's what matters.
I don't quite get why people are still bothering with greylisting, spamassassin, razor, dcc, bayes and
the ilk. I tried them all and they're more trouble than it's worth. You get false positives, false negatives,
it's a stupid game that you can't win.
Parent
Re:Oblig. (Score:5, Funny)
Parent
Re:Oblig. (Score:4, Funny)
Dear Partner,
My name is Sgt James Clayton. I need your help in keeping the money that we moved from Ba'qubah in Iraq safe. We moved this money some months ago to a Security Company in Italy. You know the funds are legal and it is oil money. we want to move the funds from Italy now to a secure place or location. Can you provide that? The total amount is US$25 Million dollars in cash. This money is in cash and we want to move it to you as soon as possible. Mostly $100 dollar bill notes.Total of US$25 Million dollars. So your share for helping me is US$12.5 Million dollars.Will you help? The whole process is simple and straightforward. I am still in iraq and i will be discharged soon but no one knows when this War will be over. I dont want to take any chances of loosing the funds. That is why we must act now.We are sharing everything 50/50. This is a legitimate transaction. If you are interested, i willprovide you further details and instructions. Please keep this confidential. We can't affo
rd more political problems. Can i trust you and will you help? Waiting for your urgent and positive response. Please send your full contact details so that i can reply you back asap. If you have any questions please feel free to ask, I look forward to hearing from you.
Yours Truly,
Sgt James Clayton.
Parent
Re:Oblig. (Score:5, Insightful)
Mail should not be silently discarded (except in the most extreme circumstances). Reject it. Rejecting a mail means that the receiving MTA returns an error code (in the 5xx range) to the sending MTA, so that the sending MTA may bounce (which it won't do if it is a zombie, so no scatterback).
Parent
Yep Funny (Score:4, Funny)
1. Please select format:
( ) In soviet Russia
(x) The same old form on spam subject we're tired to see here
( ) Some comment on female parts
( ) Suggesting you/slashdot_readers are virgins
( ) Will it run Linux?
( ) Cowboy Neal
2. Are you:
(x) Meant to be funny
( ) In a bad day, trolling
(x) Being authoritative on this subject
(x) Expecting to be modded up
( ) Agreeing with the news
(x) Trying to piss over something people might think it's interesting or relevant
3. Include "I'll be modded down for this but...."? (Y/N)
No
Thank you for submitting your message to the Slashdot forum.
Slashdot Quick'n'simple Form: The easy way to show people how smart your are!
Parent
Address Book (Score:3, Interesting)
One for mail addressed to someone in your mailbox.
One for everyone else.
90% of my spam problem would be solved by this simple recipe.
Re:Address Book (Score:5, Interesting)
Flowchart:
Parent
Re:Oblig. (Score:5, Insightful)
Those statements could be refering to their use as open relays though.
Parent
Re: (Score:3, Informative)
Whiney Mac Fanboy is a subscriber. They (subscribers) get to see the articles before us mortals. First post isn't hard when you can reply to the article before the article is available to the unwashed masses.
Re:Oblig. (Score:5, Funny)
We salute you, Hormel marketing, our spam overlords.
Parent
Re:MOD PARENT UP +5 THE FUNNAH (Score:5, Insightful)
The second time, I thought it was "ho-hum".
After hundreds, maybe even thousands, they are just plain lame.
The only good thing about them is that you instantly know that you can skip over them and not miss anything at all.
Parent
Temporary Solution (Score:5, Insightful)
Re:Temporary Solution (Score:4, Interesting)
I used to received about 6 million spams a day across 3 relays for this domain.
I removed all MX records for the domain, and the hostnames have nothing to do with the domain (so A record lookups won't help), but 30 days later I still was receiving over 2 million spams a day. After about 6 months the number really started falling off.
Parent
Spammers often try secondary MX's. (Score:5, Insightful)
The more machines you have to maintain, the more likely you are to focus your efforts on the most critical ones and just let the other slide. Spammers are happy to exploit this.
Parent
Re:Temporary Solution (Score:4, Funny)
Parent
Re:Temporary Solution (Score:4, Informative)
This means that servers *must* be RFC-compliant to deliver mail to a no-listed server - they must try to deliver to servers in the published order, and must try at least two.
The big advantage with no-listing is that if the sending server immediately tries the secondary after the primary fails, here is almost no delivery delay.
The big disadvantage of course is that an RFC-compliant spammer gets almost no delay either.
Parent
Re: (Score:3, Informative)
Re: (Score:3, Insightful)
Not only do most spammers not pay for ba
Short Term Solution (Score:5, Insightful)
1) It's bad netiquette, and a lot of people don't like that, including myself and I'm sure many other administrators.
2) It's an artificial "defense" that is easily circumvented because the rule is obvious. It's security through obscurity with the added suck that there is no obscurity.
3) It's solving a symptom and not any of the actual problems (e.g. hosts being compromised to send spam).
Thanks, but I'll pass.
funny (Score:4, Funny)
Funny, I fight afternoon meeting schedulings in almost the same way. Just specify a primary time that's always unavailable.
OT - Re:funny (Score:4, Funny)
When I worked overnights, I had a similar system.
Boss: We need to talk.
Me: Great. What night would you like to come in?
Boss: No, I mean you should stay late.
Me: But you don't come in until 9, and my shift ends at 7.
Boss: But it's important!
Me: Why is it always about your needs. Your need to have a meeting. Your need to get a decent night's sleep. What about my need not to sit around for two hours on the clock waiting for you to show up, surfing the web, all the while getting paid one-and-a-half my regular pa...okay, fine, you win.
Then, when I became the boss years later, I would always show up at the beginning of the night shift to talk to the employees, and then go to the bar. It made the employees feel noticed and made my superiors think I was motivated. Turns out my best defense against assholes like me is actually having been me.
Parent
I run a mailserver, this is a bad idea (Score:5, Insightful)
Dumb idea. You're better sending all your domain mail to gmail, using their spam filtering, and then pulling it from there.
I run a high volume mailserver, this is a bad idea (Score:5, Interesting)
We have thousands of domains pointed to our mail servers and secondary MX servers. Looking at the long run stats, I'd be tempted to completely disregard this technique.
When we take a primary down for maintenance, the secondaries and alternate primaries (same weight MX) see the load almost immediately.
I second the opinion that if this has any effect, it's only for low volume applications, with few/one domain.
We generally see more hits straight to the secondaries by spammers hoping for less rigorous checking. It would be interesting to profile IPs connecting to secondaries without being seen at the primary assuming a primary is always available - I bet that a very high percentage of these connections to secondaries could be viewed as spam.
The problem remains that most tricks of this sort - including greylisting - are eventually circumvented by spammers once the trick gains critical mass. Lets not forget that there are a lot of broken, yet not open relay, mail servers out there. Good engineers and administrators quickly find that Jon Postel's words ring true with their customers "Be liberal in what you accept, and conservative in what you send." - don't let your RFC enforcing configuration be responsible for delaying/blocking the delivery of that big contract your PHB was waiting for!
Parent
Re:I run a high volume mailserver, this is a bad i (Score:4, Informative)
I run a fairly low-key server, which I only use for my family, so I am not sure how relevant my data is.
I remember at one point last year checking on the usage my backup MX gets and was surprised to see a lot of mail coming through it. Surprised because my primary server is (almost) always available. Upon a closer inspection I was astounded by what I found: all the email that came through the backup MX was spam for the past year was spam. No exceptions!
Certainly, mine is an extreme case, but I think the trend is very clear.
Parent
Won't work. (Score:5, Insightful)
However, this idea would have been *great* six years ago. Once the developer invents a time machine, he's got the spam problem licked for at least a week!
This is bullshit! (Score:3, Funny)
There is more spam than penises needing enlargement, dammit!
I cant believe this is allowed to go on. How long did it take for callerID and no-call lists to get here? How long before we start putting these people in jail!
No more bandaids, lock these fuckers up!
Re: (Score:3)
Re:This is bullshit! (Score:4, Insightful)
Spam is NOT free speech. You cant come into my home screaming penis ads at me without getting your ass kicked, so why should you be able to do it into my mail server?
Parent
Re:This is bullshit! (Score:5, Insightful)
You need not open your mail to have your resources (bandwidth, disk space, processing power) consumed by spam. I work at a major telecom company running the edge mail servers, along with another full time engineer. Of the 12 million emails we get a day, about 100,000 are legitimate mail. The rest is just spam, and it uses up the bandwidth that could've been resold to customers, it uses up the disk space on the expensive mail servers we bought a few months ago, hell it forced us to buy those expensive new servers in the first place. I figure, just in the extra salary (if not for the spam one guy would be enough to handle the load), having to upgrade perfectly adequate five year old servers, and buying licenses for anti-spam products at four different levels of mail delivery throughout the enterprise just to keep our users from being deluged with useless garbage, the company has spent about $200,000 last year, and will spend about the same amount this year. All because a bunch of asshats want to force our employees to read their idiot advertising, using our network resources to push their message.
That's not free speech, that's theft. And that's never been legal.
Parent
Attacks on 2ndary relays (Score:3, Informative)
Since in our case, the 2ndary MX was a dumb sendmail relay only without knowledge of the user DB, it shot the traffic load out thru the roof with bounces to junk spam that, because they couldn't be rejected during the actual delivery attempt, hammered our backup relay.
This is just a dumb idea.
Some spammers target secondary MX first (Score:5, Insightful)
Based on watching a few corporate spam sites and even stuff which reaches my private, never-posted addresses, *much* of the spam could be eliminated by moving non-Windows clients. I'm not just talking about zombies. Some of the spam I see hits lists of addresses which are valid and include very difficult to guess addresses inside the company. Once somebody inside your company, or a buddy of yours is rooted, your previously private address is out there; I've never had this happen via any route but a Windows user. Of course, people who CC: everybody they know with idiotic crap instead of BCC: make this problem much worse.
Oh, and please stop with the lame form letter responses to these articles. It was cute once, long ago. I know at least five people will have posted them by now. Damn spammers.
buh (Score:3, Funny)
Of course, the same might be true of legitimate senders, as well....
And WHY won't google rent out Gmail's filters? (Score:4, Insightful)
Not as good an idea as it sounds (Score:4, Informative)
Spammers IGNORE the MX priority (Score:5, Insightful)
What's with the breakage to fight spam? (Score:3, Insightful)
They will respond (Score:4, Interesting)
Many people were already using this trick, probably hoping it wouldn't show up as lead story on slashdot.
In some ways, selfish ways, it's like the story of the two hikers who face a bear. The first hiker immediately sits down and starts putting on his running shoes. The other says, "What are you doing? You can't outrun the bear!" The first hiker says, "I don't have to outrun the bear. I just have to outrun you."
Many spammers, faced with a failed attempt at sending mail, do not bother to retry or try other MX. Instead, they just move on to the next target in the list, since trying a new target is just as easy as retrying an old target. No real difference to them. But it means you just push your spam attempts onto other people who haven't elected to bend the standards to divert the spammers.
The "good" spam sending programs run many threads, timeouts don't punish them, their limit is more the bandwidth. Attempts to divert spammers onto others who have not tried the tricks should create an ethical question. Are we just arranging for the bear to eat our friend?
The only solution... (Score:3)
Nolisting + Port Knocking? (Score:4, Interesting)
Instead of blocking the connection to the primary at a firewall or using an "unused" IP address, the primary SMTP server could give a greeting banner and then immediately return a "temporarily unavailable" status code (and cache who was connecting there).
In other words, an RFC compliant MTA should be connecting to the higher priority host as defined by DNS first, then fail over to the lower priorty host, in order. If an MTA tried to connect directly to the secondary MX first it could be rejected with a temporary failure status code which a spammer is likely to ignore. It would require the SMTP receiver to keep a cache of who had connected to what IP addresses within a certain time period which would eat up some memory depending on traffic load. We already cache reverse DNS lookups and RBL lookups, so it could probably be done.
With this setup you would have two MX records for your primary mail server that your SMTP server would be active and listen on. It would just track the order of connections to ensure that the remote MTA was following the rules before it allowed the source to get past the greeting banner.
I for one... (Score:4, Insightful)