Discussion:
VeriZon FR between 7:16am - 8:08am Today
(too old to reply)
Nai`a
2004-07-14 23:15:05 UTC
Permalink
Anybody else have problems?

Aloha mai Nai`a!
--
"Micro$oft Delenda Est." http://www.lava.net/~mjwise/
Dan Birchall
2004-07-15 03:48:52 UTC
Permalink
Post by Nai`a
Anybody else have problems?
You already know my answer to that. I'm still trying to figure out how
the VZ FR issue managed to also affect my ability to *phone* LavaNet...
--
Dan Birchall, Hilo HI - http://dan.birchalls.net/ - images, words, technology
Angela Kahealani
2004-07-15 07:20:55 UTC
Permalink
Post by Nai`a
Anybody else have problems?
...not with the FR...

...however... for many months I have an unresolved problem with sending
e-mail to verizon customers (@verizon.net) from my own SMTP server on a
DSL circuit provided by VeriZon, but on the other end my ISP is LavaNet
not Verizon. I still have been unable to determine if Verizon is
blocking just my particular IP, or the whole netblock of LavaNet hosted
DSL IPs.

My incoming e-mail is handled by LavaNet's SMTP server, but my outgoing
SMTP server on my DSL line is firewalled from any external access. I'm
guesstimating that Verizon might be trying to test my SMTP server,
finds no response, and decides it's a SPAMmer to block. There is
nothing in RFCs that requires incoming and outgoing SMTP servers to be
the same.

Anyone have any clues?
--
Copyright 2004 Angela Kahealani. All rights reserved without prejudice;
UCC1-207. All information and transactions are non negotiable and are
private between the parties. http://www.kahealani.com/
Dan Birchall
2004-07-16 01:03:33 UTC
Permalink
Post by Angela Kahealani
Post by Nai`a
Anybody else have problems?
...not with the FR...
...however... for many months I have an unresolved problem with sending
DSL circuit provided by VeriZon, but on the other end my ISP is LavaNet
not Verizon. I still have been unable to determine if Verizon is
blocking just my particular IP, or the whole netblock of LavaNet hosted
DSL IPs.
My incoming e-mail is handled by LavaNet's SMTP server, but my outgoing
SMTP server on my DSL line is firewalled from any external access. I'm
guesstimating that Verizon might be trying to test my SMTP server,
finds no response, and decides it's a SPAMmer to block. There is
nothing in RFCs that requires incoming and outgoing SMTP servers to be
the same.
Anyone have any clues?
My parents are on VZ-BellAtlantic.net back east. VZ's mail servers that
handle their stuff tend to sporadically flake out for a week at a time
and just accept no mail. Hasn't happened lately, but at least a couple
times a year, I'd say.
--
Dan Birchall, Hilo HI - http://dan.birchalls.net/ - images, words, technology
Nai`a
2004-07-16 02:14:40 UTC
Permalink
Post by Angela Kahealani
...however... for many months I have an unresolved problem with sending
DSL circuit provided by VeriZon, but on the other end my ISP is LavaNet
not Verizon.
VeriZon uses a "CallBack" system.

If the 'mail from:' email address is not deliverable by the server in
question, VeriZon will 450 the email till doomsday.
Post by Angela Kahealani
I'm guesstimating that Verizon might be trying to test my SMTP server,
finds no response, and decides it's a SPAMmer to block.
Yup.

Aloha mai Nai`a!
--
"Micro$oft Delenda Est." http://www.lava.net/~mjwise/
Jason Forester
2004-07-16 06:58:35 UTC
Permalink
Post by Nai`a
VeriZon uses a "CallBack" system.
Not on topic, but I've had amazing results with greylisting
(specifically 'postgrey' for postfix). Works wonders
if you run your own mail server. Not sure how well it
scales to the ISP level... but check this out:

Before: 50 spams/day to my account, SA catching 40 or so.

After: 1 spam/day, SA has caught them all so far.

So, in three weeks, I have received zero/0/*absolutely*
no spam to my personal inbox.

*ahhhhhh*

- j
Rich Kulawiec
2004-07-16 16:43:11 UTC
Permalink
Post by Angela Kahealani
...however... for many months I have an unresolved problem with sending
[snip]
Post by Angela Kahealani
Anyone have any clues?
Perhaps. I *can* at least report that Verizon is doing something that is
not only breathtakingly stupid, but which actively assists spammers. It's
possible that this is the source of your problems.

To explain:

Verizon has put in place one of the dumbest "anti-spam" setups that I've
ever seen -- and I've seen some pretty dumb ones. What they do is this:
when an incoming SMTP connection is made to one of their MX's, they
allow it to proceed until the putative sender is specified, i.e. they
wait for this part of the SMTP transaction:

MAIL From:<***@example.com>

Then they pause the incoming connection. And then they start up an
*outbound* SMTP connection from somewhere else on Verizon's network, back
to one of the MX's for example.com. They then attempt to verify that
"blah" is a valid, deliverable address there. Since most people have
long since disabled SMTP VRFY, they actually construct a message and
attempt delivery with RCPT. If delivery looks like it's going to
succeed, they hang up this connection (which is rude), and un-pause
the incoming one, and allow it to proceed. If delivery looks like
it's going to fail, then they also hang up the connection (still rude),
un-pause the incoming one, and reject the traffic.

This also means that if the MX they try to connect to is (a) busy
(b) down (c) unaware of all the deliverable addresses (d) something else,
that they'll refuse the incoming message.

Oops.

This is bad for a whole bunch of reasons: two of the more obvious ones
are (a) it's a pathetic "anti-spam" measure because ANY forged address
ANYWHERE will do, and (b) it doesn't scale. Add to that (c) it abuses
RCPT because apparently Verizon is unwilling to use VRFY and to accept
the decision of many mail server operators to disable it. Oh, and (d) the
behavior of their probe systems is nearly indistinguishable from that of
spam-spewing zombies, which don't obey the SMTP protocol either.

But there's a not-so-obvious reason that this goes beyond mere stupidity
and into the realm of active support for spammers.

A lot of people, including me, are blocking particularly problematic
spammer-controlled networks at (a) our border routers (b) our firewalls
or (c) our mail servers. In other words, we not only won't accept mail
from them, we won't even allow them to connect: we're blocking all IP
traffic from them. This prevents them from spamming; it also prevents
them from building lists of deliverable addresses to sell to other spammers
by poking at our mail servers.

Now go back and look at what Verizon's doing. Since Verizon is doing
this testing *from their network*, spammers can easily get around all
of our blocking by getting Verizon to do the probing for them. They can
thus use Verizon to build/check their lists...and there's no way for us
to find out who's on the other side of one of these probes.

Which means that Verizon is running a free, anonymizing, spam support
service.

Oh, they've been told: one of their people was on the Spam-L list where
this was discussed in considerable depth. But AFAIK, he doesn't work
there any more; nobody else from Verizon has shown up; and attempts to
contact a real live clueful human there have run into a typical telco
brick wall.

It's unclear what can be done about this: refusing their probes will cause
them to reject incoming mail. We've debated whether we should just answer
them all in the affirmative so that the technique is rendered useless,
but that has its drawbacks too.

So for now all we can do is explain that it's causing problems and deal
with it. But if you look in your logs and find things like:

Jul 15 07:24:51 <***@gsp.org>... User unknown
Jul 15 07:24:51 lost input channel from sc014pub.verizon.net [206.46.170.58] to MTA after rcpt
Jul 15 07:24:51 from=<***@west.verizon.net>, size=0, class=0, nrcpts=0, proto=SMTP, daemon=MTA, relay=sc014pub.verizon.net [206.46.170.58]

then you can see what they're doing.

---Rsk
Angela Kahealani
2004-07-17 20:02:46 UTC
Permalink
Post by Angela Kahealani
Anyone have any clues?
- - - - - - - - - Begin Posted Message

Re: VeriZon SMTP
Date: 2004-07-17 05:32
From: Rich Kulawiec <***@gsp.org>
To: Angela Kahealani <***@kahealani.com>

Aloha. I haven't seen this show up on Usenet (here), so the mechanism
I'm using to post it is (a) slow or (b) broken. Perhaps if this doesn't
show up in hawaii.inet-providers within a few days, you might want to
forward it there (or not).

---Rsk
Post by Angela Kahealani
Anyone have any clues?
Perhaps. I *can* at least report that Verizon is doing something that
is not only breathtakingly stupid, but which actively assists spammers.
It's possible that this is the source of your problems.

To explain:

Verizon has put in place one of the dumbest "anti-spam" setups that I've
ever seen -- and I've seen some pretty dumb ones. What they do is
this: when an incoming SMTP connection is made to one of their MX's,
they allow it to proceed until the putative sender is specified, i.e.
they wait for this part of the SMTP transaction:

MAIL From:<***@example.com>

Then they pause the incoming connection. And then they start up an
*outbound* SMTP connection from somewhere else on Verizon's network,
back to one of the MX's for example.com. They then attempt to verify
that "blah" is a valid, deliverable address there. Since most people
have long since disabled SMTP VRFY, they actually construct a message
and attempt delivery with RCPT. If delivery looks like it's going to
succeed, they hang up this connection (which is rude), and un-pause the
incoming one, and allow it to proceed. If delivery looks like it's
going to fail, then they also hang up the connection (still rude),
un-pause the incoming one, and reject the traffic.

This also means that if the MX they try to connect to is (a) busy (b)
down (c) unaware of all the deliverable addresses (d) something else,
that they'll refuse the incoming message.

Oops.

This is bad for a whole bunch of reasons: two of the more obvious ones
are (a) it's a pathetic "anti-spam" measure because ANY forged address
ANYWHERE will do, and (b) it doesn't scale. Add to that (c) it abuses
RCPT because apparently Verizon is unwilling to use VRFY and to accept
the decision of many mail server operators to disable it. Oh, and (d)
the behavior of their probe systems is nearly indistinguishable from
that of spam-spewing zombies, which don't obey the SMTP protocol
either.

But there's a not-so-obvious reason that this goes beyond mere stupidity
and into the realm of active support for spammers.

A lot of people, including me, are blocking particularly problematic
spammer-controlled networks at (a) our border routers (b) our firewalls
or (c) our mail servers. In other words, we not only won't accept mail
from them, we won't even allow them to connect: we're blocking all IP
traffic from them. This prevents them from spamming; it also prevents
them from building lists of deliverable addresses to sell to other
spammers by poking at our mail servers.

Now go back and look at what Verizon's doing. Since Verizon is doing
this testing *from their network*, spammers can easily get around all
of our blocking by getting Verizon to do the probing for them. They
can thus use Verizon to build/check their lists...and there's no way
for us to find out who's on the other side of one of these probes.

Which means that Verizon is running a free, anonymizing, spam support
service.

Oh, they've been told: one of their people was on the Spam-L list where
this was discussed in considerable depth. But AFAIK, he doesn't work
there any more; nobody else from Verizon has shown up; and attempts to
contact a real live clueful human there have run into a typical telco
brick wall.

It's unclear what can be done about this: refusing their probes will
cause them to reject incoming mail. We've debated whether we should
just answer them all in the affirmative so that the technique is
rendered useless, but that has its drawbacks too.

So for now all we can do is explain that it's causing problems and deal
with it. But if you look in your logs and find things like:

Jul 15 07:24:51 <***@gsp.org>... User unknown
Jul 15 07:24:51 lost input channel from sc014pub.verizon.net
[206.46.170.58] to MTA after rcpt
Jul 15 07:24:51 from=<***@west.verizon.net>,
size=0, class=0, nrcpts=0, proto=SMTP, daemon=MTA,
relay=sc014pub.verizon.net [206.46.170.58]

then you can see what they're doing.

---Rsk

- - - - - - - - - End Posted Message

Thanks Rich...

I'm voting against Verizon's "policy" by blocking their entire set of IP
addresses to the maximum extent possible. I've given up getting any
response from them, and they've also ignored a couple of their
customers who are trying to receive my e-mail complaining about Verizon
blocking it, so I can only try to escalate the number of their own
complaining customers by blocking ALL of their customers. So... for
anyone who has Verizon as their ISP, why don't YOU complain to their
***@verizon.net of their security violations to the net at
large... forward a copy of this to them.

Dreaming of a non-hierarchical internet where peer-to-peer
communications are not sabotoged by 800lb. Gorillas.

Angela Kahealani
--
Copyright 2004 Angela Kahealani. All rights reserved without prejudice;
UCC1-207. All information and transactions are non negotiable and are
private between the parties. http://www.kahealani.com/
Dan Birchall
2004-07-17 23:41:36 UTC
Permalink
***@kahealani.com (Angela Kahealani) wrote:
[Lengthy bit from mostly Rich, I think - in summary, "Verizon is refusing
mail unless they can VRFY the sender address, this is obsolete, Bad and
Wrong, and they are to blame for everything."]

The MX for my domains has VRFY turned off. Hit it, try to VRFY anything,
and you get "252 VRFY not available" errors. Yet I have no email problems
with Verizon.

That said... there are other ways to verify that the sending HOST is legit,
such as (in increasing level of work/time/bandwidth required):

1) Do a simple DNS lookup to see if the stated hostname exists.
2) Do #1, and see whether it resolves to the sending host's IP address.
3) Check to see whether the host is a MX for the sending address's domain.
4) Check to see that the host in question is *reachable*.

In the case of my own server, all these things are true. In the case of
Angela's server, I'm not sure, given the talk of firewalls and all that.

There is, of course, another possibility, namely that SOMEBODY may want
certain people here to be "silenced." I don't know who that'd be, but
Verizon is a big corporation and doubtless has a lot of "connections,"
and with the Carlyle (or however it's spelled) Group looking at buying
VZ of Hawaii, perhaps a little more paranoia than usual is justified. ;)

-Dan (just because you're paranoid doesn't mean they're NOT after you...)
--
Dan Birchall, Hilo HI - http://dan.birchalls.net/ - images, words, technology
Angela Kahealani
2004-07-18 07:43:51 UTC
Permalink
At Saturday 2004-07-17 13:41 "Dan Birchall"
Post by Dan Birchall
[Lengthy bit from mostly Rich, I think - in summary, "Verizon is
[refusing
mail unless they can VRFY the sender address, this is obsolete, Bad
and Wrong, and they are to blame for everything."]
In the case of my own server, all these things are true. In the case
of Angela's server, I'm not sure, given the talk of firewalls and all
that.
The point is, my incoming and outgoing SMTP servers are not the same.
My incoming SMTP server IS LavaNet. I take advantage of LavaNet's SPAMMO
filtering and security with mail addressed to ***@kahealani.com,
which aliases to my account within Lava.Net. My outgoing SMTP servers
ARE (plural) on my home LAN, which go through NAT remapping via my home
router/firewall, which is actually a different IP# and domain:
kahealani.net... however, I specify my outgoing "e-mail address" as
***@kahealani.com, which is the incoming address, and they don't
match either by domain or IP#, but there is no requirement within the
internet RFCs that they SHOULD be the same. ONLY Verizon has
implemented a scheme which demands they BE the same SMTP server. THEY
are not in full compliance with RFCs which permit different servers.
Their authentication scheme IS dysfunctional.

You bring up the concept that Verizon may have political agendae, and if
they did so, I WOULD be one they might apply that against, since I have
been vocal in hawaii.* newsgroups that people using DSL circuits
provided by Verizon would be better served by LavaNet than GTE/Verizon
as their ISP on the other end of that circuit, AND, that I did in fact
bust GTE Mobilnet for fraudulent billing on cellphones contradictory to
their tariff, and also proved that Hawai'i's Public Utility Commision
was in fact in full collusion with GTE Mobilnet in that fraud. Now, of
course, the names have been changed to protect the guilty, but the fact
is they have no reason to be kind to me despite my suffering their
monopoly and using a Verizon DSL circuit. That GTE Mobilnet is now
called Verizon, and that GTE/Verizon is split into sub-companies does
not invalidate their fraud. However, this discussion indicates that
they have not singled me out, and in fact seem to be applying their
dysfunctional policy to everyone.

The OVERALL issue is:

do WE, the collective reality, support the sovereignty and equality of
each and every network participant, or are we going to submit to being
slaves of the corporations who shall dictate policy to users, and
implement a broadcast model of the 800lb Gorilla controlling the
reality and users only able to purchase a subset of rights and
functions they SHOULD be able to have, if not contractually or by
policy limited by the 800lb Gorilla corporation. From the very
beginning, the internet and UNIX have ALWAYS been about fully empowered
equal peer particpants on the internet. Verizon would force me to use
my ISP's servers (extra overhead and delay) for outgoing as well as for
incoming service, in order to comply with their policy. NO... it is
their policy which is dysfunctional, not my usage of separate incoming
and outgoing SMTP servers.

Should anyone bother to check the Block List servers, neither
kahealani.com (incoming) nor kahealani.net (outgoing) are listed as
being problem SPAMmers, but I am treated as such by VERIZON, and not by
anyone else. They are the dysfunctional oddball here. (Yes, I'm oddball
myself, but not dysfunctionally so).

It is a simple technical matter to reconfigure my linux boxen to use my
ISP's SMTP server for outgoing mail, but why should I have to? why
should I NOT directly mail from my FULLY PEER FUNCTIONAL unix (linux)
machines? I DEMAND to be treated as a peer, and not disempowered into
being a mere client of for-profit 800lb Gorilla corporations!

*... and for those who don't recognize the 800lb Gorilla Reference:

Where does an 800lb Gorilla sit?
anywhere he wants to...
as in... who's gonna argue with the beast?
Me.

I wouldn't have the ability to mail out from my DSL circuit if I was a
spammer, because LavaNet would have terminated my service if I didn't
run a clean operation. That they CAN'T verify my outgoing SMTP server
is a direct consequence of my maintaining a SECURE server that CAN'T be
abused by hijacking SPAMmers because it is ABSOLUTELY unreachable for
incoming e-mail and therefore for RELAYING e-mail as a spammer would
want to use it. It is precisely my HIGH LEVEL of ANTI-SPAM security
that Verizon is punishing AS IF I WAS a SPAMmer.

Is that more clear?
--
Copyright 2004 Angela Kahealani. All rights reserved without prejudice;
UCC1-207. All information and transactions are non negotiable and are
private between the parties. http://www.kahealani.com/
Angela Kahealani
2004-07-21 00:06:16 UTC
Permalink
At Saturday 2004-07-17 21:43 "Angela Kahealani" <***@kahealani.com>
posted <***@kahealani.com> to hawaii.inet-providers:
[...] I again forward a message from rsk, with comments by ME as:
< Comment inserted by Angela Kahealani

- - - Begin Forwarded Message
Return-Path: <***@gsp.org>
X-Original-To: ***@kahealani.com
Received: from taos.firemountain.net (taos.firemountain.net
[207.114.3.54])
by ensemada.lava.net (Postfix) with ESMTP id 2A23B30100
for <***@kahealani.com>; Tue, 20 Jul 2004 12:59:30 -1000
(HST)
Received: from gsp.org (core-balt-1-251.dynamic-dialup.coretel.net
[69.72.22.251] (may be forged))
by taos.firemountain.net (8.12.11/8.12.11) with ESMTP id
i6KMx9Ft019797
for <***@kahealani.com>; Tue, 20 Jul 2004 18:59:21 -0400
(EDT)
Received: from cougar.gsp.org (cougar [192.168.0.10])
by gsp.org (8.12.11/8.12.11) with ESMTP id i6KMwkWp019569
for <***@kahealani.com>; Tue, 20 Jul 2004 18:58:47 -0400
(EDT)
Received: from cougar.gsp.org (localhost [127.0.0.1])
by cougar.gsp.org (8.12.11/8.12.11) with ESMTP id i6KMuMuC003982
for <***@kahealani.com>; Tue, 20 Jul 2004 18:56:22 -0400
(EDT)
Received: (from ***@localhost)
by cougar.gsp.org (8.12.11/8.12.10/Submit) id i6KMuMow003979
for ***@kahealani.com; Tue, 20 Jul 2004 18:56:22 -0400 (EDT)
Date: Tue, 20 Jul 2004 18:56:21 -0400
From: ***@gsp.org
To: Angela Kahealani <***@kahealani.com>
Subject: Re: VeriZon SMTP
Message-ID: <***@gsp.org>
References: <***@malasada.lava.net>
<***@kahealani.com> <***@kahealani.com>
<***@malasada.lava.net>
Mime-Version: 1.0
Content-Type: text/plain;
charset=us-ascii
Content-Disposition: inline
In-Reply-To: <***@malasada.lava.net>
User-Agent: Mutt/1.5.4i
Comments: INPUT 207.114.3.54
Comments: HELO taos.firemountain.net
Comments: For More Information, please visit:
<http://lava.net/support/utilities/spammo/guide.html>
X-UID: 2500

[ If you wouldn't mind forwarding this for me again, I'd appreciate it.
Apparently the mail-to-news gateway I'm using at the moment doesn't
handle this newsgroup, hence the ongoing problem, which I need to go
investigate and either fix/work around. Mahalo. ]
mostly Rich, I think - in summary, "Verizon is refusing mail unless
they can VRFY the sender address, this is obsolete, Bad and Wrong,
and they are to blame for everything."]
They're not using VRFY; they're using RCPT. As I said:

"Since most people have long since disabled SMTP VRFY, they
actually construct a message and attempt delivery with RCPT."

This isn't obsolete and wrong: it's ALWAYS been wrong. VRFY was
intended to be used to confirm the existence of addresses; RCPT was
intended to be used to deliver mail, and shouldn't be used unless a
message is actually being delivered...which it's not.

VRFY worked nicely for quite a few years until spammy came along,
promptly abused the hell of VRFY with address harvesters, and thus
provoked nearly everyone into disabling it.

But this is not an excuse for Verizon or anyone else out there to
abuse RCPT in order to simulate now-disabled VRFY functionality.

[ Why do you *think* they're using RCPT? Because they have
just enough smarts to know that nearly everyone turned
off VRFY a long time ago, and that trying this approach using
VRFY would render their own incoming mail unusable. Hence their
rather amazing decision to abuse RCPT in an ill-considered
attempt to craft a workable substitute. To put it another way:
Verizon is attempting to forcibly overide the policies of
everyone who made the decision to turn off VRFY. This is just
as rude and abusive as, say, having a web spider ignore a
robots.txt file. ]

< Which, by the way is a practice of Cyveillance corporation,
< http://www.cyveillance.com/ which totally ignored my robots.txt
< -- Angela Kahealani

And while they're not to blame for everything -- just this -- one
scenario you might want to consider is what will happen when some
annoyed spammer decides to register a $5.95 throwaway domain, set
up DNS for it, point the MX records at *your* boxes, and then drop,
oh, say, 100 million *UNFORGED* messages from unique senders in that
throwaway domain on Verizon's mail servers.

That's the point at which you'd better hope that Verizon has thought
about this and has effective rate-limiting/query-limiting. Given the
obvious lack of thought and consideration that went into this in the
first place, though...I wouldn't count on it.
The MX for my domains has VRFY turned off. Hit it, try to VRFY
anything, and you get "252 VRFY not available" errors. Yet I have
no email problems with Verizon.
As I said, THEY'RE NOT USING VRFY. Would you mind re-reading my
previous message?
That said... there are other ways to verify that the sending HOST is
1) Do a simple DNS lookup to see if the stated hostname exists.
2) Do #1, and see whether it resolves to the sending host's
IP address.
Which breaks for everyone doing virtual hosting or handling mail for
multiple domains through the same outbound mail server. There's also
no requirement that a domain have any hosts in it (more precisely,
any DNS 'A' records) in order to send or receive mail.
3) Check to see whether the host is a MX for the sending address's domain.
Which breaks for a lot of people -- including some very large ISPs
often referred to by 3-letter acronyms -- because their inbound and
outbound mail servers are *not the same boxes*.

< Gee, you mean I am not the only one doing that? -- Angela

But this is orthogonal to what Verizon's doing: they're attempting to
verify that the sending USER exists. And *even if it worked* -- that
is, if it didn't scale poorly, facilitate spammer address harvesting,
and lend itself to DoS attacks, it *still* would be a poor "anti-spam"
measure because it only checks to see that the putative sender is valid:
period. (Think about it. ANY sender. Not necessarily the one who
sent the message. Not even one from the same domain or mail server.
And not necessarily one who isn't a spammer.)

More broadly: Verizon is confusing two tasks: detecting forged senders
and blocking spam/abuse: the former is only of limited use in
accomplishing the latter.

Still more broadly: there are a lot of people doing some Very Stupid
Things as part of ill-considered tactics for stopping spam. These range
from buying "anti-spam" products sold by spammers (e.g. IHateSpam) to
generating backscatter spam (challenge/response) to using filters so
badly written that they reject any message with RFC 2919 headers.
None of this is necessary: robust, simple, scalable, and free methods
which -- at most sites -- stop over 90% of spam are readily available,
thoroughly tested, and well-documented. All it takes is somebody with
a modicum of clue and a few hours. No, they're not panaceas -- nothing
is, and anyone who tells you their method *is*, is a liar or a fool --
but they do such a good job that for many people they're "good enough",
and for others they reduce the scope of what's left to manageable
levels.

So to that end -- since I'm griping about this -- here's the approach
that I use. Let me emphasize "approach": I don't do all these things
on all mail servers, and I don't do them in the exact same way, because
every server/domain gets a different mix of incoming spam. It's always
important to try to figure out what that mix looks like and tailor the
blocking to match it. But most of this will work most of the time for
most people -- and in a lot of cases it's turned out to "good enough"
that more work isn't necessary. In others, it's been "good enough"
that the additional work required is made quite a bit easier by it.

So here goes.

I run sendmail and have had excellent results using a layered approach
to blocking spam. The general idea is to use those measures which
are computationally cheapest first, in order to reduce the burden on
subsequent layers. The approach I'm taking (outlined below) would also
work for other MTAs on other 'nix systems.

I don't do any kind of content analysis: I'm in agreement with Paul
Vixie on this one: either people share our values or they don't. If
they do, then they don't allow spam to flow out of their networks (at
any rate beyond a trickle, which is probably inevitable). If they
don't, then they're either actively supporting spammers or incidentally
supporting them through neglect and incompetence -- and the reason
doesn't really matter to me, my users, my systems or my networks.

More succinctly: systems and networks which emit spam are broken and
should either be repaired immediately or physically disconnected from
the Internet until they are.

More bluntly: I'm not going to waste my resources trying to sort out
clean water from sewage. That responsibility rests with the people
whose servers and networks are spewing effluent through the pipes
designated for water.

1. I use this:

The Spamhaus Project: DROP (Don't Route Or Peer) List
http://www.spamhaus.org/DROP/

at the firewall and router level, or in the sendmail 'access' file
when that's not possible. These are networks which are 100%
controlled by spammers, so no good can come of accepting their traffic.

I've augmented this locally by a few particularly problematic networks;
for example, after reading these:

Call for Internet Death Penalty: Burstnet/Hostnoc

http://groups.google.com/groups?selm=20030708121252.GA14167%40example.com

Call for Internet Death Penalty #2: Optigate/Optinrealbig

http://groups.google.com/groups?selm=***@example.com

Call for Internet Death Penalty #3: Hopone/Superb

http://groups.google.com/groups?selm=***@example.com

their network allocations are now a fixture in my deny lists. It's up
to you, of course, but I see no reason to ever accept another packet
from them.

2. I have configured sendmail to reject all mail from domains which
don't resolve. This also blocks mail from broken mail servers, but
since there's no way to tell them to fix their DNS...

Sendmail comes set up this way by default on most systems.

3. I have set up sendmail to issue a multi-line SMTP greeting banner.
This causes a surprising amount of the malware installed on hijacked
Windows systems to fail, as it's not set up to deal with that. No
doubt future malware will cope with this, but for the last year it's
been very useful. Simple, easy, fast, and satisfying. ;-)

4. I then use a very large list of domains, via the sendmail 'access'
file. This is handy because the access file is hashed, thus lookups
are roughly O(1) no matter how large it becomes. But it's also
error-prone: in fact, during the past two years, every time I've had a
false positive reported to me, this is where I've traced it to on all
but two occasions.

But - considering that I'm using a list of about 128,000 domains and
have had less than a dozen false positives in two years, it seems like
a reasonable approach. Doubly so because this step alone blocks from
30% to 40% of incoming spam with very little overhead. Even more so
because reduces the number of DNSBL queries (see step 8) which not
only reduces my outbound traffic, but the load I impose on the DNSBLs
that I'm using.

Many domain lists are also available; here's a few of them:

http://www.rhyolite.com/anti-spam/unwelcome.html
http://www.river.com/ops/spam/bad-domains.txt
http://www.spamblocked.com/killfile
http://www.znet.com/blocked-domains.html
http://www.cluelessmailers.org/listings/blacklistbydomain.html
http://obob.manilasites.com/
http://www.carl.net/spam/access.txt
http://www.unixgirl.com/blockeddomains.html
http://www.cart00ney.org/blocklist.txt
http://abuse.easynet.nl/spamlist-usage.html

Note: if you use a large list of domains in the sendmail 'access' file,
you will want to RTFM on "makemap" and note the "-c" flag. The speedup
in rebuilding the hash is quite significant.

5. I block all mail from certain TLDs on some mail servers because
the people using those servers don't expect to ever receive mail
from those places. I don't like doing this, because it's such a drastic
measure, but it's too effective a technique not to use. In particular,
I routinely block:

.cn (China)
.kr (Korea)
.tw (Taiwan)

I'm about >this close< to adding .biz to that list.

Of course, if you actually expect to get non-spam mail from those TLDs,
you probably can't do this. This is why I don't block .br, for example:
I have users who actually get non-spam mail from there. But if you
don't, you might want to consider blocking it.

6. I use a few special-purpose rules in the sendmail access file to
take care of spam from hijacked CacheFlow servers, hijacked AOL
proxy servers, often-forged addresses, and so on. Let me know if
you want them: they're pretty simple/short/easy.

7. I use ~150 subdomains (also in the sendmail access file) which
correspond to dynamically-allocated IP space, e.g. "dhcp.example.com".
I don't like doing this either, but it's also too effective not to use:
spam from hijacked PCs on cable/DSL connections is epidemic. I have
been slowly expanding this because it seems to be filling in gaps that
the other measures are missing.

Note: in most cases, the users on such networks are contractually
obligated to use their ISP's designated outbound mail server(s). So
the only SMTP traffic that this measure blocks is (a) spam from zombies
(b) spam from the spammers' own systems and (c) mail from people who
are deliberating violating their own ISP's TOS. It's correct to say
that (c) isn't necessarily spam: but I'm not going to lose any sleep
over blocking it anyway.

< SO, are you blocking kahealani.net (64.65.108.250) for being DSL?

8. I use multiple DNSBLs, each of which targets a slightly different
mix of spam.

For starters, I use

cn-kr.blackholes.us
tw.blackholes.us

for the same reason I block .cn, .kr and .tw -- see step 5 above.
Again, this may not be a reasonable step for everyone, but check
www.blackholes.us for other available DNSBLs that might be. They have
quite a wide selection, both by country and by ISP/host. But locally,
use of those two DNSBLs alone nails about 30% of incoming spam.

I then use these DNSBLs (each listed with DNSBL name and web site)

sbl-xbl.spamhaus.org http://www.spamhaus.org/sbl/
http://www.spamhaus.org/xbl/
dnsbl.ahbl.org http://www.ahbl.org/
list.dsbl.org http://dsbl.org/
dnsbl.njabl.org http://njabl.org/
relays.ordb.org http://ordb.org/
l1.spews.dnsbl.sorbs.net http://www.spews.org/

The Spamhaus SBL+XBL combined DNSBL is a must-have. I have never had
a false positive with it. And the relatively recent addition of the
XBL picks up millions of zombie Windows machines that are spewing spam.

The AHBL augments this nicely, and includes a RHSBL (right-hand-side BL)
which handles blocking by domain name. If you don't want to do step 4,
this is a good substitute.

The DSBL, NJABL, and ORDB all pick up different combinations of open
relays, open proxies, hijacked systems, etc.

The SPEWS list -- despite what some of its less-informed critics have
said -- is very accurate and correctly targets the spam-supporting ISPs
and hosts who are directly responsible for much of the spam we all
endure.

Other DNSBLs that I have either used or am considering using:

Blitzed OPM http://opm.blitzed.org/
PDL http://www.pan-am.ca/pdl
Leadmon http://www.leadmon.net/spamguard/
SORBS http://dnsbl.sorbs.net/
FiveTen http://www.five-ten-sg.com/blackhole.php

NOTE: You should probably not use any DNSBL until you've read its
policies.

NOTE: If you intend to make heavy use of these DNSBLs, you should
probably read their web sites and see about doing zone transfers.

NOTE: I find it very useful to run a local copy of BIND in caching mode
on every mail server, since those servers often get repeatedly pummeled
from the same sets of addresses. This not only enhances performance
locally, but cuts down on the load my servers impose on the DNSBLs.

NOTE: DNSBLs are invoked sequentially by sendmail, so it's a good idea
to put the one that blocks the most spam as seen by your servers first.
But figuring out which that is can be quite an effort. For most
people, the Spamhaus SBL+XBL DNBSL is a pretty good first guess,
though.

9. I'm experimenting with using rbldnsd to run my own internal DNSBL --
replacing, in part, the sendmail 'access' file.

The upside of doing this is that rbldnsd stores information in a very
compact format with a low memory footprint; it's designed to serve
DNSBLs, not as a general purpose DNS server. Another advantage is that
keeping the information in rbldnsd would allow it to be used by
sendmail, postfix, exim, whatever. Yet another is that it can be
queried easily (contrast with the sendmail 'access' file).

The downside is that it's another process to run; it requires a
different format than sendmail (which means reworking scripts, etc.);
and it's one more step that could conceivably fail. (Mitigating this
is that sendmail presumes a non-responding DNSBL means "not listed" and
thus fails soft.)

It's not clear to me yet who this experiment will turn out, but the
early results are promising enough for me to suggest to others as a
possible course of action.

10. My best estimates of the performance of all this is that the local
measures (1-7) block about half the spam that is blocked, and the
DNSBLs (8) block the other half of the spam that is blocked. The
blocking rate itself appears to be somewhere around 93% to 97%: it
varies as spammers switch networks or domains, or activate new groups
of zombies.

The false positive rate is about 1 per month; but I need to caveat that
by stating that unreported false positives may still be lurking. (On
the other hand: my users squawk pretty loud and fast when something
goes wrong, so I don't think there are many.)

NOTE: Assessing performance of anti-spam techniques requires both the FN
(false negative: unblocked spam) and FP (false positive: blocked
non-spam). It's easy to drive either to 0; it's hard to do both at
once.

NOTE: Everybody's incoming spam and non-spam mix is different. The only
way to really figure out which of these steps will best minimize (FP,
FN) is to analyze the statistics. But 1, 2, 3, and some of 8 are
nearly always a good first guess, and in some cases, they solve enough
of the problem that further analysis/measures aren't necessary.

---Rsk
- - - End Forwarded Message
--
Non-Rsk words Copyright 2004 Angela Kahealani. All rights reserved
without prejudice; UCC1-207. All information and transactions are non
negotiable and are private between the parties.
http://www.kahealani.com/
Loading...