Как создать скрытую как вирус

Обновлено: 26.04.2024

спам

Всем привет и это очередной компьютерный прикол от Компьютер76. Сегодня мы продолжаем издеваться над своими друзьями и коллегами. На своей домашней системе не пробовать! Для проверки заведите виртуальную машину.

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

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

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

Вариант 2. Откройте Блокнот и введите туда следующий код:

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

Назовите файл как-нибудь.bat и подсуньте жертве с изменённым ярлыком. Если жертва запустит его на компьютере, запустится браузер с бесчисленным количеством окон по указанному адресу. Самый настоящий вирус спам !

Как удалить вирус спам ?

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

wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 12 человек(а).

Вам когда-нибудь хотелось создать собственный вирус, возможно для обучения или для забавы? На создание вируса уйдет время и потребуются знания, но на это способен каждый человек, если захочет. Создание вируса может научить вас основам программирования на определенном языке, а также знаниям операционных систем и сетевой безопасности. Посмотрите Шаг 1, чтобы начать.

Изображение с названием Create a Virus Step 1

  • Mac OS X и Linux считаются более защищенными от вирусных атак (связано с работой прав доступа и архитектурой операционной системы). 95% всех вирусов нацелены на пользователей Windows.

Изображение с названием Create a Virus Step 2

Изображение с названием Create a Virus Step 3

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

Изображение с названием Create a Virus Step 4

Изображение с названием Create a Virus Step 5

  • Если вы хотите создать исполняющие вирусы, то поищите курсы C и C++ в интернете.
  • Если вы хотите создать макро вирусы, то выучите язык макросов для нужной программы, например, Microsoft Office.
  • Visual Basic может быть использован для создания вредоносных программ для пользователей Windows.

Изображение с названием Create a Virus Step 6

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

Изображение с названием Create a Virus Step 7

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

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

Изображение с названием Create a Virus Step 9

Выпустите ваш вирус. Если вы удовлетворены работой вашего вируса, то настало время его выпустить. Но до того, подумайте, готовы ли к последствиям, которые возможны из-за вашего вируса. Возможно вам стоит использовать ваши знания и работать над другими проектами. [2] X Источник информации

image

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

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

В чем же, спросите, соль?

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

Структура
Основная часть

Начнем с загрузчика. Тут все просто, никаких особых извращений. Единственное, что я сделал — так это загрузка не с собственного сервера(на что, понятное дело, ругались АВ продукты), а загрузка с популярных файловых хостингов(аля rghost, zalil и т.п.). Этим проблема была исчерпана.

Начать я решил с получения сис. информации, которая понадобилась бы в дальнейшем для идентификации компьютера на сервере(для каждого ПК предназначалась бы отдельная папка с названием в виде имени ПК и вложенными инструкциями и прочим). Для получения необходимой мне информации я использовал пространство имен System.Environment(что уже должно быть крайне подозрительно для АВ продукта). Получение скриншота экрана тоже не вызвало затруднений. После получения данной информации я склеивал её и отправлял на сервер. Тут мне и понадобились эти библиотеки.

Почти для каждого метода я выделял отдельный класс и отдельный метод, в этом и состояла вся хитрость.
Немного кода для примера:


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


Да простят меня программисты!

Вывод


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

image

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

Может ли кто-то с хорошими навыками в программировании стать последним? Не думаю, что вы начнете создавать что-то, на подобии 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. Это веб-инструмент, который вычисляет хеш файла, который вы загрузили и ищет его в базе данных известных вирусов. Сюрприз! Естественно ничего не нашлось.

image

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

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

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

Читайте также: