Ten Percent of DNS Servers Still Vulnerable 170
maotx writes "Even with the uproar caused by the recent DNS attacks, a recent study shows that roughly 10% of 2.5 million DNS servers show that they are still vulnerable to DNS cache poisoning. To put that a little bit more in perspective, of that 10% discovered, 230,000 were identified as potentially vulnerable, 60,000 are very likely to be open to this specific type of attack, and 13,000 have a cache that can definitely be poisoned." From the article: "The use of DNS cache poisoning to steal personal information from people by sending them to spoofed sites is a relatively new threat. Some security companies have called this technique pharming."
Admins - Take some initiative! (Score:5, Insightful)
This is strikingly similar to the Cisco OS debacle, where a patch had been available for some time, yet Admins failed to patch their hardware on their own. Yes, it's a pain in the ass to take your network down, but look at the alternative...Hacked!
Re:Admins - Take some initiative! (Score:2, Insightful)
Pharming (Score:2)
While there are always some who fall for the most obvious scam, theses attacks are becoming more professional by the day, and no company can afford to absentmindedly blame their users (yes, I work for a company that sells anti-abuse services, we've been on the cutting edge of this for a while).
The article writer references the term "Pharming"; while DNS cache poisoning is a form of Pharming, its much bigger than that. Its basically a va
Re:Admins - Take some initiative! (Score:5, Interesting)
You are assuming the fix is a patch. I get vulnerability reports for my servers every week. The issues are never patches because I check for new patches every day. I get vulnerabilities that have no patch of any kind, yet I'm expected to somehow rewrite all of the software on the computer to fix the vulnerability. If I could do that, I wouldn't be working here. I assume that I am in the same position as most admins, I have to wait for the patches to come out and hope nothing bad happens while I'm waiting.
Re:Admins - Take some initiative! (Score:2)
Re:Admins - Take some initiative! (Score:3, Insightful)
You are assuming the fix is a patch. I get vulnerability reports for my servers every week.
And then there are patches like the last two Oracle patches which - get this - actually made it worse.
Sometimes it's a good idea to wait for them to patch the patch.
Re:Admins - Take some initiative! (Score:5, Informative)
But it's not surprising that there's still vulnerable servers out there. In fact, I'm surprised the total is so low. Aside from the few admins who just aren't doing their jobs, these kinds of things often run into bureaucracy. In many organizations, upgrades have to be thoroughly tested before release and there's standard schedules for patch cycles. An admin who wants to simply stick a new version of something on the production server may be told to wait until approval comes. That could take a while. And occasionally you'll have some crappy system that doesn't work well with the new software, and they're stuck rolling back until the problem is solved.
I had a friend who worked at a small ISP that had some serious security issues. The guy who should have been patching things "resigned"-something to do with the smell of pot lingering in his office. Anyways, the position went vacant for a little while and the task fell to the two new interns, my friend and another girl. Coincidentally they were both young women and had no experience relevant to the job, proof of quality hiring practices. To make a long story short, the (not terribly large) customer database got hacked and the company was sued. The owner, who had been heavily in debt already, vanished completely. Naturally the whole thing went down in flames and my friend didn't even get a reference out of it.
Most of you are probably sitting there thinking this story is too outlandish to be true. Haha, well, this is the internet so you never know what to trust, but you know there's places out there where things just aren't done the way they're supposed to be. It's shocking what goes on, and there will always be vulnerable servers around.
Getting it down to the numbers in the article this quickly is actually pretty good. The real lesson here is that you need to insulate yourself from the fools who won't take responsibility. Always assume 10% of the internet is out to get you, because they probably are. Hey, I don't even want to think about what 10% of slashdotters would want to do to me.
Re:Admins - Take some initiative! (Score:2)
It's not bureaucracy at all.
A patch can have the following adverse qualities
1) Bring down your systems. (Not quite as bad as being hacked but nonetheless not something that most businesses want and some simply can't afford it)
2) Break individual applications. Custom applicatio
Re:Admins - Take some initiative! (Score:3, Funny)
Maybe they are all Microsoft Certified?
Re:Admins - Take some initiative! (Score:2, Funny)
Re:Admins - Take some initiative! (Score:3, Interesting)
While, in a perfect world, admins should immediately be on top of every new patch, if I noticed a patch that I thought was just a couple of minor bug fixes, it would go on the end of the "whenever I have time" list.
Re:Admins - Take some initiative! (Score:3, Insightful)
No, it isn't. Before the IOS "debacle" it was assumed that remote code execution on IOS was impossible. It's pretty hard to compromise an unpatched system if it's impossible to execute code on it, so admins didn't bother taking down their networks to run the (mostly aesthetic) patches.
Re:Admins - Take some initiative! (Score:2)
Bind9 has been out for years now so there should have been plenty of time to make the few changes needed to the configs to make them compatable with bind9.
This is just a shot in the dark but I'm guessing any isp dumb enough to be still running bind 4 has much more serious problems than DNS cache poisoning.
Re:Admins - Take some initiative! (Score:2)
Gentoo, of course.
Oh you cu-razy kids. (Score:2)
Cool. You can share it with your LUG at the local library. Now pardon me while I return to rearchitecting an 8,000 server environment.
Re:Oh you cu-razy kids. (Score:2)
You'll be using DJBDNS instead of BIND then I take it?
Re:Admins - Take some initiative! (Score:5, Insightful)
to be patched. That was the biggest part of the problem: Cisco's
silence.
When you run services that must be up 24x7, you don't donwload every new
IOS release and load it on dozens or hundreds (or more) of devices just
because there was a new release. IOS often has more new bugs in each
release than bugs fixed; when you find a release that has the features
you require and is stable with those features running, you don't touch
it until you find a bug, require a new feature, or Cisco announces a
security problem.
I run a relatively small network, and I'm looking at having to upgrade
around two dozen devices running IOS in six cities (a number of which
require visiting an unmanned office because some things can't be
upgraded remotely) plus another dozen or so devices in our spares
inventory in two cities. I'm not going to upgrade any operating devices
until I can test new releases in a test setup. All of that takes a lot
of time, which means something else has to get pushed back.
IOS Upgrades - Be Advised (Score:2)
Re:Admins - Take some initiative! (Score:3, Insightful)
In any case, it isn't a good idea to do a remote upgrade of a critical piece of equipment when, if there
wait!! (Score:2, Insightful)
Now that's it's Bind, it's the admin's fault?
Re:wait!! (Score:2)
Not all admins... (Score:2)
Some of us are 40, with kids, houses, and other interests that make some server in a hard-to-get location with hard-to-get downtime less than appealing to patch. And then there's management's attitude towards it -- you patch, after hours, and you don't get paid. OK...
I can remember when patching all night was kind of fun. Now I call sleeping kind of fun. I get paid to do my job, but not to bust my hump doing it.
What? (Score:5, Funny)
Okay, let's have it for unclear writing!
Seriously, what does this even mean? Of the 250,000 that are vulnerable, 230,000 are vulnerable, 60,000 are vulnerable, and 13,000 are vulnerable.
Okay, that clears it up.
Re:What? (Score:2)
Re:What? (Score:1)
You beat me to the punch. 10% of 2.5 million is 250,000. While the person who wrote the article might be a good writer, it stands to reason because they are terrible at math.
Anyways, that aside, if they identified 250,000 DNS servers with their rating scale, couldn't they at least let the admins of each of the 250,000 DNS servers know? Yeah, I know I'm going t
Re:What? (Score:2)
60,000 hosts forward to BIND8, but are not themselves running BIND8. I don't know about every single other host.
13,000 are Windows systems forwarding to BIND8. This is verboten explicitly.
Things are made much harder by the fact that I'm reticent to actually exploit this many hosts.
Re:What? (Score:2)
Re:What? (Score:2)
Not Suprising (Score:2, Interesting)
It's tacyo YO!
bad math (Score:4, Insightful)
Re:bad math (Score:2)
Stupid idiots...
DJBDNS -- rocks (Score:4, Informative)
The same person also does Qmail Rocks [qmailrocks.org]. Of course djbdns and qmail is much more secure than bind and sendmail.
Re:DJBDNS -- rocks (Score:3, Insightful)
Re:DJBDNS -- rocks (Score:2)
If he gave two shit about OTHER PEOPLE he'd spend more time making the tools [not just djdns but his crypto code] actually easy to work with.
I mean it's a DNS server. I don't understand the big guffaw about it. Respond to requests on port TCP:53
Tom
Re:DJBDNS -- rocks (Score:2)
Making him the biggest megalomaniac since Captain Ahab.
Re:DJBDNS -- rocks (Score:2)
I mean it's a DNS server. I don't understand the big guffaw about it. Respond to requests on port TCP:53
Having used both extensively I'd say while BIND4 is a little bit easer to set up, TINYDNS (the authoritative DNS server in the DJBDNS suite) is easier than BIND8 or 9 to set up and (MUCH) easier to work with in a production environment.
The fir
Re:Not hard (Score:2)
I mean there is enough to DNS that it's not a 3 second job to get a good one put together.
Had I the time I'd say from scratch a competent DNS server can be written in three weeks. That's including proper user separation, all DNS queries and zonefile parsing [as well as documentation and the like].
Right now though I have two paying jobs and my LibTom suite [as well as a huge addiction to GTA:SA] that monopolize my time.
But hey, if you want to pay me the same I get at my
Re:my point (Score:2)
For example, I said I couldn't write a DNS server because I spend time on my LibTom projects
My point was that DJ doesn't care what others think of his tools because he didn't write djdns for others, he wrote it for him
Re:He probably wrote it for himself (Score:2)
That and he's a friggin comp.sci professor, you think the user interface/support side of things would come into play.
Tom
Who owes anything to you? (Score:3, Insightful)
That's what admins/geeks are. Think of the classic 'Hackers' movie, and the big admin with the password of 'God'. Admins love thier l33t Perl, C, TCL, Shell scripts because they do ever
Re:Who owes anything to you? (Score:2)
Re:Who owes anything to you? (Score:2)
Fine. But unfortunately, it has resulted in large numbers of people running his mail server unmodified without fully understanding the implications of doing so. While I don't blame him for not accepting patches to qmail, my understanding is that it has been repeatedly pointed out to him that qmail's habit of sending bounce messages it
Re:Who owes anything to you? (Score:2)
Then don't even start to count the number of systems running sendmail, courier, or exim right out of the box with their Linux installs. Don't even get me started on the number of incorrect howtos and docs all over the net about those. Don't even get me started about the security holes in sendmail. Odds are, if somebody is using qmail- if somebody
Re:DJBDNS -- rocks (Score:2)
I tried putting his personality in a file and running it, but damn if it would not resolve any names.
Then I tried using his code and ohfuck does it work SO MUCH better than the Buggy Internet Name Daemon.
I've seen Dan about for 20 years on usenet. He's always been a prick but so am I; we get along fine. Don't waste his time and he's one of the nicest and smartest people you'll meet. He does not suffer fools well.
I have no problem getting along with people th
Re:DJBDNS -- rocks (Score:3, Informative)
as for being more secure... it doesn't have nearly the same complexity and features as say, bind.
Re:DJBDNS -- rocks (Score:2)
Re:DJBDNS -- rocks (Score:4, Insightful)
Apples and oranges.
There are places where you would have to use BIND and places where you can get away with a partial implementation. If an ISP is using DJB-DNS I would recommend to stay away from it. There is a number of neat tricks in the bind cache expiration algorithm (from late 8 and early 9 onwards) which DJB has blamed unnecessary (see the BUGTRAQ archives for the discussion). While they are not necessary they are essential to ensure that operational mistakes have a limited life. That does not happen with DJB implementation as well as some other ones. So if you screw up your TTL or serial no on the zone files - this is it. Same for poisoned entries.
Further to this. DNS is the most easily upgradeable service. Clients fallback automatically and a few seconds of downtime are in the "who cares" area. In fact every ISP out there has scheduled daily mandatory reloads which update configs. Do users notice - nope.
Even further to that, there are methods to make any number of dns servers answer the same address and because DNS is stateless this can be done without any clustering crap. ISC which writes bind have done this for 7+ years. Most global telcos and ISPs do it as well.
And, in order for DNS poisoning attacks to be effective name servers usually need to have both recursion turned on and return authoritative answers. Doing this on an internet facing server is an idiocy. If your ISP does that and serves authoritative requests from the same server which is used for name resolution in clients - RUN. They have NO CLUE WHATSOEVER. If they use clustering for resilience - run even faster.
Re:DJBDNS -- rocks (Score:2)
That'a why there's instructions on the DJBDNS site to fix this. (You wrap around the serial, duh).
Even without the almost daiy BIND bugs, there's no reason to use it, ever.
Re:DJBDNS -- rocks (Score:2)
Let's assume your cache is poisoned. Someone queries your name server for your authoritative zone. You return the correct answers and for the "extra" records you return poisoned information. As a result someone sending information to a system for which you are authoritative DNS ends up sending it elsewhere. Compared to this if they are split, the authoritative answer does not contain any glue or extra records. The querying name server will have to go fetch these by itself.
Basically by running separ
Re:DJBDNS -- rocks (Score:3, Interesting)
(No, I'm not a developer or otherwise affiliated with the project - just a ver
Re:DJBDNS -- rocks (Score:2)
the problem is that there is no easy way to manage the data. there's no good frontends already available for it. whereas with tinydns you don't need one.
Re:DJBDNS -- rocks (Score:2)
Re:DJBDNS -- rocks (Score:3, Informative)
1) The rsync method of replication is very well suited for keeping multiple DNS servers synced with the exact same records.
2) I never have to worry about it or touch it
3) The CPU and memory usage are much lower than when I was doing this with BIND. In fact, it's pretty much negligible with a few hundred queri
Re:DJBDNS -- rocks (Score:2)
mark me as a troll, I don't care.
Re:DJBDNS -- rocks (Score:2)
1. It's not Free Software. That makes it useless for many people, either ideologically or practically.
2. It doesn't support IXFR. For many people (read: anyone who can't or doesn't want to run rsync, and people who don't control their peer servers), that takes it completely out of the running. Full stop. End of story.
It's equally funny to hear DJB fanboys who don't understand that a lot of people have needs over and
Re:DJBDNS -- rocks (Score:2)
2. It doesn't support IXFR. For many people (read: anyone who can't or doesn't want to run rsync, and people who don't control their peer servers), that takes it completely out of the running. Full stop. End of story."
1) In pracitcal terms - you have the source (and will never need it). This is a non starter.
2) So use DJB-AXFR. Duh.
I've yet to see some "BIND-only" situation that was a problem DJB could not
Phor God's sakes! (Score:5, Funny)
Phor phuck's sakes! I've had enough of this phreaking 733T-speak from the phucking security compaines! It was original with phreaking; it was mildly amusing with phishing; now it's just annoying.
Why not just leave the terminology as "DNS cache poisoning" and be done with it?
[/rant]
Re:Phor God's sakes! (Score:5, Funny)
-He's new sir. Guy by the name of "Daffy duck".
-You realize of course, that this means war...
OT: Your Sig (Score:3, Informative)
Re:OT: Your Sig (Score:2)
Prior art (Score:4, Informative)
Phlooding attack could leave enterprises... (Score:2)
Besides, it gives reporters a chance to attend Blackhat where they can learn the new lingo.
Oh, you're going to love this article too: Phlooding attack could leave enterprises high and dry [securityfocus.com]
Re:Phor God's sakes! (Score:3, Funny)
Re:Phor God's sakes! (Score:2)
Re:Phor God's sakes! (Score:2)
ARG!
DNS stands for (Score:1)
How can I check my own DNS configuration for this? (Score:4, Insightful)
Any good tools to (or sites to help) check for those?
Re:How can I check my own DNS configuration for th (Score:5, Interesting)
One of the possible ways to set up a DNS server is as a 'forwarder'. This means that it doesn't do lookups itself, but rather passes all DNS requests to another machine, gets replies, and then sends replies to the clients. One reason you might do this would be to distribute DNS load in a big ISP; you have a few machines that do the actual outbound DNS determination, and then the cache ripples back to the servers that are actually talking directly to the clients. DNS is fairly low-load, relatively speaking... this architecture would date from when everyone was deploying 50Mhz machines as servers. I'll call the local BINDs 'caching' servers, and the one doing the actual lookups on the internet the 'point' server.
So in and of itself, this architecture isn't a problem. But one of the features of the DNS protocol is that any server can send back more data than what was actually asked for, even data that is totally unrelated to the main query. Caching BIND servers by default trust their point server. And, when functioning as a point forwarder, BIND4 and BIND8 apparently just pass along queries they receive without checking them. The point BIND assumes that the caching BINDs are checking, while the caching BINDs assume the point BIND is checking, and the packet never gets checked for sanity at all.
So Joe Hacker snoops around... he tries to find DNS servers on your network. Once he finds one, he queries it for a name in a domain he controls. (or he initiates a connection to a webserver on the same machine, which may cause the same DNS lookup). He watches for the request to his DNS server coming from a DIFFERENT machine. That often indicates a forwarder configuration.
So he waits for his cached info to expire, and does it again... except this time, his reply packet includes extra information, "Oh, by the way, www.microsoft.com is on joes.evil.server.here." If BIND4 or BIND8 is the functioning as the master lookup in a forward configuration, it just passes along the packets it receives. And when BIND is in a SLAVE configuration, it just trusts what it gets from the forwarder. So suddenly, your whole network is connecting to joes.evil.server.here instead of www.microsoft.com. And if it doesn't work, oh well, next DNS server... this is a very low-profile attack. You have to really be LOOKING for it to be able to see it.
Apparently, the workarounds are A) don't use a forwarder configuration. There's no real need for this anymore, even a cheap 1ghz machine with a gig or so of ram will serve tens of thousands of clients. B) if you MUST use a forwarder, use BIND9 (or, presumably, DJBDNS) as your 'point' machine. BIND9 does sanity checking when it's on point.
Hopefully I got this right. I haven't been paying much attention to this before, because I (rightly) didn't think it affected me. If I'm wrong, PLEASE correct me, I hate to spread misinformation.
Re: (Score:2)
one small detail about the attack (Score:4, Informative)
What the badguy actually does is:
As DJB says, the "work around" is not to accept authoritative mappings (e.g. ns1.yahoo.com A 1.2.3.4) from anyone but yahoo.com.
Re:How can I check my own DNS configuration for th (Score:2)
That's rather long winded but the bottom line is DJBDNS will not believe any answers that don't come from the corect servers. BIND is a whore and will believe anything, even out of balliwick answers. Big problem. Well understoood for a long time.
The technique you describe above is how EK stole the internic.net domain a decade or so ago. He sent you mail, which bounced, your machine looked up up his MX record by asking his server to return the bounce, and got wrong internic.net A records when
Re:Possible Solution? (Score:2)
New term! (Score:4, Funny)
A lot of these new vulnerabilities have the "phat" theme as dictated by the industry's leading security researcher/rapper Prompt Master Chizzy. Expect an RFC soon on the new naming convention.
Re:New term! (Score:3, Funny)
Bad admins + bad webmasters (Score:1)
Re:Bad admins + bad webmasters (Score:2)
Furthermore, the use of HTTPS is not a panacea. Not all companies may like HTTPS since the underlying SSL connection will not let their proxy scan the contents of the connection. This would make it very easy for e.g. porn s
Executive board meeting... (Score:4, Funny)
CEO: So it's speculative, huh?
Exec 1: Oh, God, yes. We're talking about a totally outrageous paradigm.
Exec 2: Execuse me, but "speculative" and "paradigm"? Aren't these just buzzwords that dumb people use to sound important? [backpedaling] Not that I'm accusing you of anything like that. [pause] I'm fired, aren't I?
CEO: Oh, yes.
CEO: The rest of you start thinking up a name for this funky attack. I dunno, something along the line of say... farming, only more dangerous and 1337.
Exec 1: So, Pharming okay with everybody?
All: [reclining in their chairs] Yeah...
Re:Executive board meeting... (Score:1, Flamebait)
Well excuse me. Go back to MTV.
Re:Executive board meeting... (Score:2)
Common sense... (Score:1)
In the Admins' Defense (Score:2, Informative)
What about DNS Cache Snooping? (Score:4, Interesting)
Check out my paper about this, its called DNS Cache Snooping [sidestep.pt], and allows for a bunch of interesting tricks. It afects most of DNS Server/Cache combination implementations and is triggered by an extremely common misconfiguration, one that allows for the whole of the internet to use a given DNS server as their primary DNS server.
Luis Grangeia
Re:What about DNS Cache Snooping? (Score:2)
--Dan
Email redirection (Score:4, Interesting)
Re:Email redirection (Score:2)
Can I get a list? (Score:4, Funny)
Good way to test whether my server is vulnerable? (Score:2)
Given that it is djbdns, I'm not worried, but having a test suite for vulnerabilities is a good thing.
Hardly New (Score:3, Interesting)
I'm betting there's still a problem with admins that don't want it fixed, because they have given permission, or worse, for their servers to be used thus with some plausible deniability. Arranging this was the origin of the second-gen spammers.
Re:Hardly New (Score:2)
--Dan
More info from the researcher's web site (Score:2, Informative)
This powerpoint presentation has some details: http://www.doxpara.com/Black_Ops_Of_TCPIP_2005.pp
The internet license (Score:5, Interesting)
I'm thinking of something along the lines of a radio operator's license with different levels and qualifications and all that. Then people who are said to be administrators of web hosts and stuff like that would be required to posess a certain level of knowledge (and potentially a certain level of pay?) and ability. If it is shown that they do not demonstrate the proficiency required for some reason, then their license should be revoked or downgraded.
Furthermore, certain levels of internet "safety" and "security" ratings should be given to all software, firmware and hardware products that run on the public internet. The consumers can be better aware of the quality of the products they use on the internet. (Examples might include a rating for MSIE having a lower security rating than Firefox because of that whole ActiveX thing... or a Linksys firewall/router giving the users behind it a certain rating of security over a Windows box connected directly to the public internet.)
Not only would we be able to leverage these sorts of licenses and ratings to have a better and safer internet, but we would be able to have a more conscious set of consumers who just might be able to look at the label to determine that product A is better than product B. They will no longer need to get an education in how the internet works just to get their home computers on the net... and we'll be less likely to deal with all those spambots and zombies out there as well.
Re:The internet license (Score:2)
Re:The internet license (Score:2)
I agree. I'd like to nominate Microsoft to make this happen. But lets instead of having an arbitrary license, tap this into DRM! That way, our DRM-enabled trustworthy computers will be allowed to install/run certain types of trusted apps depending on the DRM-based license of the operator.
Of course, we won't have un-trustworthy computers *cough*everything non-Windows Vista*cough* on this new world order Internet because well.. that would just screw everything up. And pigs will fl
Re:The internet license (Score:2)
Coincidence? (Score:2)
Hmmm. (Score:2)
So that really describes a timing attack on nam
Re:Hmmm. (Score:2)
setup your own secure bind9 server (Score:2)
"Secure Bind 9 Example"
http://crashrecovery.org/bind9.html [crashrecovery.org]
Robert
Re:Simple solution... (Score:3, Interesting)
Sure. But if you use forwarders who run BIND4/BIND8 you've still got the same problem. If you're connecting directly to the root servers you're contributing to their unneccesary overload and bypassing the heirarchal nature of the DNS system.
Re:Simple solution... (Score:2)
Primary the root for yourself. Duh. Double duh.