Exploit the possiblities

Nintendo 3DS DNS Client Resolver Predictable TXID

Nintendo 3DS DNS Client Resolver Predictable TXID
Posted Apr 13, 2017
Authored by Tavis Ormandy, Google Security Research

The Nintendo 3DS DNS client resolver library uses a predictable (incremented) TXID allowing for the spoofing of responses.

tags | exploit, spoof
MD5 | 1a36d85c0eeb7997eb6742ffbdb2d91c

Nintendo 3DS DNS Client Resolver Predictable TXID

Change Mirror Download
 Nintendo: 3DS DNS Client Resolver Library Uses Predictable TXID 

I bought a New Nintendo 3DS XL (US) with firmware 11.2.0-35U, and I've noticed that that DNS client resolved on the 3DS uses a simple incrementing TXID for lookups. This does not provide enough entropy to prevent remote attackers from spoofing responses. (For example, see MS08-020 when this happened to Microsoft, although theirs was just not very random, yours is just incrementing so it's even worse). Note: this can also work behind NAT, because that just session matches and UDP has no ISN to verify.

<a href="https://blogs.technet.microsoft.com/srd/2008/04/09/ms08-020-how-predictable-is-the-dns-transaction-id/" title="" class="" rel="nofollow">https://blogs.technet.microsoft.com/srd/2008/04/09/ms08-020-how-predictable-is-the-dns-transaction-id/</a>

In general, you need an unpredictable src port (16 bits) and dns txid (16 bits) to prevent a remote attacker from spoofing responses.

An example attack scenario would be someone using the browser to visit attacker.com.

User visits attacker.com
Attacker forces a lookup to asdad839qd.attacker.com via <img src> or whatever.
Now attacker can guess your resolver, etc.
Attacker create an <iframe> to nintendo.com
Attacker spoofs dns responses saying nintendo.com is an address he controls.
Attacker can now send javascript and read document.cookie, etc.
That's just an example, I don't know if you also download any software or anything else without authentication.

If you do, then those can obviously be spoofed and the impact is worse.


Run tcpdump on some egress point on your network.
Open the browser and lookup blahblahtest1.com, blahblahtest2.com, etc.
Notice the requests are easy to guess.

I had to send this via HackerOne, as Nintendo are not easy to contact.

<a href="https://hackerone.com/nintendo" title="" class="" rel="nofollow">https://hackerone.com/nintendo</a>

This bug is subject to a 90 day disclosure deadline. If 90 days elapse
without a broadly available patch, then the bug report will automatically
become visible to the public.

Found by: taviso


RSS Feed Subscribe to this comment feed

No comments yet, be the first!

Login or Register to post a comment

Want To Donate?

Bitcoin: 18PFeCVLwpmaBuQqd5xAYZ8bZdvbyEWMmU

File Archive:

March 2018

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Mar 1st
    14 Files
  • 2
    Mar 2nd
    12 Files
  • 3
    Mar 3rd
    1 Files
  • 4
    Mar 4th
    3 Files
  • 5
    Mar 5th
    15 Files
  • 6
    Mar 6th
    23 Files
  • 7
    Mar 7th
    15 Files
  • 8
    Mar 8th
    15 Files
  • 9
    Mar 9th
    3 Files
  • 10
    Mar 10th
    2 Files
  • 11
    Mar 11th
    1 Files
  • 12
    Mar 12th
    16 Files
  • 13
    Mar 13th
    20 Files
  • 14
    Mar 14th
    14 Files
  • 15
    Mar 15th
    17 Files
  • 16
    Mar 16th
    15 Files
  • 17
    Mar 17th
    5 Files
  • 18
    Mar 18th
    2 Files
  • 19
    Mar 19th
    7 Files
  • 20
    Mar 20th
    15 Files
  • 21
    Mar 21st
    19 Files
  • 22
    Mar 22nd
    16 Files
  • 23
    Mar 23rd
    18 Files
  • 24
    Mar 24th
    0 Files
  • 25
    Mar 25th
    0 Files
  • 26
    Mar 26th
    0 Files
  • 27
    Mar 27th
    0 Files
  • 28
    Mar 28th
    0 Files
  • 29
    Mar 29th
    0 Files
  • 30
    Mar 30th
    0 Files
  • 31
    Mar 31st
    0 Files

Top Authors In Last 30 Days

File Tags


packet storm

© 2018 Packet Storm. All rights reserved.

Security Services
Hosting By