Выбрать главу

За то, как будет выглядеть сайт, отвечают специальные языки программирования, которые могут быть серверными или клиентскими. Исполнение серверной программы осуществляется на стороне сервера, клиентской — в браузере пользователя.

На стороне клиента, в его браузере осуществляется выполнение (интерпретация) HTML-кода, java-скриптов, таблиц стилей (CSS).

Для того чтобы сайт обладал функциональностью и мог обрабатывать информацию, используются языки веб-программирования, наиболее популярными из которых является PHP[18].

Программу на PHP можно написать в обычном текстовом файле, изменить расширение на «.php», и она будет работать на сервере. То есть для языка PHP не требуется специализированная среда разработки, хотя на самом деле их существует масса.

Не будем рассматривать обработку PHP-кода сервером, это не является темой книги. Просто кратко укажем возможности программ на PHP: работа с базами данных, обработка и передача информации, использование почтовых протоколов (IMAP, POP3, SMTP).

Из всех возможных вариантов получения несанкционированного (скрытого) доступа к учетной записи самым эффективным на сегодняшний день является использование фишинг-движков, также называемых фэйками. Основан этот метод на веб-программировании и социальной инженерии.

Схема взаимодействия с почтовым сервером

Теперь рассмотрим две схемы обращения пользователя к интерфейсу ресурса: штатной работы пользователя с почтовым сервером и работы пользователя, когда вмешивается фишинг (рис. 1.15, 1.16).

Рис. 1.15. Упрощенная схема штатной работы с почтовым сервером

Рис 1.16. Схема работы с почтовым ящиком при фишинге

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

Три основные функции фишинг-движка

Движки выполняют три основные функции:

— имитация интерфейса по заданной ситуации, связанной с операциями пользователя (авторизация, получение файла, изменение настроек учетной записи и многое другое);

— копирование и обработка незаконно полученных учетных данных пользователя;

— возврат пользователя на соответствующую ситуации страницу официального сервиса.

Для того чтобы движок заработал, его нужно собрать. Он состоит из элементов (картинок, текста, ссылок и анимации), скопированных с официального интернет-ресурса, и программ-скриптов, написанных злоумышленником.

Собранный и готовый к работе движок злоумышленник размещает на сервере (виртуальном хостинге) и «прикручивает» к нему заранее подготовленное доменное имя.

Учитывая, что в состав движка, кроме статических данных и html-разметки, входят программы, написанные на языках программирования, для функционирования фэйка необходимы определенные минимальные требования системного окружения хостинга.

Разобрать детально механизм фишинг-сайта (фэйка) необходимо по нескольким серьезным причинам:

— во-первых, непонимание всего механизма приводит к заблуждению по поводу технической сложности фишинг-атак;

— во-вторых, непонимание технической стороны фишинг-сайта приводит к ошибочной квалификации преступных действий злоумышленников;

— в-третьих, не зная принципов создания фишинг-движков, многие продолжают верить в реальную действенность методов автоматической защиты от фишинг-атак.

Для подробного рассмотрения движков в локальной среде не потребуется заморский или абузоустойчивый хостинг[19].

Воспользуемся теми же доступными и легальными средствами, которыми пользуются злоумышленники для проверки интерфейса и отработки программ, входящих в состав движков. К таким средствам относятся программы, имитирующие работу полноценного веб-сервера.

Демонстрация механизма функционирования фишинг-движков на локальном сервере

Для демонстрации будем использовать AMPPS — набор решений, включающий в себя Apache, MySOL, MongoDB, PHP, Perl и Python для Windows, Linux и Mac[20].

Рис. 1.17. Окно программы AMPPS

Такой вот вид локального сервера можно лицезреть после его установки (рис. 1.18):

Рис. 1.18. Отображение localhost после установки AMPPS

вернуться

18

PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста»; первоначально Personal Home Page Tools — «инструменты для создания персональных веб-страниц») — скриптовый язык общего назначения.

вернуться

19

Абуза — на сленге работников телекоммуникационных услуг — жалоба, направленная в адрес владельца сервера (хостинга) или другого сервиса на возможные неправомерные действия его клиентов.

вернуться

20

AMPPS был создан компанией Softaculous Ltd. http://ampps.com/.