Byłem przeczytaniu artykułu o Server-Side fałszowania żądań . W tym artykule atakujący stwierdził, że 127.0.0.1
był otwarty na Internet. Ofiara następnie zablokowała się 127.0.0.1
, ale ponieważ wiele innych adresów IP i najwyraźniej także niektóre domeny również zostały do tego rozwiązane, w tym tajemnicze localtest.me
, był w stanie ominąć słaby filtr tekstowy.
Co jest takiego specjalnego
localtest.me
?Czy są jeszcze inni? (I jak je znaleźć?)
AKTUALIZACJA
Znalazłem: http://readme.localtest.me/
Najwyraźniej ktoś postanowił zarejestrować tę domenę w zabawny sposób, do celów testowych:
Oto jak to działa. Cała nazwa domeny localtest.me - i wszystkie wpisy wieloznaczne - wskazują na 127.0.0.1. Więc bez żadnych zmian w pliku hosta możesz natychmiast rozpocząć testowanie z lokalnym adresem URL.
Jednak nadal nie jestem pewien, jak zarejestrować domenę zewnętrzną w lokalnej. Jest to mylące, ponieważ tracert localtest.me
nigdy nawet nie opuszcza maszyny. Jak sobie z tym poradzić na niskim poziomie?
Potem znalazłem kilka innych w tych komentarzach i gdzie indziej:
lvh.me
vcap.me
fuf.me - IPv4 and IPv6
ulh.us
127-0-0-1.org.uk
ratchetlocal.com
smackaho.st
42foo.com
beweb.com
yoogle.com
ortkut.com
feacebook.com
bealocalhost.de
Odpowiedzi:
Nic nie „wiąże” domeny z jej adresem w sposób, jaki sobie wyobrażasz. Podobnie jak książka telefoniczna, DNS informuje tylko, jaki jest adres - ale na tym kończy się jego zaangażowanie. (Nie wybierasz numeru „Pizza Hut” przez telefon; wyszukujesz ich numer telefonu i wybierasz numer).
Kiedy więc ktoś zarejestruje nazwę domeny, po prostu zyskuje możliwość edycji tych wpisów w książce telefonicznej. Ale aby faktycznie „wskazać” nazwę domeny - powiedzmy
127.0.0.1
- dodają ten wiersz do bazy danych:to jest to! Ktokolwiek
localtest.me
teraz pyta, otrzymuje odpowiedź „Och, to jest127.0.0.1
”.Kiedy więc piszesz
tracert localtest.me.
, najpierw pyta DNS o powiązany adres; otrzymuje odpowiedź 127.0.0.1; a następnie zachowuje się dokładnie tak, jakbyśtracert 127.0.0.1
zamiast tego pobiegł . W ogóle nie ma magii.W tym momencie powinno być jasne, że każdy właściciel domeny może to zrobić bez żadnego wysiłku, więc zawsze istnieje prawdopodobieństwo, że w danym momencie istnieją inne takie domeny. Ponieważ dane DNS są dystrybuowane w wielu systemach (czasem nawet generowane dynamicznie), tak naprawdę nie możesz ich wszystkich znaleźć, a nawet oczekiwać, że wyniki pozostaną dokładne po kilku sekundach.
Ale ze względów bezpieczeństwa nie musisz znaleźć ich wszystkich. Niektóre resolwery DNS mają już rodzaj filtrowania takich wpisów (nazywane „ochroną ponownego wiązania DNS”) i nie szukają konkretnych pytań - patrzą tylko na odpowiedź . Funkcja ochrony blokuje tylko odpowiedzi wskazujące dowolny adres lokalny.
Jednak zanim zapytasz, nie można tego zabronić globalnie - kierowanie nazw domen na adresy prywatne jest nadal całkowicie uzasadnionym użyciem DNS i jest stosowane w praktyce w wielu sieciach.
źródło
Istnieją inne odpowiedzi, które są bardziej szczegółowe, ale sedno tego pytania jest naprawdę proste:
Rejestracja nazwy domeny i przypisanie adresu IP to dwie zupełnie różne i niezależne rzeczy.
Każdy może zarejestrować dowolną nazwę domeny z dowolnego powodu; możesz nawet zarejestrować nazwę domeny bez posiadania docelowego adresu IP. Wystarczy zapłacić rejestratorowi domen, przechodząc przez wirtualną „dokumentację”, a następnie, jak magia, masz nazwę domeny. Za rejestrację nazwy domeny płacisz tylko za jej nazwę oraz możliwość przypisania adresu IP do nazwy domeny - czytaj poniżej.
Ale przypisanie adresu IP tej nazwie domeny to zupełnie inny proces. Każdy może przypisać dowolny adres IP do nazwy domeny, jeśli ma kontrolę nad tą nazwą domeny. Rejestrator nazw domen nie dba o to, jaki stos nieprzetworzonych adresów przypisujesz do nazwy domeny.
Cała nazwa domeny to po prostu wskaźnik, który ułatwia życie. Pomyśl o tym jako o aliasie, aby ludzie nie musieli zapamiętywać stosów liczb (IPv4) ani cyfr i liter (IPv6).
To jest to!
Ale to, co się wydarzyło - jak wyjaśnia ta strona, którą odwiedziłeś - nie było „włamaniem” się do każdego systemu w lokalnym lokalnym adresie „127.0.0.1”, lecz raczej wadą tego konkretnego systemu.
Ale dla dalszego wyjaśnienia - i to mnie zaskoczyło, jak to sformułowałeś - kiedy stwierdzasz:
Przeczytałem również ten artykuł i oto, co się stało: ktoś używał narzędzia online, które pozwoliło ci wskazać to narzędzie na dowolny adres IP / nazwę hosta. Kiedy wskazali na to narzędzie,
127.0.0.1
nie było to, że adres IP127.0.0.1
był narażony na działanie Internetu. Przeciwnie, samo narzędzie miało wadę, która pozwalała każdemu sondować wewnętrzny serwer, na którym narzędzie to działało127.0.0.1
. A ponieważ to narzędzie było wyraźnie narzędziem hakerskim, które zostało użyte do wykrycia otwartych portów, i dzięki127.0.0.1
temu konkretna aplikacja mogła sondować własną sieć localhost i - klucz tutaj - przekazać te informacje komuś, kto uzyskuje dostęp do narzędzia za pośrednictwem przeglądarki internetowej .Przedstawione ryzyko nie polegało na tym, że każdy
127.0.0.1
był narażony na działanie Internetu, ale raczej niechlujne kodowanie na jednym narzędziu na jednej stronie pozwoliło na to.źródło
Wskazuje na 127.0.0.1 (localhost). Ten adres jest zawsze zarezerwowany dla komputera lokalnego.
Tak. Google i superużytkownik są Twoimi przyjaciółmi (jak się dowiedziałeś).
Brakuje początkowego (zewnętrznego) żądania DNS .
tracert
wyświetla ścieżkę, którą obiera pakiet, ale zanim pakiet może dotrzeć gdziekolwiek, komputer musi znać adres IP, aby go wysłać. Z zastrzeżeniami, jeśli nigdy wcześniej nie odwiedzałeś locatest.me , wysyłane jest żądanie DNS do zewnętrznych resolverów w celu wykrycia, że mapuje ono na 127.0.0.1. Zwrócone dane są następnie wykorzystywane lokalnie (np. Dotracert
wyświetlania lub wyświetlania treści internetowych). I pamiętaj, że DNS może zamapować dowolną nazwę hosta na dowolny adres IP - nie „wie”, czy adres IP jest lokalny, czy nie.źródło