JustPaste.it

Ukrywanie prawdziwego adresu URL strony

Uniform Resource Locator

Uniform Resource Locator

 

Słowem wstępu, chciałem napisać, iż artykuł został napisany dość dawno, dlatego część przedstawionych rozwiązań jest nieaktualna. Szczególnie widoczne to jest w przypadku, gdy ktoś używa przeglądarki Firefox( za co należą się podziękowania jej twórcom) - nie działa chociażby sztuczka z uzyciem '@'.

W artykule wykorzystano fragmenty strony http://www.nwi.net/~pchelp/obscure.htm, oraz tłumaczenie jazzychris (jazzychris@go2.pl).

Wstęp

URL'em (Universal Resource Locator) strony, z oryginalnym tekstem jest np.: http://www.nwi.net/~pchelp/obscure.htm. Jest nim również: http://3513587746@3484559912/o%62s%63ur%65%2e%68t%6D. Jeśli klikniesz na te odsyłacze, to zabiorą cię dokładnie w to samo miejsce. Ten dziwnie wyglądający adres wykorzystuje kilka trików, których istnienia większość użytkowników Internetu nie jest świadoma. Adresowanie, to bardziej złożony temat niż się na pierwszy rzut oka wydaje; są konwencje, które pozwalają na interesujące wariacje w prezencji naszego URL. Triki te są znane spamerom i emaliowym dowcipnisiom. Możesz je także zobaczyć na stronach związanych z reklamami i takich, których autor z jakiegoś powodu chciał uniknąć rozpoznania swojego URL. Teraz, dzięki temu tekstowi, i Ty będziesz je znał. Czytaj dalej, a już niedługo trudno Cię będzie oszukać.
(Uwaga: W zależności od rodzaju i wersji przeglądarki internetowej, niektóre z tych dziwolągów mogą nie działać poprawnie. To samo, jeśli używasz LAN i Proxy [brama] do sieci.).

Sposób działania

Spójrz jeszcze raz: http://3513587746@3484559912/o%62s%63ur%65%2e%68t%6D

Po pierwsze, zauważ obecność znaku @, który pojawia się pomiędzy innymi symbolami. W rzeczywistości wszystko co pojawi się pomiędzy znakami "http:// " i "@" jest zupełnie nieważne. Możesz tam wstawić cokolwiek, i nie wpłynie to na efekt końcowy. Popatrz na te przykłady:

http://doesn'tmatter@www.nwi.net/~pchelp/obscure.htm
("doesn't matter" znaczy - nie liczy się)

http://!$^&*()_+`-=|[]:;@www.nwi.net/~pchelp/obscure.htm

Możesz sprawdzić czy to rzeczywiście to samo...

Ta funkcja jest używana do autoryzacji dostępu. Jeśli do wejścia na stronę WWW potrzebny jest login i/lub hasło, może być zamieszczony tutaj. Wtedy zalogowanie będzie automatyczne.

Na przykład: http://użytkownik:hasło@www.jakiś-tam.com/sekret.htm

Jednak jeśli strona WWW nie wymaga autoryzacji, to zapis ten zostanie zignorowany przez stronę i przez serwer. Daje to ciekawe możliwości oszukiwania nic nie podejrzewających internatów. Jak Ci się podoba taki adres:

http://www.playboy.com@3466536962/~pchelp/obscure.htm

Ludzie nieświadomi sztuczki gotowi są uwierzyć, że to strona z playboy.com.

Oprócz tego, symbol @ może być zastąpiony przez swój odpowiednik hexadecymalny %40, co jeszcze bardziej "zaciemni" adres. Działa to w IE, ale nie w Netscape.

Teraz, co powiesz na jakiś długi numer po znaku ? @ ?? W jaki sposób 3484559912 zabierze Cię do www.pc-help.org? Po prostu te dwa zapisy są swoimi zamiennikami. Pozwól, że to wytłumaczę:
Podstawową sprawą, którą użytkownik Internetu musi znać, jest nazwa tłumaczona później na numer zwany adresem IP. Zwykle adres IP widzimy jako liczby dziesiętne z kropkami. Na przykład www.pc-help.org tłumaczone jest na 207.178.42.40
Numeryczne adresy IP są praktycznie nierozpoznawalne dla zwykłych ludzi. (dlatego używa się nazw słownych).

Są też inne sposoby na zapisanie takiego adresu. Alternatywnym formatem może być:
  • "DWORD" - co znaczy "double word" (podwójne słowo) - składa się z dwóch słów binarnych po 16 bitów; ale wyrażane jest dziesiętnie (baza 10)
  • "OCTAL" - wyrażane jest przez system z bazą 8
  • "HEXADECIMAL" - hexa=+ decimal → baza 16
Ekwiwalent DWORD dla 206.159.40.2 to 3466536962

(Po co to wszystko? Najczęściej dlatego, że w praktyce każdy może uzyskać dostęp do zapisu rejestracyjnego i posiadacze domen mogą być zidentyfikowani. Nawet jeśli bezpośrednio nie uda się wyśledzić właściciela domeny, to można odnaleźć providera. Chyba ostatnią rzeczą, której pragnie "sieciowy szkodnik", jest odnalezienie go przez ofiary, albo zablokowanie konta przez dostawcę usług internetowych)

O.K., a co z resztą URL?

Spójrzmy raz jeszcze na przykład z początku tekstu:
http://3513587746@3484559912/o%62s%63ur%65%2e%68t%6D

Zaczyna wyglądać sensownie? Tak, ale co to za bełkot z prawej strony?
Oto wyjaśnienie:

Pojedyncze znaki ścieżki dostępu i nazwy pliku mogą być reprezentowane przez ich szesnastkowe odpowiedniki. Każdy hex-numer jest poprzedzony przez znak "%". (stawiany aby zidentyfikować następujące po nim cyfry / litery jako liczby szesnastkowe) Praktyczne tego zastosowanie, to umożliwienie użycia spacji i znaków nietypowych w adresie URL. Może to przekształcić zwykły, czytelny tekst w odstraszający bałagan.

Przykład: podmienione litery w adresie "/~pchelp/obscure.htm":
%7e p %63 h %65 l %70 / o %62 s %63 ur %65 %2e %68 t %6D
  ~   p    c   h    e   l    p  /  o    b   s    c  ur    e      .       h   t   m

  • Litery w hex-numerach mogą być duże lub małe.
  • "Slash"(/) w adresie nie może być przedstawiony w formie "hex".
  • Numer IP nie może być przekształcony w ten sposób.
  • ale wszystko inne może !

Szesnastkowe kodowanie znaków

Szesnastkowe kodowanie znaków, to po prostu przypisanie hex-numerów dla zbioru znaków ASCII.

By znaleźć więcej znaków ASCII możesz odwiedzić:
www.jimprice.com/jim-asc.htm - zestawienie ASCII ←→ HEX
http://ourworld.compuserve.com/homepages/r_harvey - ASCIIcat.hlp

Adresy IP

Adresy IP najczęściej zapisywane są jako numery dziesiętne. Numer taki składa się z czterech segmentów przedzielonych kropkami. Każdy numer w segmencie musi mieścić się w zakresie 0 - 255. Tłumaczenie nazw stron WWW na numery IP odbywa się w tle, niezauważalnie dla użytkownika. Gdy wpisujesz nazwę, wyszukiwarka łączy się z "serwerem nazw" i dopiero uzyskawszy numer IP, zwraca się do właściwej maszyny w sieci.

Dostępnych jest wiele narzędzi umożliwiających użytkownikowi bezpośrednie sprawdzanie adresów. Jedno z nich, uruchamiane z linii poleceń, to Network Tracer. Umieść ten program w folderze Windows, a będziesz mógł wpisywać żądania. Np.:
nslookup [nazwa lub IP] [nazwa servera]

Jest to przydatne narzędzie, które znajduje adresy dla nazw, nazwy dla adresów i wiele innych danych związanych z URL. Dla technicznie uzdolnionych jest podręcznik - by mogli poeksperymentować z tym programem.

Możesz również sprawdzać adresy z poziomu przeglądarki.
Jednym z miejsc, które Ci to umożliwią jest: http://www.interlog.com/~patrick/cgi/nslookup.cgi

Więcej o dziesiętnych adresach IP

Tutaj masz kolejną wersję odsyłacza do tej strony (str. z oryginalnym txt.): http://463.434.298.552/obscure.htm. Jeśli używasz IE, to ten link powinien działać. Nie jestem pewien NN, bo w wersji 3.x nie działał.

Standardowo, cztery numery w adresie IP muszą się zawierać między 0 a 255. Spowodowane to jest koniecznością zmieszczenia numeru w ośmio bitowym słowie, które może przybrać maksymalną wartość 255.

Jednak sposób, w jaki niektóre programy wykorzystują tą liczbę, umożliwia na zapisanie więcej niż 255. Program użyje wtedy pierwsze osiem cyfr z prawej strony, a resztę odrzuci.

To oznacza, że możesz dodawać wielokrotność 256 do każdego z czterech segmentów IP i przeważnie nadal będzie on poprawnie działać. W moich testach, segment był ograniczona do trzech cyfr. (wartości ponad 999 - nie działają).

Zmiana IP na format "DWORD"

Dla przykładu zamienimy IP nr 206.159.40.2
? Wpisz numer z pierwszego segmentu od lewej strony (jako dziesiętny!). → 206
? Odczytaj jego wartość szesnastkową (hex). → CE
? Zrób to samo z pozostałymi segmentami → 159?, 40(, 2 (zawsze wpisuj zero jeśli liczba składa się z jednej cyfry)
? Teraz złóż je wszystkie razem → CE9F2802
? Wpisz uzyskany numer jako szesnastkowy → CE9F2802
? Zamień go na dziesiętny → 3466536962 ... i już go masz.
? Ten sam numer, którego użyłem w swoim "zamaskowanym" URL (Wykonując powyższe czynności w odwrotnej kolejności, dojdziesz do tradycyjnego IP).

Znalazłem też inny sposób, do którego wystarczy kartka i ołówek. Wystarczy wykonać mnożenie:

206 x 16777216 (2563) = 3456106496
159 x 65536 (2562) = 10420224
40 x 256 (2561) = 10240
2 x 1 (2651) = 2
                                  + ---------------
                                  3466536962

Teraz kolej na kolejny krok, który jeszcze bardziej skomplikuje nasz adres. Możesz dodać do tego numeru DWORD wielokrotność liczby 4294967296 (2564) - i adres nadal będzie działać. Dzieje się tak, bo kiedy suma jest zamieniana na swoją prostą cyfrową formę, osiem ostatnich szesnastkowych cyfr pozostaje takie same. Wszystko na lewo od tej ósemki zostaje zignorowane przez software.

Więc następujące adresy też będą działać:

http://7779527208/obscure.htm
http://12074494504/obscure.htm
http://231117826600/obscure.htm

Na stronie Matthiasa Fichtnera znajduje się skrypt, który zamienia IP na jego odpowiednik Dword i vice-versa.

Zamiana IP na system ósemkowy

Jakby tego wszystkiego nie było dość, można zamienić IP na system oparty na 8.

I znów, adres do naszej strony będzie wyglądał tak:

http://0316.0237.050.02/~pchelp/obscure.htm

Zauważ obecność zer na początku każdego segmentu. Zera są konieczne, aby powiedzieć Twojej przeglądarce, że ma do czynienia z systemem ósemkowym. Możesz dodać dowolną ilość zer przed numerem:

http://000316.000000237.000050.0000000002/~pchelp/obscure.htm

Oczywiście "fałszywą autoryzację" również:

http://www.sleazy-ad.com@000316.000000237.000050.0000000002/~pchelp/obscure.htm

Zamiana IP na system szesnastkowy

Jest jeszcze inny sposób na zatarcie Twojego URL. Pamiętasz ten numer szesnastkowy, który liczyliśmy wcześniej? → CE9F2802 ?
Można go użyć w ten sposób : 0xCE.0x9F.0x28.0x02. (0x - zapowiada numer "hex"). Zera i kropki można ominąć: 0xCE9F2802, a całość poprzedzić z lewej strony zbędnymi cyframi: 0x9A3F0800CE9F2802

Niektóre przeglądarki nie poradzą sobie z takim adresem (np.: Netscape 3.x and 4.x), ale dla użytkowników IE adres może wyglądać tak:

http://0xce.0x9f.0x28.0x02/~pchelp/obscure.htm

lub tak:

http://0xce9f2802/~pchelp/obscure.htm

czy też tak :

http://0x9a3f0800ce9f2802/~pchelp/obscure.htm

Zabawa dopiero się zaczyna...

Czas na MIX.

Tak ! Wierz w to lub nie, ale ten URL złożony z wszystkich powyższych kombinacji systemów liczbowych... działa !!!

http://0xce.159.050.0x02/~pchelp/obscure.htm

Plus "fałszywa autoryzacja":

http://spam-world.net@0xce.159.050.0x02/~pchelp/obscure.htm

Dla użytkowników NN trzeba zrezygnować z systemu HEX, ale reszta może zostać :

http://spam-world.net@0316.159.050.2/~pchelp/obscure.htm

Podsumowanie

URL mogą być "oszpecone" w następujący sposób:
  • Dowolny, najbardziej bezsensowny tekst można umieścić pomiędzy "http://" i "@".
  • Domenę można zastąpić numerem IP w postaci, dziesiętnej z kropkami, dword, ósemkowej i szesnastkowej, a wszystkie one mają swoje warianty.
  • Znaki po IP, także można zastąpić wartościami HEX
Dotychczasowe doświadczenia i napływające komentarze wykazują, że:
  • PING (Win.Dos) - odczytuje prawdziwy IP niezależnie od zastosowanej metody.
  • Wartości HEX i decymalne ponad 255 nie działają z Netscape.
  • IP zakodowane w DWORD nie działają z niektórymi wersjami IE.
    Może to być spowodowane przez patch, który Microsoft wypuścił w reakcji na "dziurę-dotless IP".
  • Niektóre wersje IE nie odczytują IP zakodowanego jako HEX, jeśli nie rozdzieli się go kropkami.
  • W miejscu "fałszywej autoryzacji" IE nie akceptuje znaków /\# i ma problemy z %'"<>
  • NN nie akceptuje znaków /? w miejscu "fałszywej autoryzacji".
  • MS-Proxy odrzuca prawie wszystko co nie jest standardowym IP.

 

Źródło: http://www.zurawek.com/ukrywanie_adresu.html

Licencja: Creative Commons - bez utworów zależnych