TechLife devBlog

Hakowanie przeglądarką II - Ankiety

Design 26 grudnia 2005 o 15:45:52 | ☍ trackback

Dzisiaj dowiemy się jak można łatwo manipulować źle skonstruowaną ankietę internetową. Na początek znajdźmy sobie cel. Żeby nie było za łatwo to wybierzemy sobie jakiś "szanowany" serwis, w którym teoretycznie takie błędy nie powinny mieć miejsca. Wchodzę sobie więc na gazeta.pl i przeglądam bieżące wiadomości. Ks. Jankowski zakłada instytut swojego imienia, jak miło, mamy ankietę.

Przed

W opcjach naszej jedynej słusznej przeglądarki ;) wyłączamy zapisywanie ciasteczek, ponieważ to właśnie dzięki nim skrypty gazety rozpoznają czy już oddaliśmy głos w ankiecie. Kiedy już wyłączymy ciasteczka odpalamy naszego szpiega nagłówków, którego używaliśmy w poprzedniej notce. A następnie na pytanie Inicjatywa prałata to przejaw udzielamy odpowiedzi patriotyzmu. Dlaczego tak? Bo wiadomo, że większość odpowiedziała pychy ale my ich przekonamy, że się mylą. W końcu mamy demokrację i większość (czyli my) ma zawsze rację ;).

Wyniki

No proszę! Kto by się spodziewał :D No to zaczynamy przekonywanie innych. Wracamy do okienka naszego szpiega nagłówków i począwszy od góry szukamy pierwszego nagłówka wysłanego metodą POST. Po znalezieniu takowego przyduszamy przycisk Powtórz żądanie... i oto objawia nam się okienko z wszystkimi potrzebnymi nam informacjami.

Szpieg

Możemy teraz wcisnąć Replay w ten sposób oddając kolejne głosy. Ale marny tego skutek bo do nadgonienia mamy 3000 głosów. Musimy więc uruchomić produkcję taśmową :)

Teraz potrzebny nam będzie serwer z obsługą php, może być nawet własny localhost. Z pomocą przybędzie nam zaimplementowany w php CURL czyli Client URL. Jeżeli wasz serwer odmówi wykonywania poleceń CURL'a to znaczy, że nie posiada pakietu php4-curl czy php5-curl i należy go doinstalować. Dzięki niemu zbudujemy sobie nadajnik i nim będziemy seryjnie nadawać odpowiednie dane do odbiornika, czyli skryptu ankietowego gazety, który z utęsknieniem czeka na nasze głosy.

Do dalszego działania potrzebny nam będzie ten skrypt php. A z okienka naszego szpiega nagłówków musimy wyciągnąć adres skryptu oczekującego na dane z formularza [1], oraz treść zapytania które chcemy powtarzać [2].

Potrzebne dane

Nie przejmujmy się że skrypt do którego się odwołujemy ma rozszerzenie html. To tylko dla bezpieczeństwa zamaskowane rozszerzenie php. Teraz wystarczy, że wyedytujemy nasz skrypt i pod nagłówek CURLOPT_URL podstawimy nasz adres [1] a do nagłówka CURLOPT_POSTFIELDS nasze żądanie [2]. Teraz wystarczy umieścić skrypt na serwerze i wywołać go w przeglądarce. Skrypt powtórzy nasze zapytanie 100 razy i najlepiej odpalić go w przeglądarce tekstowej lub przy wyłączonym pobieraniu grafiki tak aby wczytywał się tylko tekst i wszystko szybko śmigało. A wyniki możecie podziwiać sami.

Rezultat

To co? Przekonujemy, że to jednak patriotyzm ? ;) Ja się jeszcze trochę pobawię. Aha, to teraz już wiecie dlaczego Korwin był najpopularniejszy w internetowych ankietach ;)

Komentarze do notki

iss
26 grudnia 2005 o 16:37:01

Jeśli autorzy serwisu nie są leniwi (lub gupi), to codzienna automatyczna analiza logów (albo jakiś inny automat) powinna wyciąć lewe głosy.

citizen
26 grudnia 2005 o 16:44:35

Wyobraź sobie, że jest ankieta np o poparniu dla Tuska. Idziesz spać i Tusk ma 60% poparcia, wstajesz a tu zaledwie 7%. Nie wydało by Ci sie to dziwne i nie skojarzyło z manipulacją. Takie serwisy jak gazeta nie mogły by sobie na coś takiego pozwolić. No i z doświdczenia wiem, że w innych serwisach też nikt logów nie analiizuje w celu zrobienia korekty. No bo jak odróżnić głos prawdziwy od tego wygenerowanego. Przecież serwerów proxy i przeglądarek też możemy mieć całą tablicę i losowo je zestawiać tworząc różne kombinacje.

iss
26 grudnia 2005 o 16:55:02

Jednakże gdy w logu pojawia się ten sam wpis co sekundę nie jest żadnym problemem wyłapanie tego przez jakiś automat. Zresztą niektóre loggery mają opcję zapisu od razu w postaci:
16:24:09 Foobar
--- Repeated 1689 times ---
Czy jakoś tak.
Osobiście natknąłem się już kiedyś na serwis posiadający taki automat wycinający.
Oczywiście faktem jest, że przy zastosowaniu miksu UA i proxy weryfikacja prawdziwości głosu jest trudniejsza.

Jam Łasica
26 grudnia 2005 o 17:00:08


58%
patriotyzmu (4179)

42%
pychy (3083)

WTF? ;)

Jam Łasica
26 grudnia 2005 o 17:04:44

Nieźle, nieźle...

60%
patriotyzmu (4547)

40%
pychy (3083)

Michał Górny
26 grudnia 2005 o 17:06:08

Ech... jak takie "script kiddies"... Nie mają co robić, to robią bajzel w sieci...

citizen
26 grudnia 2005 o 17:08:10

Może chociaż będzie medal od Radia Maryja :D

Jam Łasica
26 grudnia 2005 o 17:09:50

Dobrze, że w tym roku nie było Wyborów przez Internet :P

citizen
26 grudnia 2005 o 17:11:00

@Michał Górny: a skrypt napisałem sam :P

Jam Łasica
26 grudnia 2005 o 17:14:50

Jutro Rydzyk z Jankowskim zachęceni wynikami sondażu, przeprowadzą zamach stanu ;)

przemek
26 grudnia 2005 o 18:08:05

Fajniusio, poza jednym - definicją demokracji, bo ta to wcale nie rządy większości. Rządy większości to rządy większości.

raff
29 grudnia 2005 o 21:06:44

łeeee, to ze sondy na gazeta.pl sa do bani to zadne nowum :] mozna to prosto zabespieczyc tylko trzeba miec troszke oleju w glowce.

citizen
29 grudnia 2005 o 21:10:44

Jasne że można, ale po co się męczyć... :]

GiM
31 grudnia 2005 o 09:02:22

ech, zdaje mi się, że za bardzo kombinujesz...
[pomijając, że to dość durna i mało kształcąca zabawa]
toć łatwiej, szybciej i prościej:

while :; wget --post-file=dupa adres; echo -n "."; done

Skomentuj

Formatowanie: Markdown