Root-server switches from BIND to NSD
A Sorry End writes "It appears that one of the 13 root-servers, the core of DNS name resolution, have moved away from BIND to NSD since wednesday, Feb 19th, 2003, which is a Good Thing. Since the 26th of october 1990, all root-servers have been running BIND. According to this message, this change was designed to increase the diversity of software in the root name server system, the lack of which is widely considered to be a potential vulnerability. The nsd software has been designed from scratch specifically as an authoritative name server. It has no design commonalities with bind, the currently prevalent DNS implementation.
In addition to that nsd provides a significant increase in the performance reserve of k.root-servers.net.
NSD was developed at NLnet Labs in coorperation with RIPE."
Well.. I guess they're not in a BIND anymore!
...god, that was the worst joke ever. Someone shoot me.
slashdot!=valid HTML
Man, my company would be majorly pissed off. We don't want diversity, we want conformity!! All systems should be running one OS for ease of administration and that OS should be Windows2000. Thankfully I'm offsite and use Linux. ;-)
Anyone familiar with NSD care to comment on how secure it is? Are we diversifying just for the sake of diversifying or is it as secure as BIND?
Tuus crepidae innexilis sunt.
So previously, a vulnerability in one piece of software would allow the whole system to crash or otherwise be compromised. Now a vulnerability in one of two pieces of software will allow part of the system to be compromised. If the only risk were lack of service, this would be a good thing. However, the risk also includes providing malicious service. I could see some people wanting to redirect all DNS querries so that the result would point to some site of questionable virtue. Doing so may have just been made easier.
Having no diversity means you are ripe for an epidemic.
$#!^ happens, but why does it always have to happen to me???
As of last year, Verisign has been running ATLAS, instead of BIND, for DNS. See the story here.
I don't think the plan is to migrate away from BIND, but instead to protect the root-servers from a bind-specific exploit.
There will be years for BIND to loose it's marketshare.
The root servers are the core of what we know as the internet. We need authoritative name servers if we don't want to have to remember IP addresses, and I am happy to see that K is now finally making some move toward securing itself, even if only a little more.
:eof
If a lot of /.'ers are like me, then there are probably a lot of people who don't know the technical differences between BIND and NSD. Can somebody whack us with the proverbial cluestick as to the improvements of NSD over BIND (exempting of course, the mentioned fact that NSD was built from scratch).
I wonder what anomalies, if any, we may see from switching over. Also, as the article mentions that NSD has no design commonalities with BIND, I wonder how many of the tech personnel are knowledgable on the new system...not that a nameserver, even a root one, should be overtly complicated (except for evading DOS attacks)
This is great, but I wanted to point out that the new software does have design commonalities with bind. The way I see it, they both support the same external interface, but they have different implementations.
--sex
Very popular slashdot journal for adul
When are they going to switch all of them to monkeys typing randomly?
Hey, it worked for Shakepeare
This is the real signature
(Beats those shadows on the cave wall, don't it?)
Really, look at all the advantages of djbdns:
* free software, under the BSD license (makes it easy to redistribute binaries)
* easy package-based installer (easy to find everything, or to install djbdns in different locations)
* easy to configure with a single config file
* great support from the author, who's a really friendly guy.
Oh wait. NONE OF THAT IS TRUE. Never mind.
You are not alone. This is not normal. None of this is normal.
What they didn't tell you was that the move was mostly due to affirmative action, to ensure diversity on the Internet. Why do you think that IIS is still hanging around?
Affirmative action: More than just for humans.
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d
Diversity isn't security through obscurity, it's simply insuring that the same exploit can't be used to attack the entire system.
In particular, it means it isn't a "fork" of BIND, either in architecture or implementation. If it were a fork, it would possibly be vulnerable to the same attacks as BIND, where they share code. The whole point of this switch is to use a nameserver that does not share those vulnerabilities. I have no doubt nsd has vulnerabilities of its own, but it's far less likely that BIND and nsd share the same vulnerabilities.
I think they should replace the root dns servers with an old fashion switchboard. I envision a large room in the bowels of VeriSign "manned" by an army of women wearing grey suits with horn rimmed glasses. A dns request will come in via pnuematic tube, the operator will pull one spring loaded ethernet cable from her console and plug it into the correct corresponding jack.
While being resistant to any port based DDOS attacks, they would be DOSable by having some hunky dude drink a pepsi outside their window.
Competition is a good thing. See Intel vs. AMD, Sony vs. Nintendo, Linux vs. Microsoft.
For very high reliability software, competition is also used. For example, the space shuttle uses four sets of identical software on four sets of hardware that vote on results, with a fifth set running completely different software waiting to take over if the other fail (see Fastcompany for more details).
Also, one of the benefits of breaking up Ma Bell was that one company, with one set of software, was no longer running the telephone system in the United States.
In the long run I think this is a very good thing. In the short run, however, there might be problems.
Wow, all those acronyms are making my head spin. Sigh. What does the NSA think about the DNS servers switching from BIND to SND? Does it make thier TPS reports PDQ? I'd sure hope it uses SQL somehow too.
today is spelling optional day.
I mean if you're going to be superstitious to the point of worrying about code diversity or eyeballs-per-source-file, I think this is an issue that needs to be addressed.
Perhaps this is a silly question, but I am curious...
The article states: "K will answer either using bind8 or nsd".
How does one go about identifying which software is in use at a DNS server? Is there a piece of data transmited with the response - like with webbrowsers to indicate which version/browser was used to make the request?
Perhaps the article is talking in an abstract manner about how the server will respond, and not in a litteral way - and such a feature of DNS does not exist.
(I cant see how it would NEED to exist frankly. People want to know the IP address of the name they are looking up - not what piece of software is being used to retrieve it)
Nevertheless, I am curious.
With all of the vulnerabilities in BIND thank goodness the folks at VeriSign finally switched to something else!
$DEITY bless $NATION
The problem is not the Microsoft DNS server, it's the platform on which it runs. Windows Server OS products cannot be trusted. Period. Just as everyone that used to run MS SQL prior to the slammer exploit. How many MySQL installations were hacked by slammer?
(Just under 0%)
are you trying to imply that BIND might be dying?
...if the 14th is named bilbo.root-servers.net, and is added specifically for the purpose of breaking the bad luck.
Sorry, heavy geek moment there.
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
I wonder why they didn't switch to Dan Bernstein's DNS package (djbdns). Like all his code, it's solid as a rock, speedy, and easy to understand. Maybe it's because there's such bad blood between Dan and the BIND guys.
The DNS system is pretty buggy... Propigation time, only a few servers... not exactly perfect... good, but not great.
I wish they would start work on a replacement. Perhaps *more* of a p2p approach among ISP's. And more rapid updating, so changes take effect faster.
I think technology on the net is so much further than DNS allows us.
-- kryps
If the attack purpose is a DOS, software diversity helps in preventing that your whole system is killed by a single exploit. But if the attack purpose is to crack a machine on your network to run some trojan and/or spyware, software diversity only means that the attacker has more chances to find an hole.
Now, it would be different if they diversify the CPU, since most of the exploit code around is platform-dependent: keeping alive some Alphas to run some of the root DNS whould be wise from a security POV (although maybe not from other POVs).
Thinking of it, it would be nice if compilers could generate (randomly) different - but working - binary code from the same sources. You would have a single source to scrutinize for security holes, but generating different binaries on different critical machine would limit the risk of monoculture.
Ciao
----
FB
Wouldn't surprise me if bad blood was the reason. The IETF has made lame BIND hacks like AXFR and TSIG part of the DNS standards, and DNSSEC is a fading pipe dream, which is good, because it's the stupidest of all. Standards are supposed to be independent. It wouldn't be so bad if BIND was any good, but it really is an awful piece of junk. Hurrah for djbdns, and for nsd, and for any quality alternative to the buggy bloaty mess that is BIND.
I would rather see them pick some alternative general purpose DNS implementation and optimize it for their needs.
No longer can we say that "k" is in a bit of a bind.
Why they didn't go the whole hog though and run with Windows 2000 "Advanced" "Server"; it's got DNS - we could transition everyone to ActiveDirectory and the world would be a better place. Just imagine, attempting to surf the web and getting bounced by kerberos because of >5 minutes clock skew...
Erm!
IIRC, the large-scale attack on the root servers was a simple ping flood. Changing the software that the root servers run will not mitigate the same or a similar type of attack.
I think the internet is going to have to move to a tiered approach of trusted and untrusted networks. Unfettered access was okay when there were only a few systems connected but with millions of users, trust is something you must earn. If a network or ISP allows a user to spoof the packets they send than that network or ISP should be labeled untrustworthy and their QOS should reflect that. Legitimate users will eventually migrate to trusted nets and ISPs.
The internet should be a priveledge ala driving. If you can't be trusted with that priveledge than your access should be revoked or at least severely limited.
I'm confused on point b.
.voyeurweb.com. has 218 A records in it.
.microsoft.com. had thousands of A records. I did a recursive lookup on them once. It was funny. It's obvious there are some people over there with a sense of humor.
voyeurweb.com. itself has 14 A records, but we've had up to 22. We did overrun the packet size when we had more A records (25) in there, but only some clients were failing because of it. They could easily add another root server, without breaking things. Well, assuming everyone would update their hints. I don't think most people optimize their hints file for their location.
> dig voyeurweb.com A
;; QUESTION SECTION:
;voyeurweb.com. IN A
;; ANSWER SECTION:
voyeurweb.com. 3600 IN A 63.208.2.97
voyeurweb.com. 3600 IN A 209.247.59.14
voyeurweb.com. 3600 IN A 209.247.59.15
voyeurweb.com. 3600 IN A 209.247.59.16
voyeurweb.com. 3600 IN A 209.247.59.17
voyeurweb.com. 3600 IN A 209.247.59.84
voyeurweb.com. 3600 IN A 209.247.59.85
voyeurweb.com. 3600 IN A 209.247.59.86
voyeurweb.com. 3600 IN A 209.247.59.87
voyeurweb.com. 3600 IN A 63.208.2.23
voyeurweb.com. 3600 IN A 63.208.2.25
voyeurweb.com. 3600 IN A 63.208.2.62
voyeurweb.com. 3600 IN A 63.208.2.64
voyeurweb.com. 3600 IN A 63.208.2.84
{sigh} I think I'm hitting every posting violation today..
"Your comment violated the "postercomment" compression filter. Try less whitespace and/or less repetition. Comment aborted."
"Reason: Please use fewer 'junk' characters."
Serious? Seriousness is well above my pay grade.
The tendency to produce software which includes everything but the kitchen sink is a serious problem these days. BIND is an excellent example of that, for exactly the reasons the parent poster mentioned.
see what I mean?
That was classic intercourse!
So...
Why exactly is BIND insecure?
Seriously.
I've used BIND for years and years, never had a problem out of it. I update when need be, like I do the rest of my software and never once did anything bad come out of using BIND.
All the time, like in these comments, I hear quite a bit about BIND being insecure. What is it that makes BIND insecure?
I mean look at Windows. It's had this long reputation of being insecure, so naturally everybody assumes it still is. When really it's... oh... nevermiond.
This sig has been temporarily disconnected or is no longer in service
It's true. They didn't even look at the same RFCs... ;-)
Which came first, BIND or the RFCs?
$x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
$x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
They have some monthly and other name server statistic plots available showing the changes in traffic before and after the upgrade.
These graphs were processed using Orca.
The basis of almost all security is the keeping of a secret--whether that be a login password or the passcode to access your private key for encryption. The whole premise of security is that users with this "secret knowledge" will keep it secret. You could even keep your private key in the clear on your hard drive, relying on the fact that nobody has physical access to that hard drive.
Keeping a secret is central. Keeping that secret secret. Obscuring that secret. Security through obscurity. So the slogan ("'security through obscurity' considered harmful") is just wrong.
Now I'm going to wander off-topic in a more straightforward scenario here, but what the slogan intends to address is that, if you, say, use a secret encryption algorithm to protect your data, you have to keep that encryption algorithm just as secret as you keep your secret key, if you expect that algorithm to buy you any extra protection over, say, triple DES. And that tends to be hard.
You have to describe and encode your algorithm somewhere, and keep that secret. You can measure the number of bits it takes you to describe and encode that algorithm, and add in the number of bits of your encryption key. That's the total number of bits you have to keep secret to protect yourself.
The real truth behind this sort of scenario of the anti-"security through obscurity" meme is that you get better security through putting the same number of bits into a secret encryption key for a well-tested public algorithm than you get for splitting those bits between a secret algorithm and a secret key, because even if your algorithm isn't inferior, it's still using fewer bits of key.
So, sure, security through obscuring your algorithm is bad, because there are better places to spend your secret bits. But "security through secrecy" is fundamental--and I think it's foolish to try to distinguish between "secrecy" and "obscurity".
To tell you the truth, I just don't get this.
Why are alphas not freely redistributable when the releases are redistributable under one of the most permissive licenses? Are they worried about security? If so, wouldn't a more open audit of the code before release actually help? Are they worried about subsidizing their competition? Then Why use the BSD licence? And as far as competition goes, who is the competition? BIND? DJBDNS? I doubt that DJB will copy their code-- that isn't his style, and as far as BIND, they already have the majority market share, so even if they can only get the code in the final release, they can still add the features they want and maintain market share.
The problem I see here is that this seems inconsistant with the release licenses.I don't think this is good for open source projects.
LedgerSMB: Open source Accounting/ERP
Now I am going to dig an even bigger hole for myself, but aren't most DNS servers authoratitive for one or several domains and caching data for all the others? Why shouldn't they benefit from the optimized authoratitive code?
I guess you wouldn't like embedded Linux then, because desktop Linux has all that bloated mainframe scalabilty code that is not needed on a PDA. Of course, unnecessary weight should be compiled out whenever possible, but I don't see how refusing to reuse code without a specific reason is superior. If BIND sucks or is not modular enough, then write a nicer, more modular DNS server that covers the needs of most users. Finally, why shouldn't dialup users run a caching-only DNS server to reduce the number of lookups going over the modem? Last I checked, this was an option in Redhat.
There are two things that can go wrong with root name servers:
:-)
1- Compromise: returning bad data, etcetera
2- Denial of service
It's important to look at the failure mode, and at the effects and probability of each.
If half the root servers are compromised, there's a 50-50 chance that a user gets compromised DNS records. That means that the chance of it getting detected quickly goes up rather than down if there is no monoculture, as someone is bound to spot the inconsistency. If all root servers return bogus data, focus will initially be deflected to the source of the data (i.e., the database itself). I investigate corrupted DNS issues at least once a month (so far, never an issue on the root DNS servers, but bogus DNS data is rife on corporate and ISP name servers; and the fact that someone picks up the phone and asks me to look into an issue is testament to the fact that discrepancies are spotted more easily than all out failures).
If half the root servers suffer a DoS, hardly anyone will notice. Seeing that DoS attacks on the root DNS servers are rather common these days, I'd say diversity is a win no matter what.
And as a matter of fact, I think that attacks on DNS caches at ISP's and corporations will increase. Already spammers are taking advantage of obscure BIND features to cover their tracks. But that's got nothing to do with the root servers.
An added benefit of the NSD initiative: a piece of software written to deal exclusively with this subset of DNS functionality is inherently easier to verify by desk checking. Which will quite likely result in the monoculture shifting towards NSD eventually
I expect NSD to pan out simply because it has less "moving parts" than BIND has, and I think that is a very important consideration.
Bert Driehuis -- All I asked was a friggin' rotatin' chair. Throw me a bone here, people.
- The betas and releases of NSD are distributed under freeware BSD license
- however we require the alpha testers to:
...
(emphasis mine)This sig under construction. Please check back later.
The next limiting factor is the maximum size of a UDP DNS packet. For various reasons, this is 512 bytes.
Then, you need to have space to repeat the query (up to 255 bytes) as per the DNS protocol. That cuts down on the amount of space available. Fortunately, there is compression used in the packet, such that you can get ~8 nameservers if they're in different domains, and ~13 in a single domain (ref 'root-servers.net' and 'gtld-servers.net'), and all the addresses are 4 bytes (IPv4).
"edotrial" team?