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

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

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

Иногда шпионы могут быть утилитами, но чаще всего они представлены вирусами. Относятся эти вредители к классу spyware. Отличие одной категории от другой в том, что программы-шпионы начинают активничать только после установки.

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

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

Особенности шпионов-вирусов и программ

Разнообразие шпионов-утилит велико. Пользователи могут сталкиваться с самыми разными элементами, которые проводят слежку. Но все же стоит выделить отличительные черты программ и вирусов.

Довольно часто антивирусники блокируют шпионские программы, относя их к числу вредоносных. Однако, эти объекты к вредоносным не имеют никакого отношения. Но при этом блокировка их производится все равно.

В чём именно разница между реальным вредителем spyware и теми сервисами, которые предназначены для проведения секретной слежки за персональным компьютером? Отличие данных объектов в выполнении работы и сфере применения.

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

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

Разные типы шпионов. Контроль за набором на клавиатуре

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

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

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

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

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

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

Простой и очень актуальный шпион

Пользователи в процессе работы на ПК могли сталкиваться с SC-KeyLog. Данный: кейлоггер является бесплатным. Но определяется он установленными на аппарате защитниками еще в момент выполнения загрузки такого объекта.

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

Далее нужно будет выбрать то место, где файл с сервисом в дальнейшем будет располагаться. Исполняемый файл следящего модуля после этого разместиться на указанном ранее диске. Как только установка ПО будет завершена, то пользователи могут уже переходить к настройке данного сервиса.

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

SC-KeyLog в ходе работы отображает заголовки всех тех окон, с которыми работает юзер. Также утилита в полной мере контролирует все те действия, которые производятся на клавиатуре. Но есть один недостаток: невозможность автоматического переключения раскладки. Так что все тексты выводятся исключительно английскими буквами.

Шпионы более широкого спектра действия

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

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

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

Яркие представители бесплатных комплексных шпионов

Чтобы оценить принцип работы такого рода программных продуктов, нужно на практике проверить их работоспособность. Для примера можно рассмотреть софт Softex Expert Home. Это бесплатная русскоязычная система. Утилита эта будет моментально блокировать самые разные нажатия клавиатуры.

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

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

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

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

Softex Expert Home функционировать может не только в обычном, но и в стационарном режиме. при этом на экране не будут созданы ярлыки и прочие атрибуты программы. При нажатии ранее выбранных клавиш сразу же будет загружаться основное окно ПО.

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

Ещё одной бесплатной комплексной программой является Refog Free Keylogger. Простой интерфейс непременно порадует пользователей. Данное программное обеспечение помогает осуществлять перехват переписки в установленных мессенджерах, следит за социальными сетями.

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

Главным недостатком бесплатной версии отмечаются некоторые ограничения. Связано это с некоторыми аспектами в проведении слежки. В остальном же сбоев не наблюдается.

Также пользователи могут устанавливать такого рода шпионы и на мобильные девайсы. В сети можно будет найти несколько актуальных помощников такого плана. Ярким представителем является утилита KidLogger. Это весьма актуальный мультиплатформенный софт для слежки.

Коварные анализаторы трафика

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

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

NirSoft SmartSniff – это классический представитель снифферов. Данный сервис помогает провести перехват данных, которые могут красть мошенники. Также утилита направлена на проведение отладки сети.

Но поскольку пользователи все чаще предпочитают проводить работу на стационарных аппаратах, то и для этой категории устройств предусмотрены софты данного типа. Для Android подойдет WireShark Shark for Root.

Благодаря этому сервису мошенникам удается осуществлять кражу данных непосредственно с мобильника. Достаточно подключить смартфон или планшет к публичной точке доступа.

Борьба с вредителями. Меры противодействия

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

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

Первое, что необходимо выполнить, так это провести обновление баз антивирусных программ. Также нужно будет проверить все объекты, которые находятся в «белом» списке защитника. При этом важно убедиться в том, что подозрительных объектов в нем нет.

Пользователям обязательно работать не с простыми антивирусами. Лучшими в данной категории являются AdwCleaner и AVZ. Данные программные продукты относятся к числу наиболее часто используемых для выполнения блокировки от угроз самых разных типов.

Также может помочь утилита AnVir Task Manager. Особенность функционирования приложения в том, что оно направлено на определение имен и адресов всех запущенных процессов. При этом с точностью определяется степень вреда, который может быть нанесен системе. Утилиты эти надежны в том, чтобы быстро обезвреживать даже снифферы.

2 июня 2016 в 12:29

Пишем свое вредоносное ПО. Часть 1: Учимся писать полностью «не обнаружимый» кейлогер

  • Перевод

Хакерский мир можно условно разделить на три группы атакующих:


1) «Skids» (script kiddies) – малыши, начинающие хакеры, которые собирают известные куски кода и утилиты и используя их создают какое-то простое вредоносное ПО.


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


3) «Black Hat Сoders» - гуру программирования и знатоки архитектур. Пишут код в блокноте и разрабатывают новые эксплоиты с нуля.


Может ли кто-то с хорошими навыками в программировании стать последним? Не думаю, что вы начнете создавать что-то, на подобии regin (ссылка) после посещения нескольких сессий DEFCON. С другой стороны, я считаю, что сотрудник ИБ должен освоить некоторые концепты, на которых строится вредоносное ПО.


Зачем ИБ-персоналу эти сомнительные навыки?


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


Для этого неформального класса «hacking 101» вам необходимы небольшие знания в программировании (С# и java) и базовое понимание архитектуры Windows. Имейте ввиду, что в реальности вредоносное ПО пишется на C/C++/Delphi, чтобы не зависеть от фреймфорков.


Кейлогер


Кейлогер – это ПО или некое физическое устройство, которое может перехватывать и запоминать нажатия клавиш на скомпрометированной машине. Это можно представить как цифровую ловушку для каждого нажатия на клавиши клавиатуры.
Зачастую эту функцию внедряют в другое, более сложное ПО, например, троянов (Remote Access Trojans RATS), которые обеспечивают доставку перехваченных данных обратно, к атакующему. Также существуют аппаратные кейлогеры, но они менее распространены, т.к. требуют непосредственного физического доступа к машине.


Тем не менее создать базовые функции кейлогера достаточно легко запрограммировать. ПРЕДУПРЕЖДЕНИЕ. Если вы хотите попробовать что-то из ниже следующего, убедитесь, что у вас есть разрешения, и вы не несёте вреда существующей среде, а лучше всего делать это все на изолированной ВМ. Далее, данный код не будет оптимизирован, я всего лишь покажу вам строки кода, которые могут выполнить поставленную задачу, это не самый элегантный или оптимальный путь. Ну и наконец, я не буду рассказывать как сделать кейлогер стойким к перезагрузкам или пытаться сделать его абсолютно не обнаружимым благодаря особым техникам программирования, так же как и о защите от удаления, даже если его обнаружили.



Для подключения к клавиатуре вам всего лишь нужно использовать 2 строки на C#:


1. 2. 3. public static extern int GetAsyncKeyState(Int32 i);

Вы можете изучить больше про фунцию GetAsyncKeyState на MSDN :


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


1. while (true) 2. { 3. Thread.Sleep(100); 4. for (Int32 i = 0; i < 255; i++) 5. { 6. int state = GetAsyncKeyState(i); 7. if (state == 1 || state == -32767) 8. { 9. Console.WriteLine((Keys)i); 10. 11. } 12. } 13. }

Что здесь происходит? Этот цикл будет опрашивать каждые 100 мс каждую из клавиш для определения ее состояния. Если одна из них нажата (или была нажата), сообщение об этом будет выведено на консоль. В реальной жизни эти данные буферизируются и отправляются злоумышленнику.


Умный кейлогер

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


Давайте предположим, что я хочу заполучить учетные данные Facebook или Gmail для последующей продажи лайков. Тогда новая идея – активировать кейлоггинг только тогда, когда активно окно браузера и в заголовке страницы есть слово Gmail или facebook. Используя такой метод я увеличиваю шансы получения учетных данных.


Вторая версия кода:


1. while (true) 2. { 3. IntPtr handle = GetForegroundWindow(); 4. if (GetWindowText(handle, buff, chars) > 0) 5. { 6. string line = buff.ToString(); 7. if (line.Contains("Gmail")|| line.Contains("Facebook - Log In or Sign Up ")) 8. { 9. //проверка клавиатуры 10. } 11. } 12. Thread.Sleep(100); 13. }

Этот фрагмент будет выявлять активное окно каждые 100мс. Делается это с помощью функции GetForegroundWindow (больше информации на MSDN). Заголовок страницы хранится в переменной buff, если в ней содержится gmail или facebook, то вызывается фрагмент сканирования клавиатуры.


Этим мы обеспечили сканирование клавиатуры только когда открыто окно браузера на сайтах facebook и gmail.


Еще более умный кейлогер


Давайте предположим, что злоумышленник смог получить данные кодом, на подобии нашего. Так же предположим, что он достаточно амбициозен и смог заразить десятки или сотни тысяч машин. Результат: огромный файл с гигабайтами текста, в которых нужную информацию еще нужно найти. Самое время познакомиться с регулярными выражениями или regex. Это что-то на подобии мини языка для составления неких шаблонов и сканирования текста на соответствие заданным шаблонам. Вы можете узнать больше здесь.


Для упрощения, я сразу приведу готовые выражения, которые соответствуют именам логина и паролям:


1. //Ищем почтовый адрес 2. ^[\w!#$%&"*+\-/=?\^_`{|}~]+(\.[\w!#$%&"*+\-/=?\^_`{|}~]+)*@((([\-\w]+\.)+{2,4})|(({1,3}\.){3}{1,3}))$ 3. 4. 5. //Ищем пароль 6. (?=^.{6,}$)(?=.*\d)(?=.*)

Эти выражения здесь как подсказка тому, что можно сделать используя их. С помощью регулярных выражений можно искать (т найти!) любые конструкции, которые имеют определенный и неизменный формат, например, номера паспортов, кредитных карт, учетные записи и даже пароли.
Действительно, регулярные выражения не самый читаемый вид кода, но они одни из лучших друзей программиста, если есть задачи парсинга текста. В языках Java, C#, JavaScript и других популярных уже есть готовые функции, в которые вы можете передать обычные регулярные выражения.


Для C# это выглядит так:


1. Regex re = new Regex(@"^[\w!#$%&"*+\-/=?\^_`{|}~]+(\.[\w!#$%&"*+\-/=?\^_`{|}~]+)*@((([\-\w]+\.)+{2,4})|(({1,3}\.){3}{1,3}))$"); 2. Regex re2 = new Regex(@"(?=^.{6,}$)(?=.*\d)(?=.*)"); 3. string email = "[email protected]"; 4. string pass = "abcde3FG"; 5. Match result = re.Match(email); 6. Match result2 = re2.Match(pass);

Где первое выражение (re) будет соответствовать любой электронной почте, а второе (re2) любой цифро буквенной конструкции больше 6 символов.


Бесплатно и полностью не обнаружим


В своем примере я использовал Visual Studio – вы можете использовать свое любимое окружение – для создания такого кейлогера за 30 минут.
Если бы я был реальным злоумышленником, то я бы целился на какую-то реальную цель (банковские сайты, соцсети, тп) и видоизменил код для соответствия этим целям. Конечно, также, я запустил бы фишинговую кампанию с электронными письмами с нашей программой, под видом обычного счета или другого вложения.


Остался один вопрос: действительно такое ПО будет не обнаруживаемым для защитных программ?


Я скомпилировал мой код и проверил exe файл на сайте Virustotal. Это веб-инструмент, который вычисляет хеш файла, который вы загрузили и ищет его в базе данных известных вирусов. Сюрприз! Естественно ничего не нашлось.



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

  • информационная безопасность
  • Добавить метки

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

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

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

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

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

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

    Что можно сделать, чтобы обезопасить себя от spyware:

    1. Обзавестись антивирусом. Самый банальный, самый простой и самый надежный способ. Несмотря на свою тривиальность, перед всеми остальными он обладает почти неоспоримыми преимуществами. Перед тем, как запускать новые файлы, антивирус всегда проверяет их, автоматически блокирует в случае обнаружения угрозы и позволяет пользователю проверить компьютер на наличие вирусов в любой момент.
    2. Быть более внимательным. Опять же, банальный совет, но довольно действенный. Он прост до невозможности - не скачивать что попало, не устанавливать дешевые программы, обещающие золотые горы или решение всех проблем в мире. Бесплатный сыр бывает только в одном месте, и попадаться туда должны грызуны, а не люди.
    3. Повысить свою компьютерную грамотность. Это задача не из легких, особенно для тех, кто с компьютерами не слишком хорошо ладит. Однако стоит помнить, что с каждым годом компьютеризация охватывает все больше и больше сфер нашей жизни. Чем лучше каждый из нас начнет разбираться в том, как электронные вычислительные машины работают, тем безопаснее мы будем себя чувствовать. Этот совет, впрочем, распространяется не только на компьютеры, но и на все остальное. Времена таковы, что «уметь что-то делать» понемногу уходит в прошлое, и на его место становится «уметь научиться что-то делать». Технологии развиваются слишком быстро, чтобы привыкать к ним. Один и тот же способ выполнять какую-либо задачу неизбежно устаревает, причем с бешеной скоростью. Чтобы по-настоящему обезопасить себя, свою информацию, да и шансы на успех в жизни, нужно учиться находить способы, а не учиться самим способам.
    4. Очищать компьютер от важной информации. В отличие от предыдущего совета, здесь все просто. Каждый день удалять историю посещений в браузере, не сохранять паролей, не оставаться залогиненым на сайтах банков и платежных систем. Таким образом украсть информацию будет труднее, ведь большую часть времени ее и не будет на самом компьютере.

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

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

    Spyware – вредоносные шпионские программы для компьютера – НЕ относятся к обычным вирусам, это отдельный тип противоправного вмешательства в компьютерную систему пользователя.

    И большинство антивирусных продуктов содержат отдельные программные разделы для работы со Spyware.

    Чем же отличаются шпионские программы Spyware от обычных компьютерных вирусов – к примеру, от троянов или сетевых червей?

    Компьютерный вирус, как правило, наносит вред операционной системе, программному обеспечению и данным пользователя. Этим, по большому счету, и отличаются Spyware.

    В отличии от вирусов, шпионские программы для компьютера не наносят вреда – ни системе, ни программам, ни пользовательским файлам. Однако пользователь, если на его компьютер внедрена шпионская программа, вряд ли сможет рассчитывать на всю производительность своей машины – Spyware задействует какое-то количество , и от этого компьютер может частенько зависать и подтормаживать.

    Но это техническая сторона Spyware, а какова же суть шпионских программ?

    Шпионские программы для компьютера – что это такое?

    Задачей шпионских программ, как видим из самого названия, является периодический сбор информации о пользователях:

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

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

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

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

    Каким способом шпионские программы могут проникнуть в компьютер?

    Чаще всего это происходит во время инсталляции в систему сторонних приложений.

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

    При инсталляции сторонних приложений нужно максимум внимания, часто шпионские программы проникают в компьютер после нажатия «ОК» на запрос в окошке мастера инсталляции.

    Еще один путь таких программ в систему – напрямую из Интернета.

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

    Рассмотрим ниже самые распространенные виды шпионских программ.

    Виды шпионских программ

    1. Кей-логгеры

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

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

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

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

    Присутствие аппаратного кей-логгера видно из анализа данных диспетчера устройств Windows. Существуют также специальные программы, диагностирующие все оборудование компьютера – это, например, SiSoftware Sandra или AIDA64.

    Обнаружить и нейтрализовать программный кей-логгер можно с помощью запуска специальных программ типа Anti-Spyware. Как правило, они включены состав антивирусных пакетов в качестве отдельных утилит. Но программы Anti-Spyware также можно устанавливать и запускать отдельно – например, программа Anti-keylogger.

    100% защита от клавиатурных кей-логеров вряд ли существует. Тем не менее использование все-таки я бы советовала взять за привычку при вводе паролей, например, для доступа в .

    2. Сканеры жесткого диска

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

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

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

    3. Экранные шпионы

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

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

    4. Прокси-шпионы

    «Прокси-шпионы» – такие шпионские программы, проникая в пользовательские компьютеры, превращают их в прокси-серверы. Злоумышленники могут прикрыться компьютером пользователя-жертвы для противозаконных действий. В итоге нести ответственность за содеянное придется последнему – владельцу компьютера, на котором установлена шпионская программа.

    Типичным примером работы таких «прокси-шпионов» является рассылка спама с компьютера пользователя-жертвы. К уголовной ответственности его, конечно же, никто не привлечет, а вот проблемы с провайдером обеспечены.

    5. Почтовые шпионы

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

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

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

    Почтовые шпионы вставляют в письма пользователей-жертв рекламные блоки, ссылки и прочий материал, предназначенный для достижения целей разработчика.

    Можно ли защититься от шпионских программ?

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

    .
    Уже более 3.000 подписчиков . 2 июня 2016 в 12:29

    Пишем свое вредоносное ПО. Часть 1: Учимся писать полностью «не обнаружимый» кейлогер

    • Блог компании Varonis Systems ,
    • Информационная безопасность ,
    • Программирование
    • Перевод
    • Recovery Mode

    Хакерский мир можно условно разделить на три группы атакующих:


    1) «Skids» (script kiddies) – малыши, начинающие хакеры, которые собирают известные куски кода и утилиты и используя их создают какое-то простое вредоносное ПО.


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


    3) «Black Hat Сoders» - гуру программирования и знатоки архитектур. Пишут код в блокноте и разрабатывают новые эксплоиты с нуля.


    Может ли кто-то с хорошими навыками в программировании стать последним? Не думаю, что вы начнете создавать что-то, на подобии regin (ссылка) после посещения нескольких сессий DEFCON. С другой стороны, я считаю, что сотрудник ИБ должен освоить некоторые концепты, на которых строится вредоносное ПО.


    Зачем ИБ-персоналу эти сомнительные навыки?


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


    Для этого неформального класса «hacking 101» вам необходимы небольшие знания в программировании (С# и java) и базовое понимание архитектуры Windows. Имейте ввиду, что в реальности вредоносное ПО пишется на C/C++/Delphi, чтобы не зависеть от фреймфорков.


    Кейлогер


    Кейлогер – это ПО или некое физическое устройство, которое может перехватывать и запоминать нажатия клавиш на скомпрометированной машине. Это можно представить как цифровую ловушку для каждого нажатия на клавиши клавиатуры.
    Зачастую эту функцию внедряют в другое, более сложное ПО, например, троянов (Remote Access Trojans RATS), которые обеспечивают доставку перехваченных данных обратно, к атакующему. Также существуют аппаратные кейлогеры, но они менее распространены, т.к. требуют непосредственного физического доступа к машине.


    Тем не менее создать базовые функции кейлогера достаточно легко запрограммировать. ПРЕДУПРЕЖДЕНИЕ. Если вы хотите попробовать что-то из ниже следующего, убедитесь, что у вас есть разрешения, и вы не несёте вреда существующей среде, а лучше всего делать это все на изолированной ВМ. Далее, данный код не будет оптимизирован, я всего лишь покажу вам строки кода, которые могут выполнить поставленную задачу, это не самый элегантный или оптимальный путь. Ну и наконец, я не буду рассказывать как сделать кейлогер стойким к перезагрузкам или пытаться сделать его абсолютно не обнаружимым благодаря особым техникам программирования, так же как и о защите от удаления, даже если его обнаружили.



    Для подключения к клавиатуре вам всего лишь нужно использовать 2 строки на C#:


    1. 2. 3. public static extern int GetAsyncKeyState(Int32 i);

    Вы можете изучить больше про фунцию GetAsyncKeyState на MSDN :


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


    1. while (true) 2. { 3. Thread.Sleep(100); 4. for (Int32 i = 0; i < 255; i++) 5. { 6. int state = GetAsyncKeyState(i); 7. if (state == 1 || state == -32767) 8. { 9. Console.WriteLine((Keys)i); 10. 11. } 12. } 13. }

    Что здесь происходит? Этот цикл будет опрашивать каждые 100 мс каждую из клавиш для определения ее состояния. Если одна из них нажата (или была нажата), сообщение об этом будет выведено на консоль. В реальной жизни эти данные буферизируются и отправляются злоумышленнику.


    Умный кейлогер

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


    Давайте предположим, что я хочу заполучить учетные данные Facebook или Gmail для последующей продажи лайков. Тогда новая идея – активировать кейлоггинг только тогда, когда активно окно браузера и в заголовке страницы есть слово Gmail или facebook. Используя такой метод я увеличиваю шансы получения учетных данных.


    Вторая версия кода:


    1. while (true) 2. { 3. IntPtr handle = GetForegroundWindow(); 4. if (GetWindowText(handle, buff, chars) > 0) 5. { 6. string line = buff.ToString(); 7. if (line.Contains("Gmail")|| line.Contains("Facebook - Log In or Sign Up ")) 8. { 9. //проверка клавиатуры 10. } 11. } 12. Thread.Sleep(100); 13. }

    Этот фрагмент будет выявлять активное окно каждые 100мс. Делается это с помощью функции GetForegroundWindow (больше информации на MSDN). Заголовок страницы хранится в переменной buff, если в ней содержится gmail или facebook, то вызывается фрагмент сканирования клавиатуры.


    Этим мы обеспечили сканирование клавиатуры только когда открыто окно браузера на сайтах facebook и gmail.


    Еще более умный кейлогер


    Давайте предположим, что злоумышленник смог получить данные кодом, на подобии нашего. Так же предположим, что он достаточно амбициозен и смог заразить десятки или сотни тысяч машин. Результат: огромный файл с гигабайтами текста, в которых нужную информацию еще нужно найти. Самое время познакомиться с регулярными выражениями или regex. Это что-то на подобии мини языка для составления неких шаблонов и сканирования текста на соответствие заданным шаблонам. Вы можете узнать больше здесь.


    Для упрощения, я сразу приведу готовые выражения, которые соответствуют именам логина и паролям:


    1. //Ищем почтовый адрес 2. ^[\w!#$%&"*+\-/=?\^_`{|}~]+(\.[\w!#$%&"*+\-/=?\^_`{|}~]+)*@((([\-\w]+\.)+{2,4})|(({1,3}\.){3}{1,3}))$ 3. 4. 5. //Ищем пароль 6. (?=^.{6,}$)(?=.*\d)(?=.*)

    Эти выражения здесь как подсказка тому, что можно сделать используя их. С помощью регулярных выражений можно искать (т найти!) любые конструкции, которые имеют определенный и неизменный формат, например, номера паспортов, кредитных карт, учетные записи и даже пароли.
    Действительно, регулярные выражения не самый читаемый вид кода, но они одни из лучших друзей программиста, если есть задачи парсинга текста. В языках Java, C#, JavaScript и других популярных уже есть готовые функции, в которые вы можете передать обычные регулярные выражения.


    Для C# это выглядит так:


    1. Regex re = new Regex(@"^[\w!#$%&"*+\-/=?\^_`{|}~]+(\.[\w!#$%&"*+\-/=?\^_`{|}~]+)*@((([\-\w]+\.)+{2,4})|(({1,3}\.){3}{1,3}))$"); 2. Regex re2 = new Regex(@"(?=^.{6,}$)(?=.*\d)(?=.*)"); 3. string email = "[email protected]"; 4. string pass = "abcde3FG"; 5. Match result = re.Match(email); 6. Match result2 = re2.Match(pass);

    Где первое выражение (re) будет соответствовать любой электронной почте, а второе (re2) любой цифро буквенной конструкции больше 6 символов.


    Бесплатно и полностью не обнаружим


    В своем примере я использовал Visual Studio – вы можете использовать свое любимое окружение – для создания такого кейлогера за 30 минут.
    Если бы я был реальным злоумышленником, то я бы целился на какую-то реальную цель (банковские сайты, соцсети, тп) и видоизменил код для соответствия этим целям. Конечно, также, я запустил бы фишинговую кампанию с электронными письмами с нашей программой, под видом обычного счета или другого вложения.


    Остался один вопрос: действительно такое ПО будет не обнаруживаемым для защитных программ?


    Я скомпилировал мой код и проверил exe файл на сайте Virustotal. Это веб-инструмент, который вычисляет хеш файла, который вы загрузили и ищет его в базе данных известных вирусов. Сюрприз! Естественно ничего не нашлось.



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

  • информационная безопасность
  • Добавить метки