Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Wednesday April 11 2018, @12:14PM   Printer-friendly
from the trust-but-have-no-clue dept.

The Domain Name System (DNS) is a plain-text service that lets anyone who can see “the wire” capture a user's DNS traffic and work out whether they're asking for naughty.com or nice.com. So to help enhance its privacy a group of researchers has proposed a more "Oblivious DNS” protocol.

However, as the group explained here, even encrypted DNS (for example, DNS over TLS) is still exposed at the recursive resolver (that is, the DNS component most directly connected to the client), because that server decrypts the user request so it can fetch the IP address of the site the user wants.

In other words, whether you use your ISP's resolver, or one provided by a third party like Google or Cloudflare, at some point you have to trust the resolver with your DNS requests.

[...] To get around this, Oblivious DNS is designed to operate without any change to the existing DNS. As its designers write, it “allows current DNS servers to remain unchanged and increases privacy for data in motion and at rest”.

Instead it introduces two infrastructure components that would be deployed alongside current systems: a resolver “stub” between the recursive resolver and the client; and a new authoritative name server, .odns at the same level in the hierarchy as the root and TLD servers (see image).

In this model:

  • The stub server accepts the user query ("what's the IP address of foo.com?"), and encrypts it with a session key/public key combination;
  • The recursive name server receives the request (with .odns appended) and the session key, both encrypted;
  • The .odns tells the resolver to pass the request up to the ODNS authoritative server, which decrypts the request and acts as a recursive resolver (that is, it passes requests up the DNS hierarchy in the normal fashion);
  • The ODNS encrypts the response and passes it back down to the stub, which sends the response to the client.

The authors explained that this decouples the user's identity from their request.

The recursive resolver a user connects to knows the IP address of the user, but not the query; while the ODNS resolver can see the query, but only knows the address of the recursive resolver the user connects to, not the user.

Similarly, an attacker with access to a name server never sees the user's IP address, because the request is coming from the ODNS server.

The group has posted a conference presentation from late March here [PDF], and emphasises that Oblivious DNS is a “work in progress”.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2, Interesting) by dwilson on Wednesday April 11 2018, @08:34PM (1 child)

    by dwilson (2599) Subscriber Badge on Wednesday April 11 2018, @08:34PM (#665533) Journal

    I disagree with a lot of what you said.

    If an attacker has access to your MAC Address, they are on your same network, and would have it regardless. If they are on the same network, they are between you and your stub server (as drawn) and they have the pre encrypted requests.

    My network consists of the machines running in my home, connected to my (openwrt-running) router, which is connected to the wider internet via an adsl connection to my local isp. I'm not worried about attackers on my local network. I imagine the vast majority of people are in the same boat.

    If you are trying to pitch a security concept, you need to address pedantic concerns like this because they make you look like an idiot.

    Perfect is the enemy of good. If this solution helps mitigate anyone outside my network knowing my dns requests, that's a Good Thing. Address the edge cases as they come up, don't wait for a perfect solution for everybody. Sure, that's biased towards my needs and my setup. What other metric would I use. realistically?

    If your stub resolver needs public keys to encrypt the request, you can't load balance those requests unless your share that same private key everywhere you may need to resolve.

    This difficulty in distributing infrastructure sounds to me like a great way to aggregate "sensitive" requests in one place, and require only a single key to get all they keys to the kingdom.

    Correlation attacks will be trouble, even if you assume there will be a huge flow of requests, correlation is powerful, especially given a large enough data set. Speaking of historical data, forward secrecy isn't optional in this day of national security letters.

    That sounds like a valid concern.

    --
    - D
    Starting Score:    1  point
    Moderation   +1  
       Interesting=1, Total=1
    Extra 'Interesting' Modifier   0  

    Total Score:   2  
  • (Score: 2) by insanumingenium on Wednesday April 11 2018, @09:46PM

    by insanumingenium (4824) on Wednesday April 11 2018, @09:46PM (#665564) Journal
    My comment was that they were writing about sniffing MACs being a concern when if they can sniff your MAC, they are already on your network and already have it regardless of DNS. The idea not being that I am overly worried about them being on net (though I don't think it unreasonable to build to that standard), but that their scary story of all the information they could collect didn't make any sense.

    The placement of the stub, they don't explicitly define, and this isn't a matter of edge cases, if the stub is placed on an untrusted network, this proposal provides less than zero benefit. At least without it you are potentially aware you are totally unprotected.

    The first half of my previous response was not a technical critique, but a complaint that their writing was unclear bordering on deceptive. To be clear, I also didn't explicitly state that I wasn't referring to The Register's story (which I didn't read when an academic link was available) but to the linked source [princeton.edu] and sublinked slideshow [princeton.edu]. Admittedly, someone else already pointed out there is an extension to add subnet information to DNS requests which I was unaware of, but I can't imagine the same is true of the MACs. Even given the subnet extension I am not clear on how this proposal would interact. Do these guys at Princeton not have any professors acting as advisors to point out that their summary sucks? Am I wrong to expect clarity from academic publications?

    I normally will be the first person shouting that perfect is the enemy of good with you, but if you can't write a coherent proposal, how is anyone supposed to support it?

    Security has to be well thought out, suggesting a vulnerability that doesn't exist absolutely discredits these authors. My comment wasn't that this isn't viable (though to be honest I don't see it being so at scale), but that making a security proposal that is unclear is a terrible mistake. I would personally demand anything dealing with security to be defined totally and transparently, I have seen too many implementations of well defined standards get details slightly different in ways that put people at risk.