urllib (2) jest biblioteką Pythona do pobierania plików poprzez adres url,
dodatkowo umożliwia manipulację całego zapytania, pozwala na tworzenie własnego nagłówka zapytania cz manipulację ciasteczek, a nawet wysyłanie POST content'u.
Przyjrzyjmy sie prostej funkcji:
zobacz
zmienne user_agent i user_agent2 zawierają zmienną naszego agenta czyli tak jak zazwyczaj przedstawia się przeglądarka internetowa.
Za zmienną user_agent możemy podstawić dowolnego stringa w tym taki xml'owe (html'owe) a nawet kod dowolnego języka najlepiej skryptowego.
Jeżeli nieuważny webmaster posiada na swoim serwerze system do przeglądania statystyk, który wyświetla wszystkie informacje o użytkownikach, którzy przeglądali strony może nieświadomie uruchomić JavaScript, który podrzucimy mu w zmiennej user_agent. Oczywiście ten alert() w przykładzie jest bardzo subtelny, równie dobrze można by tam dorzucić jakiś XSS.
kolejna zmienna zawiera ciasteczka w naszym przypadku PHPSESSID.
Różna może być reakcja skryptu na serwerze w przypadku, gdy zmienna sesji posiada niedozwolone znaki. Polecam to sprawdzić.
funkcja save_it(url, filename, proxy, port) zapisuje zawartość strony zawartej pod adresem url do pliku filename, a jeśli zmienna proxy jest różna od None to połączenie odbywa się przez serwer proxy na podanym porcie.
Na koniec dorzucam jeszcze skrypt do wysyłania POST contentu:
zobacz
czwartek, 24 lipca 2008
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz