Фишинг в корпоративной среде. Тренинг персонала по выявлению фишинговых атак Использование алгоритма на практике

Фишинговые сообщения электронной почты в корпоративной среде обычно знаменуют собой таргетированную атаку , хорошо продуманы и реализованы. В отличии от рядовых пользователей, сотрудники компаний могут быть проинструктированы должным образом о существующих угрозах информационной безопасности. За сообщениями электронной почты может быть установлен тот или иной контроль со стороны сотрудников ИТ/ИБ подразделений.

Прелюдия

Фишинговые письма, направленные на рядовых пользователей обычно мало «персонализированы», для привлечения внимания может быть подставлен только email пользователя. В сфере атак на корпоративные системы фишингу предшествует тщательный сбор и анализ информации об объекте и субъектах атаки, горизонтальные связи, возможные зоны ответственности и полномочия. Это необходимо для разработки продуманного социотехнического сценария и добавления деталей, позволяющих усыпить бдительность получателей письма.

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

По обычному сценарию, проникновение в систему началось с фишинговой рассылки. Поскольку здесь мы имеет дело с направленной атакой, фишинговая рассылка была максимально адаптирована для конкретного получателя. Как отметил Брюс Шнайер, это не просто фишинг, а фишинг с «лазерным прицелом».

В данном случае письма предназначались американским чиновникам, которые направлялись в Копенгаген на конференцию по изменению климата. Они получили по почте вредоносные файлы. Что характерно, письма были озаглавлены «Китай и изменение климата», а в качестве обратного адреса был указан поддельный адрес известного журналиста National Journal, который специализируется на статьях по международной экономике. Уже один этот факт свидетельствует о том, что злоумышленники тщательно продумали атаку и рассчитали, что адресаты должны обязательно открыть вложенный файл.

Дополнительно, в теле письма содержались комментарии, создающие впечатление, что документ непосредственно связан с рабочими обязанностями чиновников.


Проведение целевых фишинговых кампаний требует от киберпреступников больше времени и денег, чем в случае традиционных фишинговых кампаний. Мошенники должны получить доступ или украсть списки действующих адресов электронной почты для целевой организации или группы лиц, а затем создать правдоподобные письма, которые с высокой вероятностью привлекут получателей и те предоставят свои персональные данные. Однако в случае успеха финансовая отдача от целевого фишинга может быть намного выше, поэтому инвестиции вполне окупаются.
Что общего в нашумевших историях об утечке данных из систем ведущих ритейлеров Target и Neiman Marcus, гиганта медицинского страхования Anthem и Sony Pictures? Все они начались с тщательно спланированной таргетированной фишинговой атаки с использованием сообщений электронной почты. К письмам были приложены документы, зараженные вредоносными программами. При этом все они выглядели вполне обычно и были адресованы конкретным сотрудникам внутри организации.

Точечный фишинг стал самым распространенным типом таргетированной атаки по одной простой причине: эта техника по-настоящему работает, вводя в заблуждение даже тех пользователей, которые серьезно подходят к вопросам безопасности. Она создает для хакеров опорный пункт для проникновения в корпоративную сеть. По данным исследования Check Point, проведенного среди более 10 тысяч организаций по всему миру, в 84% из них за последние 12 месяцев был скачан хотя бы один зараженный документ. Это происходит потому, что злоумышленнику достаточно просто получить представление о компании или о конкретных ее сотрудниках в сети Интернет, а затем написать такое письмо, которое побудит даже самого бдительного работника открыть вредоносное вложение и тем самым инициировать хакерскую атаку.

Сбор информации

Сбор информации проводится из публичных источников, с использованием специализированных инструментов , запросов в поисковых системах , специализированных сервисов , анализа профилей компании в социальных сетях и на сайтах вакансий. Такого рода сбор информации можно соотнести с методологией OSINT (Open Source Intelligence - разведка на основе анализа открытых источников информации). Чем объемнее, точнее (как минимум два-три источника) и актуальнее информация - тем выше успех атаки.

Но львиную долю фишинговых сообщений составляют вредоносные файлы (пользователь может не знать свой пароль, либо авторизация на ресурсах происходит через LDAP и т.д.), модифицированные RAT и офисные документы, содержащие макросы с тем или иным функционалом.

Пример формирования back-connect шелла с помощью макросов офисного пакета и powershell:

Кейсы из практики

Примеры и разновидности атак зависят непосредственно от выбранной злоумышленниками цели, давать конкретику довольно сложно, поэтому в качестве десерта пару примеров из практики нашей компании и наших коллег.
На одну из финансовых организаций была произведена фишинговая рассылка. Адреса сотрудников были извлечены с помощью SQL-инъекции с разрабатываемой CRM на одном из поддоменов. Корпоративная почта была настроена на gmail. Фишинговое сообщение содержало ссылку на похожий ресурс и форму входа gmail. Вишенкой на торте был внедренный в эту страницу iframe - код одной из известных связок эксплоитов . Т.е. помимо эксплуатации социотехнического вектора был реализован и дополнительный вектор в виде средств эксплуатации уязвимостей браузеров и их компонентов. Атака позволила злоумышленникам получить контроль на некоторыми учетными записями.

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

Защита

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

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

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

Теги: Добавить метки

Фишинговые (мошеннические) программы выманивают ваши пароли
01:37
Фишинговые (мошеннические) программы выманивают ваши пароли
07:37
Последнее время участились случаи выманивания паролей у пользователей системы. Связано это с распространением лжепрограмм: "uCoz - Администратор", "Ucoz Агент", возможно еще каких-то аналогичных. Внешний вид их интерфейсов можно видеть на картинках в этом сообщении.
Как несложно убедиться, окна этих «программ» просят ввести пароль, секретный ответ. Вынужден в очередной раз напомнить, вводить подобные данные данные нигде не следует. На сегодня не существует никаких программ, утилит, адонов и т.п которые бы мы выпустили, или же реальных продуктов от сторонних разработчиков. И даже когда они будут, они, безусловно, не будут запрашивать все возможные ваши пароли, и абсолютно точно никогда не будут запрашивать ваш секретный ответ.
Прежде чем устанавливать, а тем более вводить какие-либо пароль данные в той или иной программе, необходимо убедиться в ее источники. В целях предосторожности следует найти информацию о продукте на официальном сайте компании, и, безусловно, подобный сайт не будут располагаться на сторонних доменах, таких как http://uagent.nm.ru/, http://nucoz.tk/ и т.п. Скачиваться файл так же должен с официального сайта, а не с файловых обменников или сторонних серверов.
Подобная логика, безусловно, касается не только программ связанных с юкозом, но и любых других. Чаще всего так выманиваются пароли для доступа к почтовым сервисам, онлайн играм, платежным системам.
Мы, в свою очередь, ведем борьбу с подобными явлениями, но реально защитить себя можете только вы сами. Рекомендую также прочитать материал про фишинг, если вы не делали этого ранее и прочие материалы по вопросам безопасности.
Если у вас все же выманили пароль, вам следует обратиться в нашу службу разбора жалоб.
Выбрать в форме обратной связи тему «Кража пароля». Перед тем как написать стоит внутренне успокоиться. Напомнить себе, что именно вы тем или иным образом утратили пароль, и ни система, ни человек который будет это читать в этом не виноваты, а значить лишние эмоции надо отбросить. Запастись терпением, разбирательство займет какое-то время, и по существу изложить вашу проблему. Не забыть указать о каком аккаунте идет речь, и пришедшие вам в голову доказательства того что вы владелец аккаунта. Скорее всего, вам зададут ряд вопросов на которые будет необходимо ответить.

Алексей Комаров

Возникшие с появлением фишинга угрозы потребовали внедрения адекватных мер защиты. В рамках данной статьи будут рассмотрены как уже широко распространенные способы противодействия фишингу, так и новые эффективные методы. Разделение это весьма условно: к традиционным отнесем хорошо известные (в том числе и самим злоумышленникам) способы противодействия фишингу и проанализируем их эффективность в первой части данной статьи. Согласно отчету APWG, за первую половину 2008 г. было выявлено 47 324 фишинговых сайтов. В этом же отчете приведены и средние потери пользователей и компаний в результате работы фишерского сайта – они составляют не менее $300 в час. Несложные умножения позволяют сделать вывод о высокой доходности этого вида черного бизнеса.

Современный фишинг

Слово "фишинг" (phishing) образовано от английских слов password – пароль и ёshing – рыбная ловля, выуживание. Цель этого вида Интернет-мошенничества – обманный увод пользователя на поддельный сайт, чтобы в дальнейшем украсть его личную информацию или, например, заразить компьютер пользователя, перенаправленного на подложный сайт, трояном. Зараженный компьютер может активно использоваться в ботнет-сетях для рассылки спама, организации DDOS-атак, а также для сбора данных о пользователе и отправки их злоумышленнику. Спектр применения "выуженной" у пользователя информации достаточно широк.

Механизмы фишинга

Главный вектор атаки фишинга направлен на самое слабое звено любой современной системы безопасности – на человека. Далеко не всегда клиент банка точно знает, какой адрес является правильным: mybank.account. com или account.mybank. com? Злоумышленники могут использовать и тот факт, что в некоторых шрифтах строчная i и прописная L выглядят одинаково (I = l). Такие способы позволяют обмануть человека с помощью похожей на настоящую ссылку в электронном письме, при этом даже наведение курсора мыши на такую ссылку (с целью увидеть настоящий адрес) не помогает. В арсенале злоумышленников есть и другие средства: от банальной подмены в локальной базе IP-адресов реального адреса на поддельный (в ОС Windows XP, например, для этого достаточно отредактировать файл hosts) до фарминга. Еще один вид мошенничества – подмена Web-страницы локально, "на лету". Специальный троян, заразивший компьютер пользователя, может добавлять в отображаемый браузером сайт дополнительные поля, отсутствующие на оригинальной странице. Например, номер кредитной карты. Конечно, для успешного проведения такой атаки надо знать банк или платежную систему, которыми пользуется жертва. Именно поэтому тематические базы электронных адресов пользуются большой популярностью и являются на черном рынке ликвидным товаром. Нежелающие нести дополнительные расходы фишеры просто направляют свои атаки на наиболее популярные сервисы – аукционы, платежные системы, крупные банки – в надежде на то, что случайный получатель спам-письма имеет там учетную запись. К сожалению, надежды злоумышленников зачастую оправдываются.

Традиционные методы противодействия фишинговым атакам

Уникальный дизайн сайта Суть этого метода такова: клиент, например, банка при заключении договора выбирает одно из предложенных изображений. В дальнейшем при входе на сайт банка ему будет показываться именно это изображение. В случае если пользователь его не видит или видит другое, он должен покинуть поддельный сайт и немедленно сообщить об этом службе безопасности. Предполагается, что злоумышленники, не присутствовавшие при подписании договора, априори не смогут угадать правильное изображение и обмануть клиента. Однако на практике этот способ не выдерживает критики. Во-первых, для того чтобы показать пользователю его картинку, его сначала надо идентифицировать, например, по логину, который он ввел на первой странице сайта банка. Злоумышленнику не составляет труда подготовить поддельный сайт, чтобы узнать эту информацию, а для самого пользователя – эмулировать ошибку связи. Теперь достаточно обратиться на реальный сервер, ввести украденный логин и подсмотреть правильное изображение.

Другой вариант – выдать клиенту фальшивое предупреждение об истечении срока действия его изображения и предложить выбрать новое...

Одноразовые пароли

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

В отличие от классического, одноразовый пароль используется только один раз, то есть при каждом запросе на предоставление доступа пользователь вводит новый пароль. Для этого используются, в частности, специальные пластиковые карточки с нанесенным защитным слоем. Клиент банка каждый раз стирает очередную полоску и вводит нужный одноразовый пароль. Всего на карточку стандартного размера помещается около 100 паролей, что при интенсивном использовании услуг телебанкинга требует регулярной замены носителя. Более удобными, но, правда, и дорогими представляются специальные устройства – генераторы одноразовых паролей. В основном различают два типа генерации: по времени, когда текущий одноразовый пароль отображается на экране и периодически меняется (например, раз в две минуты); по событию, когда новое значение генерируется каждый раз при нажатии пользователем на кнопку устройства.

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

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

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

Односторонняя аутентификация

Использование протокола безопасных соединений SSL (Secure Sockets Layer) обеспечивает защищенный обмен данными между Web-сервером и пользователями. Несмотря на тот факт, что протокол позволяет аутентифицировать не только сервер, но и пользователя, на практике чаще всего применяется только односторонняя аутентификация. Для установления SSL-соединения необходимо, чтобы сервер имел цифровой сертификат, используемый для аутентификации. Сертификат обычно выдается и заверяется третьей доверенной стороной, в роли которой выступают удостоверяющие центры (УЦ) или центры сертификации (в западной терминологии). Роль УЦ заключается в том, чтобы подтверждать подлинность Web-сайтов различных компаний, позволяя пользователям, "поверив" одному единственному удостоверяющему центру, автоматически иметь возможность проверять подлинность тех сайтов, владельцы которых обращались к этому же УЦ.

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

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

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

URL-фильтрация

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

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

Статистика фишинга на мобильных платформах.

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

По статистике, на 85% всех мобильных устройств установлена одна из версий Android, и неудивительно, что большинство атак и зловредов нацелены именно на нашу любимую операционную систему. Конечно, ситуация еще не так плoха, как с Windows лет десять назад, но тенденция пугает.

В январе прошлого года мы разбирали, насколько легко создать криптолокер под Android - программу, шифрующую пользовательские данные. И чуть позже, в апреле 2016 года, «Лаборатория Касперского» подтвердила наши опасения: компания заявила о появлении трояна-локера Fusob, атаковавшего смартфоны пользователей более чем из ста стран.

Многообразие фишинга

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

Но та волна хищений обошла страны СНГ стороной. Просто брать у нас было нечего: Павел Дуров еще ничего не написал, а пластиковые карты популярностью не пользовались. Сейчас же для мошенников ситуация стала по-настоящему «вкусной»: интернет-покупки, мобильный банкинг, всевозможные социальные сети - очень многое теперь доступно через мoбильный телефон, подключенный к интернету.

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

Рис. 2. Вирусная партнерка на крупном ресурсе

Такие сообщения генерируются на стороне сервера и выглядят достаточно топорно. Но, попав внутрь устройства, злоумышленник может совершить более элегантную и эффективную атаку. Давай разберемся, насколько сложно в Android подменить рабочее приложение на его вредоносный «аналог».

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

Почти Google Market

Для фишинга не нужно точь-в-точь реализовывать функциональность Google Market - проще написать приложение, расширяющее его возможности без изменения исходного кода. Интересно узнать, как хакeры проворачивают подобное? Тогда поехали!

Выбор

Будет неправильным пытаться подделать приложение, которым владелец устройства совсем не пользуется. Как и при обычном вторжении, мошеннику нужно сначала оценить, в какую среду он попал. Многообразие вендоров, выпускающих мобильные устройства, привело к большим изменениям и в самой ОС. И хотя, со слов маркетологов, все они работают на единой платформе Android, набор запущенных приложений может быть совершенно разным. В Android есть встроeнный API для получения списка запущенных процессов - это системный сервис ACTIVITY_SERVICE.

ActivityManager am = (ActivityManager ) getSystemService (Context .ACTIVITY_SERVICE ) ;

List < ActivityManager .RunningAppProcessInfo > runningAppProcessInfo = am .getRunningAppProcesses () ;

Google в целях безопасности с каждым годом все больше ограничивает возможности приложений взаимодействовать между собой. В документации это явно не указано, но для Android версии 4.0 и новее такой вызов вернет список только из одного приложения - твоего собственного. Не все потеряно - в основе Android лежит ядро Linux, а значит, у нас есть консоль. К ней можно добраться руками с помощью утилиты adb , входящей в Android Studio.

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

media _ rw1730 1176 7668 1876 1 20 0 0 0 fg inotify_re b75c3c46 S / system / bin / sdcard (u : 0 , s : 3 )

u0 _ a151798 1202 1298044 30520 0 20 0 0 0 fg SyS_epoll_ b72f9d35 S com .google .android .googlequicksearchbox : interactor (u : 3 , s : 1 )

u0 _ a351811 1202 1272580 37692 1 20 0 0 0 fg SyS_epoll_ b72f9d35 S com .android .inputmethod .latin (u : 9 , s : 1 )

u0 _ a81871 1202 1428180 77468 0 20 0 0 0 fg SyS_epoll_ b72f9d35 S com .google .android .gms .persistent (u : 168 , s : 163 )

Собственно, в этом выводе содержится достаточная для фишинга информация: имя процесса, его идентификатор, приоритет выполнения и так далее. Запустить утилиту можно не только руками, но и из приложения - для доступа к шеллу в стандартном API есть класс Shell.

List < String > stdout = Shell .SH .run ("toolbox ps -p -P -x -c" ) ;

Линуксоидам чаcто приходится писать однострочные скрипты, поэтому распарсить такой вывод для них не проблема. Но ООП-разработчики более нежные и наверняка не захотят таким заниматься.

На Гитхабе уже есть проект, в котором реализована необходимая функциональность. Создал его некто Джаред Раммлер (Jared Rummler), за что скажем ему спасибо. Обработка результата выполнения toolbox создана в виде библиотеки, которую можно подключить прямо через Gradle.

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

for (AndroidAppProcess pr : processes ) {

if (pr .getPackageName () .equals (ps_name ) ) {

/ / do smth

Обрати внимание: начиная с Android 7.0 Google ввела ограничение на доступ к информации о процессах других приложений. Теперь ее нельзя получить даже с помощью команды ps и прямого чтения файловой системы /proc. Впрочем, на Android 7+ большая часть юзеров перейдет очень не скоро - если вообще перейдет.

Активные приложения

Успешные фишинговые операции, как правило, хорошо подготовлены - мошенники умеют подобрать момент так, что у пользователя не возникает даже малейших подозрений в подлоге. Поэтому телефон не должен просто так попросить ввести данные бaнковской карты - это будет очень подозрительно. Фишинговые сообщения пoявляются под каким-то предлогом, например платные псевдoобновления для 1C или фиктивные банковские ресурсы на адресах, схожих по написанию с лeгальными.

Многозадачность Android тут может сыграть на руку - в ОС могут работать одновременно с десяток приложений, сменяя друг друга. Неопытный пользователь может даже и не понять (да и вообще не задумываться), в каком именно приложении он сейчас работает. Вывод ps дает информацию, какие именно приложения сейчас активно взаимoдействуют с пользователем - то есть ему видны.

u0 _ a65. . . bg SyS_epoll_ b7366d35 S com .localhost .app .noizybanner (u : 248 , s : 84 )

u0 _ a64. . . fg SyS_epoll_ b7366d35 S com .localhost .app .fragments (u : 7 , s : 11 )

Этот параметр находится в 11-й колонке - тут может быть значение bg (background, скрыт) или fg (foreground, виден). ОС самостоятельно отслеживает такие состояния приложений, поэтому задача разработчика - только время от времени вызывать ps.
На основе библиотеки получается простенький метод, определяющий состояние искомого приложения.

private Boolean isProccessForeground (String ps_name )

List < AndroidAppProcess > processes = AndroidProcesses .getRunningForegroundApps (getApplicationContext () ) ;

. . .

У нас есть возможность сразу выбрать только видимые процессы с помощью одноименного метода. Но он не всегда срабатывает корректно и выдает даже пpиложения, которые сейчас пользователю невидимы. В этой ситуации нужно проверять значение метода foreground, которое будет true, если какое-либо Activity видно пользователю.

for (AndroidAppProcess pr : processes )

if (pr .getPackageName () .equals (ps_name ) && (pr .foreground == true ) ) {

Log .e ("ps" , " " + pr .getPackageName () + " foreground " + pr .foreground ) ;

return true ;

. . .

Теперь есть возможность найти удобный момент для атаки - вызов этого метода покажет, работает ли сейчас пользователь в определенном приложении. Как только метод вернет true, можно запустить любое Activity, которое тут же будет показано пользователю. В этом и заключается суть атаки - продемонстрировать пользователю фишинговое окно под видом уведомления от доверенного приложения.

/ / Проверяем, открытлиGoogle Market

if (isProccessForeground ("com.android.vending" ) ) {

Intent i = new Intent () ;

i .setClass (getApplicationContext () , FakeGUI .class ) ;

startActivity (i ) ;

В целом фишингoвая атака уже построена. Для ее эксплуатации нужно настроить периодическое отслеживание приложения-жертвы, а также нарисовать GUI окна для ввода данных банковской карты.

Сервисы

Отслеживать состояние приложения несложно, нужно только с определенной периодичностью перезапускать метод isProccessForeground - это можно реализовать в кoмпоненте Activity или Service. Но долго держать запущенным один и тот же экземпляр Activity не получится, рано или поздно он будет выгружен системой. К тому же это слишком заметно для пользователя.

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

Сервисы могут быть разными: так называемый foreground service будет работать в системе всегда и остановится только вместе с выключением телефона. Мы уже подробно разбирали работу сервисов раньше, поэтому сегодня буду краток. Foreground service наследуется от класса Service и должен обязательно имeть иконку, которая будет присутствовать в панели уведомлений устройства.

NotificationCompat .Builder mBuilder = new NotificationCompat .Builder (this )

SetSmallIcon (R .mipmap .ic_launcher )



Просмотров