Программы для автоматизации создания вирусов червей и троянских программ
Компьютерные вирусы и антивирусные программы
Компьютерные вирусы и антивирусные программы Персональный компьютер играет в жизни современного человека важную роль, поскольку он помогает ему почти во всех областях его деятельности. Современное общество все больше вовлекается в виртуальный мир Интернета. Но с активным развитием глобальных сетей актуальным является вопрос информационной безопасности, так как проникающие их сети вирусы могут нарушить целостность и сохранность вашей информации. Защита компьютера от вирусов – это та задача, решать которую приходится всем пользователям, и особенно тем, кто активно пользуется Интернетом или работает в локальной сети.
Первая «эпидемия» компьютерного вируса произошла в 1986 году, когда вирус по имени Brain (англ. «мозг») «заражал» дискеты персональных компьютеров. В настоящее время известно несколько десятков тысяч вирусов, заражающих компьютеры и распространяющихся по компьютерным сетям. ИСТОРИЯ КОМПЬЮТЕРНЫХ ВИРУСОВ
Что же такое вирус? И чем биологический вирус отличается от компьютерного? Обратимся к вирусной энциклопедии «Лаборатории Касперского», электронной энциклопедии Кирилла и Мефодия и к толковому словарю русского языка С.И. Ожегова и Н.Ю. Шведовой
Вирус – мельчайшая неклеточная частица, размножающаяся в живых клетках, возбудитель инфекционного заболевания. Толковый словарь русского языка С. И. Ожегова и Н. Ю. Шведовой
Что же общего между биологическим и компьютерным вирусами? Способность к размножению. Вред для здоровья человека и нежелательные действия для компьютера. Скрытность, т.к. вирусы имеют инкубационный период.
ИСТОРИЯ КОМПЬЮТЕРНЫХ ВИРУСОВ Первый прототип вируса появился еще в 1971г.. Программист Боб Томас, пытаясь решить задачу передачи информации с одного компьютера на другой, создал программу Creeper, самопроизвольно «перепрыгивавшую» с одной машины на другую в сети компьютерного центра. Правда эта программа не саморазмножалась, не наносила ущерба.
ИСТОРИЯ КОМПЬЮТЕРНЫХ ВИРУСОВ Первые исследования саморазмно-жающихся искусственных конструкций проводилась в середине прошлого столетия учеными фон Нейманом и Винером.
После заражения компьютера вирус может активизироваться и начать выполнять вредные действия по уничтожению программ и данных. Активизация вируса может быть связана с различными событиями: наступлением определённой даты или дня недели запуском программы открытием документа… ЧЕМ ОПАСЕН КОМПЬЮТЕРНЫЙ ВИРУС?
Для защиты от вирусов можно использовать копирование информации - создание копий файлов и системных областей дисков; разграничение доступа - предотвращает несанкционированное использование информации, в частности, защиту от изменений программ и данных вирусами, неправильно работающими программами и ошибочными действиями пользователей профилактические меры, позволяющие уменьшить вероятность заражения вирусом; специализированные программы для защиты от вирусов
ПРИЗНАКИ КЛАССИФИКАЦИИ Среда обитания Операционная система Особенности алгоритма работы Деструктивные возможности
Могут передавать по компьютерным сетям свой программный код и запускать его на компьютерах, подключённых к этой сети. Заражение сетевым вирусом может произойти при работе с электронной почтой или при «путешествиях» по Всемирной паутине. СЕТЕВЫЕ ВИРУСЫ
сетевые черви Сетевые вирусы троянские программы хакерские утилиты
Сетевые вирусы Сетевые черви (Интернет-черви) – программы, распространяющие свои копии по локальным или глобальным сетям (с помощью электронной почты, обычно вложены в письма) с целью: проникновения на удаленные компьютеры; запуска своей копии на удаленном компьютере; дальнейшего распространения на другие компьютеры.
Сетевые вирусы Троянские программы. «Троянский конь» употребляется в значении: тайный, коварный замысел. Эти программы осуществляют различные несанкционированные пользователем действия: сбор информации и ее передача злоумышленникам; разрушение информации или злонамерная модификация; нарушение работоспособности компьютера; использование ресурсов компьютера в неблаговидных целях.
Сетевые вирусы Хакерские утилиты и прочие вредоносные программы. К данной категории относятся: утилиты автоматизации создания вирусов, червей и троянских программ; программные библиотеки, разработанные для создания вредоносного ПО; хакерские утилиты скрытия кода зараженных файлов от антивирусной проверки; программы, сообщающие пользователю заведомо ложную информацию о своих действиях в системе; прочие программы, тем или иным способом намеренно наносящие прямой или косвенный ущерб данному или удаленным компьютерам.
неопасные ДЕСТРУКТИВНЫЕ ВОЗМОЖНОСТИ безвредные очень опасные опасные
По деструктивным особенностям вирусы можно разделить на: безвредные, т.е. никак не влияющие на работу компьютера (кроме уменьшения свободной памяти на диске в результате своего распространения); неопасные, влияние которых ограничивается уменьшением свободной памяти на диске и графическими, звуковыми и пр. эффектами; опасные вирусы, которые могут привести к серьезным сбоям в работе компьютера; очень опасные, в алгоритмах работы которых заведомо заложены процедуры, которые могут привести к потере программ, уничтожить данные, стереть необходимую для работы компьютера информацию, записанную в системных областях памяти, и даже, как гласит одна из непроверенных компьютерных легенд, способствовать быстрому износу движущихся частей механизмов - вводить в резонанс и разрушать головки некоторых типов винчестеров.
Хакерский мир можно условно разделить на три группы атакующих:
1) «Skids» (script kiddies) – малыши, начинающие хакеры, которые собирают известные куски кода и утилиты и используя их создают какое-то простое вредоносное ПО.
2) «Byuers» — не чистые на руку предприниматели, тинэйджеры и прочие любители острых ощущений. Покупают услуги по написанию такого ПО в интернете, собирают с ее помощью различную приватную информацию, и, возможно, перепродают ее.
3) «Black Hat Сoders» — гуру программирования и знатоки архитектур. Пишут код в блокноте и разрабатывают новые эксплоиты с нуля.
Может ли кто-то с хорошими навыками в программировании стать последним? Не думаю, что вы начнете создавать что-то, на подобии regin (ссылка) после посещения нескольких сессий DEFCON. С другой стороны, я считаю, что сотрудник ИБ должен освоить некоторые концепты, на которых строится вредоносное ПО.
Зачем ИБ-персоналу эти сомнительные навыки?
Знай своего врага. Как мы уже обсуждали в блоге Inside Out, нужно думать как нарушитель, чтобы его остановить. Я – специалист по информационной безопасности в Varonis и по моему опыту – вы будете сильнее в этом ремесле если будете понимать, какие ходы будет делать нарушитель. Поэтому я решил начать серию постов о деталях, которые лежат в основе вредоносного ПО и различных семействах хакерских утилит. После того, как вы поймете насколько просто создать не детектируемое ПО, вы, возможно, захотите пересмотреть политики безопасности на вашем предприятии. Теперь более подробно.
Кейлогер – это ПО или некое физическое устройство, которое может перехватывать и запоминать нажатия клавиш на скомпрометированной машине. Это можно представить как цифровую ловушку для каждого нажатия на клавиши клавиатуры.
Зачастую эту функцию внедряют в другое, более сложное ПО, например, троянов (Remote Access Trojans RATS), которые обеспечивают доставку перехваченных данных обратно, к атакующему. Также существуют аппаратные кейлогеры, но они менее распространены, т.к. требуют непосредственного физического доступа к машине.
Тем не менее создать базовые функции кейлогера достаточно легко запрограммировать. ПРЕДУПРЕЖДЕНИЕ. Если вы хотите попробовать что-то из ниже следующего, убедитесь, что у вас есть разрешения, и вы не несёте вреда существующей среде, а лучше всего делать это все на изолированной ВМ. Далее, данный код не будет оптимизирован, я всего лишь покажу вам строки кода, которые могут выполнить поставленную задачу, это не самый элегантный или оптимальный путь. Ну и наконец, я не буду рассказывать как сделать кейлогер стойким к перезагрузкам или пытаться сделать его абсолютно не обнаружимым благодаря особым техникам программирования, так же как и о защите от удаления, даже если его обнаружили.
Вы можете изучить больше про фунцию GetAsyncKeyState на MSDN:
Для понимания: эта функция определяет нажата клавиш или отжата в момент вызова и была ли нажата после предыдущего вызова. Теперь постоянно вызываем эту функцию, чтобы получать данные с клавиатуры:
Умный кейлогер
Погодите, а есть ли смысл пытаться снимать всю подряд информацию со всех приложений?
Код выше тянет сырой ввод с клавиатуры с любого окна и поля ввода, на котором сейчас фокус. Если ваша цель – номера кредитных карт и пароли, то такой подход не очень эффективен. Для сценариев из реального мира, когда такие кейлогеры выполняются на сотнях или тысячах машин, последующий парсинг данных может стать очень долгим и по итогу потерять смысл, т.к. ценная для взломщика информация может к тому времени устареть.
Давайте предположим, что я хочу заполучить учетные данные Facebook или Gmail для последующей продажи лайков. Тогда новая идея – активировать кейлоггинг только тогда, когда активно окно браузера и в заголовке страницы есть слово Gmail или facebook. Используя такой метод я увеличиваю шансы получения учетных данных.
Вторая версия кода:
Этот фрагмент будет выявлять активное окно каждые 100мс. Делается это с помощью функции GetForegroundWindow (больше информации на MSDN). Заголовок страницы хранится в переменной buff, если в ней содержится gmail или facebook, то вызывается фрагмент сканирования клавиатуры.
Этим мы обеспечили сканирование клавиатуры только когда открыто окно браузера на сайтах facebook и gmail.
Еще более умный кейлогер
Давайте предположим, что злоумышленник смог получить данные кодом, на подобии нашего. Так же предположим, что он достаточно амбициозен и смог заразить десятки или сотни тысяч машин. Результат: огромный файл с гигабайтами текста, в которых нужную информацию еще нужно найти. Самое время познакомиться с регулярными выражениями или regex. Это что-то на подобии мини языка для составления неких шаблонов и сканирования текста на соответствие заданным шаблонам. Вы можете узнать больше здесь.
Для упрощения, я сразу приведу готовые выражения, которые соответствуют именам логина и паролям:
Где первое выражение (re) будет соответствовать любой электронной почте, а второе (re2) любой цифро буквенной конструкции больше 6 символов.
Бесплатно и полностью не обнаружим
В своем примере я использовал Visual Studio – вы можете использовать свое любимое окружение – для создания такого кейлогера за 30 минут.
Если бы я был реальным злоумышленником, то я бы целился на какую-то реальную цель (банковские сайты, соцсети, тп) и видоизменил код для соответствия этим целям. Конечно, также, я запустил бы фишинговую кампанию с электронными письмами с нашей программой, под видом обычного счета или другого вложения.
Остался один вопрос: действительно такое ПО будет не обнаруживаемым для защитных программ?
Я скомпилировал мой код и проверил exe файл на сайте Virustotal. Это веб-инструмент, который вычисляет хеш файла, который вы загрузили и ищет его в базе данных известных вирусов. Сюрприз! Естественно ничего не нашлось.
В этом основная фишка! Вы всегда можете менять код и развиваться, будучи всегда на несколько шагов раньше сканеров угроз. Если вы в состоянии написать свой собственный код он почти гарантированно будет не обнаружим. На этой странице вы можете ознакомиться с полным анализом.
Основная цель этой статьи – показать, что используя одни только антивирусы вы не сможете полностью обеспечить безопасность на предприятии. Нужен более глубинная оценка действий всех пользователей и даже сервисов, чтобы выявить потенциально вредоносные действия.
В следующих статья я покажу, как сделать действительно не обнаружимую версию такого ПО.
По дате Популярные
Emsisoft Emergency Kit – бесплатный портативный антивирус, который может быть использован без установки и Интернета для сканирования с помощью движков Bitdefender и Emsisoft, а также лечения зараженного компьютера от вредоносного ПО, используя USB-флешку
Trojan Remover - программа, помогающая удалять трояны и интернет-черви с компьютера, когда стандартные антивирусы с этим не справляются
Бесплатная лечащая утилита Dr.Web CureIt! – незаменимое средство для лечения Вашего компьютера от вирусов и нежелательных программ при помощи антивируса Dr.Web
Kaspersky Virus Removal Tool – бесплатный антивирус Касперского, предлагающий функции сканера по требованию. Программа обнаруживает вредоносное, рекламное и потенциально нежелательное ПО и лечит зараженные компьютеры под управлением Windows
Emsisoft Commandline Scanner - консольный антивирусный сканер с движками Bitdefender и Emsisoft для профессионалов. Управление через командную строку позволяет автоматизировать процессы проверки ПК и удаления обнаруженных угроз
Microsoft Safety Scanner - бесплатный антивирусный сканер по требованию. Обнаруживает и удаляет с компьютера вирусы, шпионские программы и другое вредоносное ПО
Антишпионская программа SuperAntiSpyware cканирует жесткие диски, съемные диски, память и реестр на предмет наличия spyware и adware, включая различные типы троянов, червей, кейлоггеров и т.п.
SUPERAntiSpyware Professional X является полезной и мощной программой, которая обнаруживает и удаляет шпионские программы (Spyware), рекламное ПО (Adware), вредоносные программы (Malware)
Malware Hunter – антивирусный сканер от Glarysoft для обнаружения и удаления активных угроз в системе Windows. Позволяет выполнять быструю, полную и выборочную проверку, а также сканирование через контекстное меню
Trojan Killer Portable от GridinSoft - портативный антивирусный сканер и инструмент для удаления угроз, который может использоваться на USB-флешке без установки на компьютер
Loaris Trojan Remover предназначен для удаления вредоносных программ: троянов, червей, рекламного и шпионского ПО, когда стандартное антивирусное решение не может обнаружить или удалить данные угрозы с вашего компьютера
McAfee Stinger - беcплатная, не требующая инсталяции утилита для обнаружения и удаления с вашего компьютера известных вирусов, интернет-червей и троянов, а также распространенных фальшивых антивирусов
RogueKiller Anti-Malware Free – инструмент безопасности, который предназначен для завершения и удаления вредоносных процессов и программ с компьютера
UnHackMe – антируткит и антишпион, который позволяет обнаруживать и удалять руткиты, перенаправления поиска в браузере, программы скрытия вредоносных следов, потенциально-нежелательные приложения и рекламное ПО, шпионские программы
Средство удаления вредоносных программ для Windows (KB890830) проверяет компьютеры на наличие распространенных вредоносных программ и удаляет их
Вирус. Что такое вирус?Классификация вирусов. Антивирусные программы. Что такое антивирусная программа?Некоторые её параметры. Виды антивирусных программ. Вопросы по изученному материалу. Блок контроля. Блок самоконтроля. Оглавление:
Прежде всего, вирус – это программа, которая может «размножаться» и скрытно внедрять свои копии в файлы, загрузочные секторы дисков и документы. Активизация компьютерного вируса может вызвать уничтожение программ и данных, и даже уничтожение составляющих компьютера (системного блока). Вообще, что такое вирус. 200 - 5000 байтболее 50 тыс. вирусов
Стоимость нанесенного вреда
Загрузочные вирусы Файловые вирусы Макро-вирусы Сетевые вирусы
заражают загрузочный сектор гибкого диска или винчестера. При заражении дисков загрузочный вирус «заставляет» систему при ее перезапуске считать в память и отдать управление не программному коду загрузчика операционной системы, а коду вируса. Загрузочные вирусы
при своем размножении тем или иным способом используют файловую систему операционной системы. Файловые вирусы могут поражать исполняемые файлы различных типов (EXE, COM, BAT, SYS и др.). Файловые вирусы
являются программами на языках, встроенных в некоторые системы обработки данных (текстовые редакторы, электронные таблицы и т.д.). Для своего размножения такие вирусы используют возможности макро-языков и при их помощи переносят себя из одного зараженного файла (документа или таблицы) в другие. Макро-вирусы
для своего распространения используют протоколы и возможности локальных и глобальных компьютерных сетей. Основным принципом работы сетевых вирусов является возможность передать и запустить свой код на удаленном компьютере. Сетевые вирусы
Распространенные виды вирусов
Первые, в отличие от нерезидентных, при получении управления загружаются в память и могут действовать не только во время работы зараженного файла. Вирусы делятся также на резидентные и нерезидентныеppt_xxshearppt_x
Зомби (Zombie) - это программа-вирус, которая после проникновения в компьютер, подключенный к сети Интернет управляется извне и используется злоумышленниками для организации атак на другие компьютеры. Зараженные таким образом компьютеры-зомби могут объединяться в сети, через которые распространяются вирусы и другие вредоносные программы. Дополнительные типы вирусов
К данной категории относятся: утилиты автоматизации создания вирусов, червей и троянских программ (конструкторы); программные библиотеки, разработанные для создания вредоносного ПО; хакерские утилиты скрытия кода зараженных файлов от антивирусной проверки (шифровальщики файлов); «злые шутки», затрудняющие работу с компьютером; программы, сообщающие пользователю заведомо ложную информацию о своих действиях в системе; прочие программы, тем или иным способом намеренно наносящие прямой или косвенный ущерб данному или удалённым компьютерам. Хакерские утилиты и прочие вредоносные программы
Для обнаружения, удаления и защиты от компьютерных вирусов разработаны специальные программы, которые позволяют обнаруживать и уничтожать вирусы. Такие программы называются антивирусными. Антивирусные программы
Для быстрой и эффективной работы антивирусная программа должна отвечать некоторым параметрам: Стабильность и надежность работы. Размеры вирусной базы программы. Многоплатформенность. Их параметры…
Антивирусные блокировщики. Ревизоры. Полифаги. Полифаги-мониторы
резидентные программы, которые перехватывают «вирусоопасные» ситуации и сообщают об этом пользователю. Например, «вирусоопасной» является запись в загрузочные сектора дисков, которую можно запретить с помощью программы BIOS Setup. Антивирусные блокировщики
Принцип работы ревизоров основан на подсчете контрольных сумм для хранящихся на диске файлов. Эти суммы, а также некоторая другая информация (длины файлов, даты их последней модификации и др.) сохраняются в базе данных антивируса. При последующем запуске ревизоры сверяют данные, содержащиеся в базе данных, с реально подсчитанными значениями. Если информация о файле, записанная в базе данных, не совпадает с реальными значениями, то ревизоры сигнализируют о том, что файл был изменен или заражен вирусом. Ревизоры
Принцип работы полифагов основан на проверке файлов, секторов и системной памяти и поиске в них известных и новых (неизвестных полифагу) вирусов. Для поиска известных вирусов используются маски вирусов (некоторая постоянная последовательность программного кода, специфичная для каждого конкретного вируса). Полифаги
постоянно находятся в оперативной памяти компьютера и проверяют все файлы в реальном режиме времени. Полифаги-сканеры производят проверку системы по команде пользователя. Полифаги-мониторы
При выборе антивирусной программы необходимо учитывать не только процент обнаружения вирусов, но и способность обнаруживать новые вирусы, количество вирусов в антивирусной базе, частоту ее обновления, наличие дополнительных функций. Краткий обзор антивирусных программ
В настоящее время серьезный антивирус должен уметь распознавать не менее 25000 вирусов. Однако только 200-300 вирусов из них можно встретить, а опасность представляют лишь несколько десятков из них. Наиболее известные из антивирусных программ
Один из известных и популярных антивирусов. Процент распознавания вирусов очень высокий (близок к 100%). В программе используется механизм, который позволяет распознавать новые неизвестные вирусы. В интерфейсе программы Norton Anti. Virus имеется функция Live. Update, позволяющая щелчком на одной-единственной кнопке обновлять через Web как программу, так и набор сигнатур вирусов. Norton Anti. Virus
Читайте также: