TechLife devBlog

Hakowanie przeglądarką I - komentarze

Design 25 grudnia 2005 17:23

Wreszcie święta i mam czas, żeby coś tu naskrobać. Wielu z was zauważyło pewnie, że od jakiegoś czasu na niektórych jogach zapanowała moda na blokowanie możliwości komentowanie wpisów. Nie będę wnikał czym to jest spowodowane bo to nas nie interesuje. Chciałem tylko pokazać jak w łatwy sposób można obejść tą niedogodność, ale nie zachęcam nikogo do łamania zasad obowiązujących na omawianych jogach. Informacje te potraktujcie jako materiał szkoleniowy.

Na początek musimy się dowiedzieć jak działa mechanizm, który pozwala nam owe komentarze dodawać. Otóż mechanizm ten składa się z dwóch modułów:

1. Formularz komentarza
2. Skrypt wykonujący

Formularz komentarza, który umieszczamy na swoich jogach należy potraktować jako nadajnik, natomiast skrypt wykonujący jako odbiornik. Schemat jest taki, iż każdy posiada na jogu nadajnik a ojciec dyrektor zamontował w systemie jeden zbiorczy odbiornik. Kiedy komentujemy jakiś wpis, wówczas formularz (nadajnik) wysyła odpowiednio sformatowany sygnał do skryptu wykonującego (odbiornika) odpowiedzialnego za dodanie naszego komentarza do bazy danych.

Kiedy ktoś usuwa ze swojego joga formularza (nadajnik) wcale nie oznacza to, iż nie możemy skomentować jego notki. Wszystko co musimy zrobić to podłączyć się do Matrix'a i za pomocą własnej anteny nadać piracki sygnał ;)

A teraz trochę jaśniej:

1. Należy zbadać jak sformatowany jest sygnał, który formularz wysyła do skryptu. W tym celu posłużymy się własnym jogiem, przeglądarką Firefox i jej rozszerzeniem Live HTTP Headers. Po zainstalowaniu rozszerzania w menu Narzędzia naszego liska pojawi się opcja Podgląd nagłówków HTTP. Dzięki temu cacku dowiemy się o czym rozmawia serwer strony www z naszą przeglądarką.

Teraz wybieramy sobie z naszego joga notkę, której nikt nie skomentował, tak abyśmy nie rozesłali innym powiadomienia o nowym komentarzu. Kiedy już znajdziemy osamotnioną notkę, odpalmy nasz podglądacz nagłówków i sprawdzamy czy opcja Przechwyć jest zaznaczona.

Puste okno podglądacza

Jeżeli tak możemy przystąpić do skomentowania naszej notki. Treść niech będzie krótka np TEST. Po skomentowaniu wracamy do okienka naszego szpiega nagłówków i począwszy od góry szukamy pierwszego nagłówka wysłanego metodą POST.

Szukamy żądania

Kiedy już go odnajdziemy, a szukania nie powinno być za wiele, wciskamy przycisk Powtórz żądanie... I oto otwiera nam się okienka, z danymi gotowymi do powtórnego wysłania.

Szukamy żądania

2. Teraz czas na utworzenia własnego pirackiego sygnału. Będziemy do tego potrzebowali specyficznych danych tj zmienna eid która mówi systemowi jaki wpis będziemy komentować. No więc wystarczy, że wejdziemy na jog osoby która nie pozwala nam komentować jej notek i klikniemy na tytuł danej notki, czy też na link komentuj. W adresie strony powinniśmy zobaczyć zmienną eid którą potrzebujemy. Jeżeli nasza "ofiara" jest aż tak podstępna iż nie udostępniła nam takich danych to zawsze możemy odszukać jej wpis na stronie głównej i tam już naszą zmienną znajdziemy w linku prowadzącym do tej notki.

No więc mamy już nasze informacje wywiadowcze i teraz wystarczy podmienić odpowiednie dane w naszym okienku powtórzonego żądania. Jadąc od góry zmieniamy własną nazwę joga na nazwę joga który jest w centrum naszych zainteresowań ;) To samo czynimy w nagłówku Host: oraz w nagłówku Referer:. W nagłówku Referer: podmieniamy również zmienną eid, na tą którą zdobyliśmy na zwiadzie.

Teraz zajmijmy się dolną częścią naszego okienka. Tu też podmieniamy wartość zmiennej eid. Na końcu podmieniamy zmienną commbody która w naszym przypadku wynosi TEST. To oczywiście jest treść naszego komentarza. Jeżeli będziemy chcieli napisać więcej niż jedno słowo, wówczas należy zamiast spacji stosować znak "+" np:

commbody=Ala+ma+kota.

No i nie stosujcie polskich krzaków, bo znaki wpisane przez nas mogą być nie zgodne z kodowaniem użytym na "atakowanym" jogu.

Kiedy jednak powiększamy nasz tekst, wówczas wydłuża się również wielkość naszego żądania. Określa ją zmienna Content-Length - ostatnia w polu powyżej. Musimy więc zbadać długość naszego ciągu np poprzez wklejenie do jakiegoś edytora tekstu i sprawdzenia statystyki tekstu. Wówczas dowiemy się ile znaków ma nasze żądanie i tą liczbą uaktualniamy wartość zmiennej Content-Length. Można też na oko wstawić jakąś większą liczbę. Jeżeli jednak tego nie zrobimy nasze żądania zostanie obcięte, co będzie wiązało się ze skróceniem tekstu naszego komentarza.

3. Piracki sygnał mamy gotowy. Teraz tylko przydusimy przycisk Replay i nadajemy go do Matrix'a :)

Przypominam, że wpis ten nie jest żadnym odwetem na osobach blokujących komentarze i zachęcam do uszanowania ich decyzji. Materiały te mają służyć jedynie powiększeniu Waszej wiedzy o formularzach.

A w następnym odcinku będziemy masowo wypełniali ankiety ;P

Komentarze z jogger.pl

都吧 胳整訴格狗 25 grudnia 2005 / 17:48

> na niektórych jogach
Ja z takim czymś spotkałem się tylko u Riddle'a. Marcoos kiedyś próbował blokować komentowanie przez niezalogowanych, ale mu nie wyszło i zrezygnował.

A tak czy siak, zazwyczaj w sytuacji kiedy autor blokuje komentowanie, usuwa też z szablonu blok komentarzy. Więc po cholerę komentować, skoro i tak da to prawie identyczny efekt jak wysłanie wiadomości autorowi?

Paweł Ciupak 25 grudnia 2005 / 17:56

> usuwa też z szablonu blok komentarzy.

Riddle nie usunął. Jedyną osobą, o której wiem, że nie ma takiego bloku, jest Płaszczak.

Ktos 25 grudnia 2005 / 18:42

Płaszczak ma od jakiegoś czasu 404 Not Found. Porzucił nas, szkoda.

PawelS 25 grudnia 2005 / 19:19

Hmmm... a czy to nie przypadkiem wystarczyło wyłączyć JavaScript, aby spowrotem można było skomentować notkę ?

citizen 26 grudnia 2005 / 00:36

Marcoos nadal blokuje komentarze. Bloku komentarzy się nie usuwa, bo wówczas nie będzie wglądu do już dodanych, a wyłączenie javascroipt'u nic nie da bo formularz po prostu usuwany jest z szablonów.

citizen 26 grudnia 2005 / 00:36

Marcoos nadal blokuje komentarze. Bloku komentarzy się nie usuwa, bo wówczas nie będzie wglądu do już dodanych, a wyłączenie javascroipt'u nic nie da bo formularz po prostu usuwany jest z szablonów.

Riddle 07 stycznia 2006 / 20:40

Ja na początku miałem JSem blokowanie wpisów *paru*. I nadal mam, po przywróceniu możliwości komentowania.

A bloku komentarzy nie usuwałem, bo przy ratio ilość wpisów do liczby komentarzy u mnie wynoszącej 1:7 afaik pozbawiłbym ludzi masy contentu.

Do tego chyba jednak użyć lepiej tego:
http://marcoos.jogger.pl/custom/marcoos/files/comment.html

Riddle 07 stycznia 2006 / 20:41

Btw, dzięki za przywrócenie Rio. Jest śliczny i taki „mój”.

citizen 07 stycznia 2006 / 20:46

> Do tego chyba jednak użyć lepiej tego:

O właśnie, za leniwy byłem żeby naklepać taką stronkę ;)

sprawdzian formularza 22 kwietnia 2009 / 12:58

ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss

sprawdzian oblany 22 kwietnia 2009 / 13:00

no comments ziom

trójkąt 22 kwietnia 2009 / 13:01

What?

Jeżeli znalazłem błąd to zapraszam na bugger.jogger.pl, ziom ;-)



Komentarze