Bądź: Wyszukaj na stronie z użyciem Google
reklama:

poniedziałek, 16 czerwca 2008

cURL czyli podstawy hackingu w Ubuntu

Autor: , 09:00, poniedziałek, 16 czerwca 2008


Może nie każdy zdaje sobie z tego sprawę, ale Linux to system świetnie nadający się do testowania bezpieczeństwa sieci komputerowych. Dziś opiszę podstawowe funkcie biblioteki cURL, która umożliwia m.in wysyłanie do serwerów treści formularzy, podszywanie się pod przeglądarki, pełną obsługę cookies i wiele innych. Ze względu na swoje ogromne możliwości cURL jest często używany przez hakerów nie zgodnie z prawem. To właśnie dzięki tej bibliotece do niedawna można było masowo przechwytywać dane użytkowników portalu Nasza-klasa.

Mimo iż cURL posiada interfejsy dla ponad 30 języków programowania to aby maksymalnie uprościć obsługę programu stworzymy skrypt w bashu.

Spis plików JPG
Nasz pierwszy skrypt w którym użyjemy cURLa będzie zapisywał do pliku tekstowego wszystkie linki zdjęć w danym serwisie. Niektórym może wydać się to bezsensowne, lecz aby napisać skomplikowany skrypt należy najpierw poznać proste elementy, z których będzie się składał.

Skrypt, który tworzy spis plików wygląda tak (serwis wp.pl jest użyty tylko jako przykład):
#!/bin/bash
curl http://www.wp.pl/ | grep -o -e 'http://www.wp.pl/.\{1,50\}\jpg' > spis_plikow.txt
Jak każdy skrypt dla basha powinien się zaczynać od linijki #!/bin/bash, następnie wywołanie cURLa i odpowiednie argumenty. Myśle, że wszystko w tym prostym poleceniu jest zrozumiałe. Jedyny problem może stanowić ten .\{1,50\}\jpg zapis. Oznacza on, że miejsce w adresie program ma wypełnić dowolnymi znakami o długości od 1 do 50, na końcu rozszerzenie pliku, czyli jpg. Jeśli więc obrazek ma adres http://www.wp.pl/obrazek.jpg, argument zostaje spełniony a link do pliku zostanie zapisany do pliku spis_plikow.txt.
Dokument tekstowy spis_plików.txt zostaje zapisany w tej samej lokalizacji co skrypt i ma zawartość podobną do:
http://www.wp.pl/i/ivar/_/200805/580487.jpg
http://www.wp.pl/i/ivar/_/200805/580322.jpg
http://www.wp.pl/i/ivar/_/200805/580422.jpg
http://www.wp.pl/i/ivar/v/200805/580226.jpg
http://www.wp.pl/i/ivar/v/200805/580237.jpg
http://www.wp.pl/i/ivar/v/200805/579577.jpg
Są to bezpośresnie linki do obrazków z serwisu wp.pl.

Tworzenie spisu plików i pobieranie ich na dysk

Gdy umiemy już budować skrypty tworzące spisy plików, warto rozbudować je o możliwość pobierania plików ze zgromadzonych adresów. Użyjemy w tym celu programu Wget. Funkcja pobierająca pliki wygląda mniej więcej tak:
wget `cat spis_plikow.txt`
Cały nasz skrypt przybiera więc postać:
#!/bin/bash
curl http://www.wp.pl/ | grep -o -e 'http://www.wp.pl/.\{1,50\}\jpg' > spis_plikow.txt
wget
`cat
spis_plikow.txt`
Na początek wystarczy. Nie miało to co prawda zbyt wiele wspólnego z hackingiem, ale tworzy świetny punkt wyjścia do poznania następnych funkcji cURLa, które postaram się sukcesywnie opisywać. Zaawansowanych użytkowników, którym ten artykuł wydał się oczywisty, proszę o zrozumienie iż ten blog jest skierowany również dla początkujących.

Jeśli nie zrozumiałeś tego artykułu zapoznaj się z:
- Podstawy skryptów
- Pobieranie stron internetowych z Wget
Komentarze 13 comments
Anonimowy pisze...

Bardzo ciekawy artykuł, dzięki. Swoją drogą łatwo można sobie "zapchać" komputer np.wpisując w adresie imageshack.com ;P

Anonimowy pisze...

Ciekawa rzecz -czekam na ciąg dalszy.

Adrian pisze...

Ciesze się, ze artykuł Was zaciekawił. Dalsze części oczywiście się pojawią jednak nie w najbliższych dniach.

Mam nadzieję, że artykuł nie był zbyt banalny, ale chciałem by wszyscy go zrozumieli.

Pozdrawiam.

Fiołek pisze...

Czy mi się wydaje, czy ten obrazek przy poście to czerwona ikonka PowerShella(który bije basha na głowe)?

Adrian pisze...

Ikonka rzeczywiście z PowerShella

Anonimowy pisze...

witam po skopiowaniu zawartości tego skryptu robi mi pusty plik tekstowy. co robie nie tak ?

Anonimowy pisze...

jesli tworzy ci pusty plik to zobacz w synapticu czy masz zainstalowana bilioteke curl. Jesli nie to zaznacz do instalacji.

Anonimowy pisze...

Ja zainstalowałem curl, ale plik nadal jest pusty :( Dlaczego?

netbit pisze...

to jak zainstalować tego curl'a bo mam ten sam problem plik tworzy się pusty...

panmusk pisze...

hakerów nie zgodnie z prawem
chyba "niezgodne"... :)

Anonimowy pisze...

Witam, zainstalowałem przez Synaptic i dalej tworzy pusty plik

Anonimowy pisze...

Czy autor wie kto to haker?

Anonimowy pisze...

Na wp nie ma już obrazków .jpg zaczynających się od wp.pl

curl http://www.wp.pl/ | grep -o 'http.\{1,70\}jpg' > spis_plikow.txt

Prześlij komentarz


Popularne posty

Etykiety