Maintaining a Publicly Available Blacklist - Mechanisms and Principles
badger.foo writes "When you publicly assert that somebody sent spam, you need to ensure that your data is accurate. Your process needs to be simple and verifiable, and to compensate for any errors, you want your process to be transparent to the public with clear points of contact and line of responsibility. Here are some pointers from the operator of the bsdly.net greytrap-based blacklist."
You end up losing mail and who is it for someone else to filter what I can and can't see. There is a delete button for a reason. Use it.
Use greylisting as a first defense - easily configurable in postfix, and it reduces the amount of spam dramatically. This relies on the behavior of the sender, rather than someone else's opinion of them.
I want to delete my account but Slashdot doesn't allow it.
And while we're at it, some hints on using a public blacklist with regards spam. The correct way is not to trust the blacklist 100%. Instead, you use it as one part of a comprehensive scheme (part of this complete breakfast). So, you may use a dictionary, and for every word in the dictionary you add 10 points (viagra, v1agra, v14gr4, etc.). You can use SPF and if it doesn't match, then that's worth 50 points, and if it's not there, maybe 20 points. And if the domain or IP address is on a blacklist, maybe 40 points. You assign the points as you like. Then, if you hit 100 points, you mark the email as "probably spam".
But you never reject or mark an email spam just because it's on some blacklist. That's just stupid. Now I'm off to RTFA.
----
OK if you have your own blacklist (perhaps a list of domains or IP addresses that have sent email to a catch-all, or that have fallen into a honeytrap), then you do what you want. But you probably should date entries and remove old ones (if they do not misbehave again), in case a legitimate user is now at that location.
HELP MY ACCOUNT HAS BEEN HACKED BY AN ILLIBERAL ART STUDENT SET TO DESTROY THE INTERWEBZ!
GNAA are old school. I think I prefer the new school. Homosexual, Non-White ('cause white folk suck!), Association of the fucking Universe. You can't join though, that shirt really doesn't go with those shoes.
. Your process needs to be simple and verifiable,
The process can't be simple because spammers are endlessly creative with how they try to get past the filters. And if it was verifiable, that would mean published -- and once published, becomes useless. Spammers can simply test their latest creation against your filter, and now you effectively have given them a way to bypass your entire process, making it worthless.
and to compensate for any errors, you want your process to be transparent to the public
The administrative process can be transparent, but the technical process, as outlined above, cannot.
with clear points of contact and line of responsibility.
The problem here is; how do you tell the liars from the rest? Responsibility is fine, clear points of contact are fine, but what's the criterion for delineating between 'spam' and 'marketing'? How about between 'spam' and 'opt-in' that the user no longer wants? How about between... you get the idea. There is some grey here, and odds are good you're going to find someone doing something with a legitimate and ethical reason, that by all appearances... isn't. And then you're going to make a decision based on those appearances (because what else can you go on?) and then you're going to burn a bridge down.
These problems can't be solved with a handwave and a post on an internet forum.
#fuckbeta #iamslashdot #dicemustdie
most of your spam problems will be solved by simply blocking all email from those countries except for your business partners
First off, because spam is so bad (80% of messages by some counts) just about ANYTHING that ANYONE does will reduce their spam (ignoring false positives).
Secondly, READ YOUR LOGS!
There are broad categories of how different groups use email (and their email infrastructure). So what works great for one group sucks for a different group.
So I recommend something like SpamAssassin where you can tweak the settings to what works for your specific circumstances (and the people/groups that you send/receive email with).
Greylisting is great, except when you try to greylist gmail servers. So know how the tools work and think about situations where they would fail and then adjust the knobs to deal with those potential failures.
And if you don't accept EVERY email sent to you (I don't) then make sure that you customize the rejection notice so that the SENDER can contact you if his server includes the rejection message (which most of them do). I include my phone number.
In my opinion, the more knobs that you can adjust the better it is.
in addition to making sure your data is accurate.
... though they are not publicly-accessible; only accessible to our customers. Here's how they work:
Using our reputation-collection protocol, we receive a constant stream of events from our customers. An "event" is something like "IPv4 address x.y.z.w sent to a nonexistent recipient" or "IPv6 address abcd::1234 sent something that a human voted as spam"
Currently, we have a database of just under two billion events. Once an hour, we go through our database and categorize IP addresses as:
The whole system is 99.99% automated. The only manual intervention is when some requests delisting. If it seems that someone was the victim of a compromise and has now cleaned up his/her machine, we delist it for 45 days which is long enough for all events from that IP to expire. Then it goes back into consideration for automatic listing.
This system works really well. We have about 3.75 million IPv4 and 3300 IPv6 addresses on our lists; those are machines for which we have confidence that there's enough data to categorize them.
The reason I state this, is because I've been building up a successful blacklist (albeit NOT vs. "spam" or phishers only, but more vs. online threats in maliciously scripted sites &/or servers known to serve up malware etc.):
Yes, thus - I'd have to say, based on 15++ yrs. of experience doing it (based on reputable & reliable sites listed below) that yes, MOST of it comes from those nations (& that's why I said "unfortunately" in my subject-line - since I know their people are NOT "all bad", just that they have a lot of what you state going on).
I base this not only on "opinion" but HARD DATA too!
From a list I apply in custom hosts files of over 1,967,147 such bogus sites/servers that grows by almost 200 - 2,000 such sites each day, approximately (that *might* strike some of you as "fantastic", but it's real)... I get my data from the following sites:
http://hosts-file.net/?s=Download
http://www.malwaredomainlist.com/hostslist/hosts.txt
http://www.malware.com.br/cgi/submit?action=list_hosts_win_0000
http://winhelp2002.mvps.org/hosts.htm
https://spyeyetracker.abuse.ch/monitor.php?filter=lastupdated
http://safeweb.norton.com/noscript/
http://mirror1.malwaredomains.com/files/
http://hostsfile.org/hosts.html
http://www.malwareurl.com/
http://sysctl.org/cameleon/hosts
http://pgl.yoyo.org/as/serverlist.php?hostformat=hosts&showintro=1&mimetype=plaintext
http://www.safer-networking.org/dl/
http://amada.abuse.ch/palevotracker.php
AND, then I import, consolidate, sort, & deduplicate that data using this application I wrote to do so:
---
APK Hosts File Engine 5.0++ 32/64-bit:
http://start64.com/index.php?option=com_content&view=article&id=5851:apk-hosts-file-engine-64bit-version&catid=26:64bit-security-software&Itemid=74
---
Why? Simple - it works, & on the SIMPLEST PRINCIPLE OF ALL: What you can't touch, can't hurt you... & I never was the type of person to just "sit around & take it" - I do something about it, IF possible. The above IS my possible, and it is possible & works (in combination with all I put into this security guide I authored from 1997-2007, here -> http://www.google.com/search?hl=en&output=search&sclient=psy-ab&q=%22How+to+SECURE+Windows+2000/XP%22&btnG=Submit&gbv=1&sei=PjNrUcDVGpSz4AOJuIHQDQ that works on the BEST THING WE HAVE GOING: "Layered-Security"/"Defense-in-Depth"... & yes, it works! )
APK
P.S.=> Any questions?
... apk
Another board I frequent, using the Drupal blogging software, is currently being overwhelmed with spam.
.
Our beloved webmaster is experimenting with Mollum spam retarding software
This software does have its faults, as it is hindering the posting of links by some of our most informative posters. A blogsite's "good folk" need to be whitelisted so they can post links unhindered. More often than not, the most informative content of a post is a link.
Anyone else having a blogsite overrun with crap might want to look into this. I do not think its the ultimate solution, but its a start.
"Prove all things; hold fast that which is good." [KJV: I Thessalonians 5:21]
Better solution: Stop trying to force email to be a reliable and concurrent source of information. It has never been reliable nor has it ever been concurrent protocol. Check the default settings for sending email - try every hour for up to 5 days before giving up. Wait one day before sending a trouble report.
That email now generally DOES deliver results in almost real time is no excuse to think it will ALWAYS deliver in real time. If your communication either critical and/or time sensitive, then email is the wrong tool to use.
Necessity is the plea for every infringement of human freedom. It is the argument of tyrants; it is the creed of slaves.
What you describe is SpamAssassin. The scores are learned by feeding a lot of ham and spam and finding the right balance. Of course you can (re)train the scoring with your own ham & spam, and add your own rules, etc.
Perl Programmer for hire
0. Find a system that makes their blacklistings publicly available.
1. Send it SPAM.
3. See what gets through, send more of that from those IPs.
4. Tweak the stuff that didn't get through until it does.
2. V1AGR4 !!
5. Rotate IPs from your pool of thousands that aren't blacklisted.
6. Prophet.
7. GOTO 0.
Protip: Your public blacklist is part of the fucking problem, fool. Either use a whitelist if you can (+trust graphs), or if you can't then let those blacklisted contact you if they care.
I'm OK with opt-in filters for users although I agree that forced filtering and/or filtering in general is bad. Despite that it stops a lot of spam it's not OK to censor users. If the spam filtering people weren't a bunch of nut jobs and system administrators actually made some effort to solve the problem these issues could be fixed. We need a working group to come up with a means of authentication and simplify / automation of it so systems administrators and end users don't need to know the nitty gritty details. Spam then could be eliminated altogether for all intensive purposes. There would be a lot of upset parties (legit advertisers, businesses, etc) but so what. You don't even have to eliminate anonymous users or mailing lists with anonymous authors/users. You just need a little bit of authentication and standardization of opt-ins.
Botnets generally don't use IP addresses, but host-domain names instead: Why? For the purposes of "fastflux" botnet construction
So - what's that? Well, put it THIS way:
The "infamous they" (law enforcement or other authories online etc.) take 1 out?
Well, no big deal!
Just "jump" to another node on your botnet in some 'enslaved' system(s) you have in it! This is done @ the botnet C&C (command & control) server master level.
(Which of course, your botnet's infestors on clientrigs in it also has the ability to 'serve up' your bogus 'site(s)' from it & ANY ONE OF THEM...).
* Doing it THAT way's is a LOT tougher to "take out" than hardcoded IP addresses is why...
(Which as you yourself noted, are fairly EASY to blacklist out, & from a LOT higher levels than ISP's even)...
You MAY want to read more, here -> http://en.wikipedia.org/wiki/Fast_flux
I've been building my list since 1997, & see what gets used MOSTLY from 15 or so reputable sources for my data (and the rest comes from security articles from sources such as threatpost or sophos, among others).
Now - THAT bugged me to NO end, as to WHY they used host-domain names instead of IP addresses mostly, but once I got wind of that about a decade++ ago? It made sense...
APK
P.S.=> That answer anything for you? I hope so... & it's also WHY I use what I wrote here -> http://yro.slashdot.org/comments.pl?sid=3647643&cid=43447983 in custom hosts files (which work against bogus adbanners, maliciously coded sites/servers, or hosts-domains serving up the same or malwares even, and yes, spammers/phishers too)...
... apk
Six years ago, I wrote milter-greylist. At that time I thought some kind of distributed spam traps would be useful. I wrote software for a P2P network of mail servers that exchange signed information on messages reaching spam traps. The thing turned to be useless: greylisting alone was enough. Today, greylisting with variable delays depending on sender reputation from various DNSRBL is still enough, even is the DNSRBL information is not very reliable: an error just means an extra delay in delivery.
If email were supposed to be instant, nobody would have invented Instant Messaging. Email is designed to be reliable instead of instant. That's exactly why instant messaging was invented 15 years after email was, because email was not, is not, and is not designed to be instant. It's designed to be efficient and reliable. Read the protocols some time. Have a look at how send mail works. Queues to send, queues to relay, queues to receive.
Use greylisting as a first defense - easily configurable in postfix, and it reduces the amount of spam dramatically. This relies on the behavior of the sender, rather than someone else's opinion of them.
Greylisting use to be HIGHLY effective against botnet spammers, the majority. However, as always, the spammers saw the defense mechanism and upped their game. Greylisting is now largely ineffective against spam. Most spammers now retry delivery and Spamassassin is again grinding under the load.
What now?
Gmail does a very decent job at this, but if I wanted to, what is a global Linux/Mac/Windows (maybe not all 3), solution. Seems this Unix fellow only has this spamd utility to run on BSD or your own mail server.
I'm running a physical server in a colo. Unfortunately about 6 months back my server sent a burst of about 5,000 spam messages. I was getting bounce messages on my admin account but with no information as to which account was breached in the bounce message, I'm scrambling about on my system, first shutting down mail, then trying to figure out if I was even sending it or just a victim of a one of the spam tricks. I did see entries in my logs, but I wasn't able to track it down to a specific account. During a second spam run about a month later, being suspicious, I had a copy of all outbound messages being backed up and discovered there was a script someone had uploaded into the root directory of a forum my wife has set up for her hobby. I tracked it down from one of the headers in the spooled messages. I found and killed the script, then did some further work to lock down the directory to keep it from happening again. So far, according to logs, nothing further has gone out.
Unfortunately now I'm on several (dozen?) dns blacklists with no apparent way to get back off. Some will let me query their records (and sure enough I'm in there; I'm not disputing that) but many others just leave it in place based on the bounces I'm getting from pretty much every mail service. So even though I've found the problem and killed it, it seems I can never send e-mail from this IP again.
I've investigated moving to a different ISP but none really give me the control I want (I have full root access to a physical system). And pricewise it's less expensive than a virtual machine at Amazon.
[John]
Shit better not happen!
I say that because I'd like to meet the folks who run dnsorbs in a dark alley, and *not* call 911 when I leave the alley.
Their "method" of blocking the mailserver of the domain, rather than the domain, *may* have been reasonable 15 or 20 years ago. However, I've been blocked a number of times... several times while living in Chicago, and they blocked the Chicago roadrunner mailserver... which supplied 'Net access to about HALF OF THE CITY OF CHICAGO. These day, I get blocked becuase they decide that my hosting provider's mailserver is the source of spam... when they're one of the very large hosting providers, with hundreds of thousands of domains, which penalizes everyone there, and there is nothing the rest of us can do (and the hosting provider does their best, but there are real world limits).
mark
Jeremiah Cornelius http://slashdot.org/comments.pl?sid=3581857&cid=43276741
We know it's you doing it Jeremiah Cornelius http://slashdot.org/comments.pl?sid=3581857&cid=43276741