Что значит файл закриптован
CryptXXX: шифровальщик и вор в одном флаконе
Троянец-шифровальщик CryptXXX шифрует файлы, ворует биктоины и другую информацию. Но у нас есть от него лекарство!
Что это значит? Это значит, что вы заразились вымогателем-шифровальщиком, известным под названием CryptXXX. Кстати, на самом деле все еще хуже: он не только шифрует файлы, но еще и ворует данные и биткойны. Хорошая новость состоит в том, что у нас от него есть лекарство — бесплатная утилита-расшифровщик. А теперь обо всем немного подробнее.
Что за зверь такой CryptXXX
Если вы ищете инструкцию по расшифровке файлов, то можете пропустить эту часть текста — прокрутите страницу вниз, там вы найдете то, что вам нужно. А здесь мы расскажем краткую историю происходящего.
Шифровальщик этот имеет несколько интересных особенностей. Во-первых, он запускает процедуру шифрования файлов на всех подключенных к компьютеру накопителях лишь через некоторое время после заражения. Его создатели предусмотрели эту задержку для того, чтобы было сложнее определить, какой именно сайт оказался заразным и принес на компьютер зловреда.
10 правил, которые помогут вам защитить свои файлы от заражения трояном-шифровальщиком: https://t.co/fTQ13YDoKp pic.twitter.com/OE5ik48iRo
После того как троянец заканчивает с шифрованием, он создает три файла-инструкции: текстовый файл, картинку и веб-страницу HTML. Картинку он для наглядности ставит в качестве обоев рабочего стола, веб-страницу открывает в браузере, ну а текст оставляет, видимо, просто на всякий случай. Содержание всех инструкций более-менее одинаковое.
Во-вторых, помимо шифрования файлов у CryptXXX обнаружилось еще несколько функций: он также крадет биткойны, сохраненные на жестких дисках, и другие данные, которые могут потенциально заинтересовать преступников.
Но у нас есть лекарство!
В последнее время часто бывает так, что для очередного нового троянца-шифровальщика не получается подобрать универсальный алгоритм расшифровки. В этом случае единственный способ вернуть файлы — это заплатить злоумышленникам выкуп. Мы это делать не рекомендуем, разве что в тех случаях, когда без этого совсем никак.
К счастью, CryptXXX — не тот случай, и у вирусных аналитиков «Лаборатории Касперского» получилось создать утилиту, которая помогает пользователям восстанавливать файлы, зашифрованные CryptXXX.
Утилита RannohDecryptor изначально создавалась для расшифровки файлов, ставших пищей другого шифровальщика, Rannoh, но по мере появления новых троянцев она обрастала новой функциональностью. Теперь она позволяет устранить последствия деятельности CryptXXX.
Так что, если вы стали жертвой CryptXXX, не все потеряно. Для восстановления нам потребуется оригинальная, незашифрованная копия хотя бы одного из файлов, которые были зашифрованы вымогателем (если таких файлов у вас найдется больше — это только в плюс).
Дальше следует сделать вот что:
1. Скачайте с нашего сайта утилиту-расшифровщик и запустите ее.
2. Выберите в опциях типы дисков для сканирования. Галку «Удалять зашифрованные» ставить не стоит до тех пор, пока вы не будете на 100% уверены в том, что расшифрованные файлы нормально открываются.
4. После этого утилита запросит путь к незашифрованному оригиналу того же файла — укажите его.
Будь готов!
Но лучше, конечно, не испытывать судьбу и не позволять CryptXXX проникнуть на ваш компьютер. Сейчас разработанная нашими вирусными аналитиками программа работает, однако злоумышленники достаточно быстро адаптируются к ситуации. Нередко они меняют код зловредов так, что расшифровать файлы с помощью утилиты становится невозможно. Например, так произошло с троянцем TeslaCrypt, для которого в свое время тоже была программа-дешифровщик, ставшая теперь практически бесполезной.
Почитайте вот про новую эпидемию трояна TeslaCrypt, который шифрует файлы на компьютере: https://t.co/TTj0SihZUZ pic.twitter.com/IOR4BLqywm
К тому же не забывайте о том, что CryptXXX не только шифрует файлы, но и ворует данные, — не думаем, что вы с радостью захотите ими поделиться.
Чтобы избежать заражения, мы советуем следовать нескольким правилам безопасности:
1. Регулярно делайте резервные копии данных.
2. Не менее регулярно устанавливайте все важные обновления операционной системы и браузеров. Эксплойт-кит Angler, с помощью которого распространяется CryptXXX, использует уязвимости в программном обеспечении, чтобы получать права на скачивание и установку зловредов.
3. Установите хорошее защитное решение. Kaspersky Internet Security обеспечивает многослойную защиту от троянцев-шифровальщиков. А Kaspersky Total Security в дополнение к этому позволит автоматизировать создание бэкапов.
Подробнее о способах защиты от троянцев-шифровальщиков вы можете прочитать тут.
Обновление: похоже, злоумышленники тоже прочитали про наш декриптор и модифицировали CryptXXX таким образом, чтобы наша утилита не позволяла расшифровывать файлы. Однако специалисты из «Лаборатории Касперского» обновили утилиту, так что она способна справиться и с новой версией шифровальщика. Подробнее об этом можно прочитать тут.
Учимся криптовать: Профессиональные приемы обхода антивирусов
Содержание статьи
Странно осознавать, что многие люди, создающие трояны, вирусы или использующие готовые решения-генераторы, нередко обращаются к услугам создателей «приватных крипторов», нередко оказывающихся обычными поделками студентов, обладающих весьма посредственными знаниями в области вирусмейкинга, имеющих слабое представление о структуре PE-файлов. Такой продукт может стоить десятки или даже сотни долларов, но при этом не обеспечивать даже минимальной защиты от разнообразных механизмов обнаружения вредоносных программ. А ведь достаточно легко самостоятельно спрятать троян от назойливых антивирусов, даже таких известных, как NOD и Dr. Web. И совершенно бесплатно! Как? Читай ниже!
Подготовка к исследованиям
Перед тем, как приступить к работе, давай определимся с арсеналом инструментов. Во-первых, криптовать будем давным-давно известный всем антивирусам Pinch (я намерено выбрал именно этот троян для исследований, поскольку билдеры для его построения и описание его конфигурации легко найти в Сети). В статье я опущу моменты, связанные с генерацией тела программы и созданием веб-админки для проверки работоспособности пинча (все необходимое для экспериментов, в том числе и руководства, ты можешь найти в зашифрованном RAR-архиве на нашем DVD). Один из главных инструментов исследователя вирусов – виртуальная машина VMWare с установленной Windows XP (данное требование необязательно, однако очень желательно не экспериментировать с вредоносным ПО на собственной машине). Кроме прочего, нам понадобятся отладчик OllyDbg, редактор WinHex, утилита для работы с PE-файлами LordPE. Ну и, разумеется, virustotal.com для тестов. Да, там сидят аналитики, и пользоваться услугами этого сайта для создания «невидимого» вируса – сущее безумие, однако в наши планы не входит нарушение закона. Мы – исследователи, поэтому пусть высоколобые реверсеры копаются в нашем коде на здоровье и работают над улучшением собственных продуктов. Остальное – по вкусу и в зависимости от личных предпочтений. Итак, задраиваем люки и погружаемся в отладку. Будет интересно!
Прячем код
Сначала обратимся к тривиальным и давно известным нам методам сокрытия кода – шифровке секции по константе. В своих статьях я уже не раз обращался к подобному коду. Удивительно, но простой XOR машинных кодов, находящихся в секции кода, позволяет избавиться от внимания аж четверти антивирусных программ! Итак, откроем сгенерированный файл пинча (pinch.exe) в отладчике. Точка входа по умолчанию равна 13147810. По адресу 13147C26 начинается поле сплошных нулей, оставленное компилятором для выравнивания секции. Нам это на руку – здесь мы будем размещать наш код. Итак, взгляни на вид криптора:
13147C30 PUSHAD
13147C31 MOV ECX,6C2F
13147C36 MOV EDX,DWORD PTR DS:[ECX+13141000]
13147C3C XOR EDX,76
13147C3F MOV DWORD PTR DS:[ECX+13141000],EDX
13147C45 LOOPD SHORT pinch_pa.13147C36
13147C47 POPAD
13147C48 JMP SHORT pinch_pa.13147810
Вносим изменения в файл программы (меню правой кнопки мыши, «copy to executable-all modifications», в появившемся окне выбери из меню правой кнопки пункт «Save file»). После того, как изменения внесены, идем в LordPE, изменяем точку входа в программу на новую (новое значение OEP равно 13147C30, именно здесь и обосновался наш код) и сохраняем программу. Но и это еще не все; снова открываем программу в OllyDbg, выполняем код, внесенный нами (для этого ты можешь установить точку останова по адресу 13147C48 и выполнить программу, нажав Shift+F9). Таким образом, наш набор инструкций шифрует 6C2F байт. Теперь программу необходимо снова сохранить. Готово! Мы получили вполне работоспособный зашифрованный пинч. Идем на virustotal.com, загружаем файл и дожидаемся результатов анализа. Удивительно, но только 31 из 43 антивирусов распознали вредоносный код (на незашифрованный пинч «ругаются» почти все – 42 из 43)! Двигаемся дальше.
Продолжим наш эксперимент. Попробуем использовать механизм создания собственного обработчика исключений для выполнения одного из приемов, описанных мной на страницах журнала ранее. Поскольку метод «разжеван», мы лишь адаптируем код для нашего случая, его функциональность полностью раскрывается в комментариях (если что-то все-таки осталось неясным, отправляю тебя к рубрике «Антиотладочные приемы» за октябрь 2009 года).
13147C4B XOR EAX,EAX; обнуляем регистр
13147C4D PUSH pinch_pa.13147C62; помещение адреса нового обработчика в стек
13147C52 PUSH DWORD PTR FS:[EAX]; помещение адреса старого обработчика в стек
13147C55 MOV DWORD PTR FS:[EAX],ESP; помещение в FS:[0] указателя на структуру
13147C58 CALL pinch_pa.13147C58; генерация исключения путем переполнения стека
13147C5D JMP pinch_pa.13145555; данная инструкция никогда не будет исполнена
13147C62 POP EAX; восстановление регистров
13147C63 POP EAX
13147C64 POP ESP
13147C65 JMP pinch_pa.13147810; переход к выполнению программы
Кратко описать функционал кода можно следующим образом: мы создаем новый обработчик исключений и размещаем его по адресу 13147C62. Эмуляторы кода, которые неспособны должным образом определить логику выполнения программы, полагают, что вслед за бесконечной рекурсией по адресу 13147C58 произойдет передача управления на следующую инструкцию (JMP pinch_pa.13145555), в результате чего направляют дальнейшее исследование логики выполнения кода по неверному пути. На самом же деле, стек переполняется, вызывается исключение, а программа благополучно продолжает свою работу. Действуя таким образом, мы отметаем еще четыре антивируса (только 27 из 43 утилит справились с задачей и распознали вредоносный код).
Итак, мы отправили на прогулку лесом едва ли не половину антивирусов – что же дальше? Теперь мы займемся более изощренными способами антиотладки и простейшей антиэмуляции.
Продолжаем эксперимент
Возможно, многим покажется, что описанного выше уже достаточно, чтобы успешно распространять троянские программы, ведь шансы быть обнаруженными мы сократили вдвое. Это верно, однако мы отсекли лишь самые убогие антивирусы, которые совершенно не отвечают требованиям времени. В ходе экспериментов я выяснил, что и с мощной эмуляцией кода можно справиться, причем достаточно легко!
Для разминки, вставим в подопытный пинч несколько небольших кусков кода, которые «закроют глаза» нескольким антивирусам (а заодно и многим реверсерам низкой квалификации). По адресу 13147C90 я разместил криптор, аналогичный вышеописанному, который шифрует написанный нами антиотладочный код (4Ch байт, начиная с адреса 13147C30). На диске ты найдешь его код, здесь же его привести не позволяет объем статьи. Таким образом, мы скрыли от некоторых эвристических механизмов некоторые детали нашего механизма, усложнив работу необходимостью многоступенчатой распаковки.
13147C90 60 PUSHAD
13147C91 B9 4C000000 MOV ECX,4C
13147C96 8B91 307C1413 MOV EDX,DWORD PTR DS:[ECX+13147C30]
13147C9C 83F2 54 XOR EDX,54
13147C9F 8991 307C1413 MOV DWORD PTR DS:[ECX+13147C30],EDX
13147CA5 ^E2 EF LOOPD SHORT kadabra_.13147C96
13147CA7 61 POPAD
jmp 13147c30
Существует очень любопытный прием, который дает очень хороший эффект, вводящий в ступор некоторые отладчики и антивирусы. Имя ему – обнуление точки входа. Действительно, совсем неправдоподобной выглядит ситуация, когда PE-заголовок, располагающийся по нулевому смещению относительно ImageBase, является одновременно исполняемым кодом. Однако она более чем возможна. Открой отлаживаемый файл в WinHex и взгляни на байты данных, располагающиеся в самом начале файла: 4D 5A 00 00 (да-да, это та самая буквенная сигнатура «MZ», расположенная в начале PE-файла!). Взглянув на этот же PE-заголовок в отладчике (для этого нужно перейти по адресу 13140000h), мы увидим следующую картину:
13140000 4D DEC EBP
13140001 5A POP EDX
13140002 0000 ADD BYTE PTR DS:[EAX],AL
13140004 0100 ADD DWORD PTR DS:[EAX],EAX
.
13140028 0000 ADD BYTE PTR DS:[EAX],AL
Кажется, первые две инструкции вполне безобидны и могут быть выполнены без риска «уронить» программу. К сожалению, следом за ними располагается лишь два нулевых байта, а испортить MZ-заголовок, записав межсегментный пятибайтный переход на антиотладочный код, мы не можем. Подумав с полминуты, можно найти верное решение. Взгляни на 13140028. Здесь можно найти гораздо больше пяти нулевых байт. Слон здесь вряд ли поместится, но длинный переход – вполне! Итак, действуем следующим образом: меняем нулевые байты, начиная с адреса 13140002, на следующую инструкцию:
13140002 EB 24 JMP SHORT 13140028
а байты, расположенные по адресу 13140028, на следующий код:
После выполненных процедур остается лишь сохранить программу, открыть ее на редактирование в LordPE и обнулить поле «EntryPoint». Итак, все работает, и еще два антивируса сдались: теперь лишь 25 из 43 находят в нашем подопытном образце опасный код.
Для этого полностью убираем код раскриптовки, заменяя его в OllyDbg на нули, и видим, что наш образец все равно палится как пинч! Делаем вывод, что либо антивирусы методом перебора видят наш код, либо проверяют image base. Пробуем изменить Image base – и, действительно, отметаем еще четыре антивируса.
Lost in Time, или Dr. Web, не считающий время
Представь ситуацию: мы располагаем тысячей программ, каждая из которых использует 15-секундный таймер. Суммарное время задержки выполнения кода составит, что несложно подсчитать, 15000 секунд, или около четырех часов. Таким образом, если антивирусный алгоритм в своей работе по-настоящему эмулирует таймер, анализ тысячи подобных файлов займет у него вышеуказанное время. Конечно, реальная эмуляция таймеров – нонсенс, и многие алгоритмы просто-напросто нужным образом изменяют регистры или стек контекста процесса, если встречают одну из API-функций, выполняющих задержку выполнения программы. Но все ли антивирусы настолько хороши? Проверим на практике.
Попробуем использовать таймер в своих целях, чтобы сравнять с землей эмуляцию кода. Итак, наш план – использовать два замера времени, в промежутке между которыми будет «тикать» таймер. Впоследствии мы используем два временных штампа, чтобы вычислить разность между ними. Разность эта в дальнейшем будет нами использоваться для того, чтобы изменить логику работы защитного механизма.
Для того, чтобы засечь время, используем API-функцию GetLocalTime, которая записывает по указанному в стеке адресу следующую 16-байтную структуру:
typedef struct _SYSTEMTIME <
WORD wYear; // Год
WORD wMonth; // Месяц
WORD wDayOfWeek; // День недели
WORD wDay; // День месяца
WORD wHour; // Часы
WORD wMinute; // Минуты
WORD wSecond; // Секунды
WORD wMilliseconds; // Миллисекунды
> SYSTEMTIME;
Условимся, что для хранения двух структур, полученных в результате пары вызовов GetLocalTime, будем использовать области памяти, начинающиеся, соответственно, с адресов 13147D7D и 13147D94. Функция Sleep(), входящая в Kernel32, инициирует «заморозку» выполнения программы, принимая параметр, выраженный в миллисекундах, через стек. Используя эти условия, напишем следующий код:
13147CFA PUSH kadabra_.13147D7D; записываем в стек первый адрес
13147CFF CALL kernel32.GetLocalTime; получаем первый временной штамп
13147D04 PUSH 3E8; задержка таймера – 1000 миллисекунд, или 1 секунда
13147D09 CALL kernel32.Sleep; запуск таймера
13147D0E PUSH kadabra_.13147D94; записываем в стек второй адрес
13147D13 CALL kernel32.GetLocalTime; получаем второй временной штамп
В результате выполнения получаем две 16-байтных заполненных структуры, каждая из которых записана, начиная с адреса, определенного нами выше:
[год][месяц][день недели][День месяца] [Часы] [Минуты] [Секунды][Миллисекунды]
13147D7D: DA 07 0A 00 02 00 0C 00 0D 00 0C 00 31 00 B1 03
13147D94: DA 07 0A 00 02 00 0C 00 0D 00 0D 00 04 00 B1 03
Обрати внимание: нас интересуют только значения, соответствующие секундам. Мы заставили программу «спать» ровно 1 секунду, а это значит, что разница между двойными словами, записанными в ячейках [13147d7d+С] и [13147D94+С], не должна быть больше или меньше единицы (в абсолютном большинстве случаев). Этот факт должен помочь нам побороть эмуляторы кода, пропускающие таймеры. Но как использовать полученное значение? Мы посчитаем разницу и используем ее для вычисления адреса перехода. Если эта разница будет посчитана неверно (что означает, что код эмулируется, причем неверно), то выполнение программы полетит ко всем чертям, но это нас не волнует :). Итак, получим приблизительно следующий код:
13147CF9 ;Код получения временных штампов (приведен выше)
13147D18 MOV AL,BYTE PTR DS:[13147D89]; первое значение помещаем в AL
13147D1D MOV AH,BYTE PTR DS:[13147DA0]; второе значение помещаем в AH
13147D23 SUB AH,AL; получаем разность значений
13147D25 XOR EBX,EBX; обнуляем EBX
13147D27 MOV BL,AH; перемещаем разность в EBX
13147D29 ADD EBX,13147C29; вычисляем адрес перехода
13147D2F JMP EBX; переходим по вычисленному адресу
Наверное, ты уже догадался, что адрес, который помещается в EBX, должен быть равен 13147C30. Однако, как показывает практика, не все идеально, особенно если речь идет об эмуляции кода. Благодаря несложным манипуляциям мы получаем великолепный результат: эмуляция Dr. Web разваливается на глазах! :). Вместе с ним отступают и еще два антивиря – это не может не радовать нашу душу. Всего 22 из 43 антивирусов продолжают подозревать нашу программу в чем-то нехорошем.
Последние штрихи
Когда я писал статью, я заметил, что в веб-интерфейс пинча стали приходить странные однообразные отчеты. Сначала мне показалось, что эти отчеты присланы с виртуальной машины, созданной мной, но потом понял, что это не так: все они были созданы на машинах с различной конфигурацией. В конце концов я понял, что это – результат запусков на машинах экспертов, которые пользуются virustotal’ом для анализа новых угроз. Мои опасения подтвердились, когда я увидел, что количество антивирусов, распознавших в зашифрованном мной файле угрозу, увеличилось, хотя и ненамного. Тогда я решил «обернуть» вокруг защиты, созданной мной, еще один «слой»-пакер, запускаемый из TLS. Для чего? Это позволит усложнить жизнь механизмам, использующим сигнатуры. Кроме того, на месте TLS-функции может быть любой алгоритм, кодирующий произвольный участок файла, что позволяет малыми усилиями полностью изменить содержание файла, скрыв «узнаваемые» места. Мало того, использование callback-функций само по себе является достаточно неплохим средством усложнения защитного механизма.
Думаю, что ты читал о TLS (Thread Local Storage)-callback-функциях достаточно (в частности, Крис посвятил TLS отдельную статью, опубликованную в одном из номеров нашего журнала), однако напомню о том, что они собой представляют, опуская описание широчайших возможностей их использования. Callback-функции выполняются непосредственно после инициализации программы загрузчиком, еще до остановки на OEP. Информация обо всех таких функциях содержится в специальной таблице, а адрес таблицы, в свою очередь, извлекается загрузчиком из специального поля PE-заголовка.
Так выглядит код получившейся TLS-таблицы: 80 7d 14 13 90 7d 14 13 96 7d 14 13 a0 7d 14 13. Разместим его по адресу 13147d5d при помощи отладчика (запомним адрес – он нам еще понадобится).
Приступим к созданию кода таблицы TLS-функций.
По адресу 13147db0 разместим саму функцию, шифрующую все наши ранее созданные крипторы, а также код по второму кругу:
13147DB0 PUSHAD; сохраняем регистры в стек
13147DB1 MOV ECX,6D2F; устанавливаем счетчик
13147DB6 MOV DH,BYTE PTR DS:[ECX+13141000];помещаем в DH текущий байт секции
13147DBC XOR DH,CL; выполняем логическое сложение с младшим байтом счетчика
13147DBE MOV BYTE PTR DS:[ECX+13141000],DH; помещаем закодированный байт в память
13147DC4 LOOPD SHORT 13147DB6; повторяем цикл
13147DC6 POPAD; восстанавливаем регистры
13147DC7 RETN; возвращаемся из функции
Полагаю, ты помнишь, что после внесения кода в файл необходимо выполнить его, чтобы он закодировал инструкции, после чего следует сохранить измененный файл прямо из-под OllyDbg.
Последний штрих – внесение сведений о TLS-директории в PE-заголовок. Открываем LordPE и правим в таблице директорий значение TLS Address на 00005d7d (разумеется, это же можно сделать и средствами OllyDbg). Кстати, если ты хочешь отлаживать TLS, чтобы не «пролетать» мимо выполнения callback-функций, нажми в OllyDbg Alt+O и в появившемся меню выбора места, где отладчик будет останавливаться при загрузке программы, укажи «System Breakpoint» (цель этого действия ясна, ведь TLS callback’и выполняются еще до попадания на точку входа!).
Проверим закодированный файл на virustotal.com. Нас ждет радостное известие – всего лишь 18 из 43 антивирусов распознают вредоносный код! Итак, на момент тестирования «сдались» такие маститые охотники за червями и малварью, как DrWeb, Panda, NOD32, TrendMicro-HouseCall, VBA32, ViRobot, VirusBuster, Sunbelt 7048, F-Secure, BitDefender, eSafe и многие другие.
Я намерено не стал доводить нашу криптовку до победного конца. Придумывай новые методы обмана, внедряй в наш образец и таким образом обманывай новые антивирусы. Удачи в благих делах!
Как закриптовать ратник? СУПЕР FUD-КРИПТ (маскировка) вируса
Zip File, мамкины хацкеры. Мы с вами продолжаем обсуждать тему ратников, стиллеров, кейлоггеров и прочих зловредов, которые негодяи злоумышленники под благовидным предлогом могут подкинуть в одну из ваших рабочих станцию. И даже если вы сами чересчур бдительны и никогда не станете скачивать и открывать левые EXE файлы, наверняка кто-то из ваших коллег или близких может оказаться менее расторопным.
Люди частенько пишут мне в личку, мол что толку от того, что ты тут показываешь, если в 2020 у всех уже поголовно стоят антивирусы. Эм. Стоят то стоят, только вот проку от них не так уж и много. Во-первых, я хз, как в других городах, но у нас в большей части контор стоят такие слабые тачки, что пользователи так и норовят вырубить антивирь, чтоб комп шустрее работал.
Ну а там, где данная функция всё же заблочена и админы стараются худо-бедно следить за безопасностью своих юзверят, базы обновляются в лучшем случае раз в полгода. Но, поверьте, даже это не самый худший расклад. Бывает, что сотрудники и базы обновляют своевременно и за работоспособностью антивируса следят с особой тщательностью, а система всё равно пропускает крысёнка.
Как же так получается? Наверняка вы слышали о таком понятии, как криптование. Если закриптовать вирусную программу, то антивирь не всегда сможет вовремя среагировать. Вернее, он среагирует, но уже после непосредственного запуска зловреда. Для того, чтобы сгладить и этот момент при атаке, злоумышленники, как правило, используют дополнительные методы обфускации вредоносного кода.
Т.е., по сути, сначала программный код изменяется до неузнаваемости, а затем уже все данные шифруется сторонними средствами. Таким образом, вирус попадая к конечной жертве становится практически беленьким и пушистым. Но от этого, не менее опасным при запуске. Нынче, я покажу вам, как злоумышленники при помощи совершенно бесплатного обфускатора и относительно бюджетного шифровальщика, могут обелить файл, практически до полного FUD’а.
Ну и естественно в конце ролика, традиционно поделюсь мыслями по поводу того, как можно избежать заражения подобным софтом в рабочих условиях. Если интересно, тогда сходите на кухню за свеженькой порцией тёплого молока, устройтесь по удобней в своём пропуканом кресле и будем начинать.
Шаг 1. В голосовании под предыдущим видео, большинство из вас пролайкали Golden версию NjRAT’а. И хоть, я признаться и хотел, чтобы победила комета, мнение подписчиков в этом вопросе гораздо важнее. Поэтому нынче мы будем криптовать именно голду. Запускаем EXE’шку и оставив дефолтный порт кликаем «Start».
Шаг 2. Далее, как водится «Builder». Прописываем ваш белый IP, VPN или DynDNS’ку в разделе хоста и изменив имя процесса, копируемого в систему на какой-нибудь из системных, ставим галочки напротив нужных нам пунктов.
Тут в принципе от классической NJ’шки отличий особо нет, разве что иконку добавили. Давайте для разнообразия поставим лого WinRAR’а и соберём ратник, нажав «Build».
Шаг 3. Указываем путь и имя для исполняемого файла.
Шаг 4. После сохранения открываем браузер и переходим на сайт «freeobfuscator.com». Закидываем сюда нашу EXE’ху.
Шаг 5. И после загрузки заменяем файл на рабочем столе новой версией.
Шаг 6. Отлично. Теперь нужно зашифровать крысёныша. Из наиболее бюджетных и при этом реально рабочих вариантов, могу посоветовать старую, добрую Энигму. Полноценная версия, конечно, стоит аж 200$. Прямо-таки космические деньжища. Зато для обучающих целей, вполне хватит и демки.
Шаг 7. Единственный её косяк в том, что при запуске вируса у теоретической жертвы будет появляться вот это окно.
Шаг 8. В остальном же, функционал практически не урезан. Запускаем нашу девчушку и прогоняем через неё обфускаченый EXE’шник крысёнка.
Шаг 9. Дождавшись завершения операции, жмём «Close».
Шаг 10. И пробуем закинуть получившийся файл на antiscan. В сети бытуют различные мнения по поводу того, сливает ли данный ресурс билды на вирустотал или же не сливает.
Тут, как в знаменитой песенке AnacondaZ, сколько людей, столько е*аных мнений. Лично я придерживаюсь нейтральной позиции и могу утверждать лишь то, что антик по крайней мере довольно шустро прогоняет сборки через антивири.
Шаг 11. А большего от него в принципе и не требуется. Видим, что из 26 популярных борцов, около 20 не учуяли в нашем файле никакой опасности. Причём в этом списке присутствуют такие именитые мастодонты, как Kaspersky, Dr. Web и даже всеми любимый Avast, который так любят устанавливать себя домашние пользователи.
Шаг 12. Теперь давайте посмотрим, что сможет сделать злоумышленник, подкинув такой файл своей дофига защищённой жертве. Помимо классических функций NjRAT’а, golden версия включает у нас подробную информацию о клиенте, увеселительные средства и примитивнейший встроенный DoS’ник
Шаг 13. Рассмотрим всё по порядку. В инфо у нас можно глянуть характеристике железяки, узнать информацию о сборке ОС, а также выяснить, геолокацию и состояние модулей.
Шаг 14. В развлекухах присутствует ВКЛ/ВЫКЛ тачки, баловство с приводом, загас монитора, а также смена кнопочек мыши. Самое забавное здесь – это, пожалуй, озвучка вводимого текста. Пишем его, жмём ОК и наслаждаем криповым воспроизведением.
Шаг 15. Также, в следующем боксе, можно отправить жертве предупреждение, чтобы она склонилась на перед нашим величием и ни в коем разе не помышляла о дальнейшем сопротивлении.
Шаг 16. А то ведь и DoS атаку негоднику можно устроить. Тут эта функция тоже присутствует прям из коробки.
В целом, вам важно помнить, что любое создание, использование и распространение вредоносного ПО подпадает под 273 статью УК РФ. Поэтому выходить за рамки тестирования в среде безопасного виртуального полигона, я бы настоятельно не советовал. Ведь ступить на кривую дорожку очень легко, а вот уйти с неё у вас самостоятельно вряд ли получится. Поэтому не воспринимайте мой контент, как инструкцию, а просто относитесь к этому, как к очередному шоу с энной примесью познавательной составляющей.
Касательно же полного FUD’а файлов могу сказать, что в интернете и без меня, вполне хватает специалистов способных сделать эту нехитрую операцию за хорошую плату. А отнимать хлеб у своих коллег по цеху, я не привык. Тем более, что такие спецы, как правило инвестируют в своё образование немалое количество времени, денег и других ценнейших ресурсов.
Следовательно, эти ребята, как минимум заслуживают того, чтобы их услуги оставались востребованы на рынке, а не разглашались на всю округу деревенским инфоцыганом.
Что ж, друзья на этом у меня всё. Если впервые забрёл на канал, то непременно клацни на колокол и в твоей ленте регулярно будут появляться годнейшие ролики на тему вирусологии, взломов, пентестингу и информационной безопасности. Олды, с вас по традиции жду по лососю. И не забудьте сразу после просмотра заглянуть в телеграмчик, я там оставлю маленький подарунок. Думаю, щарящим людям понравится.
В заключении, хочу пожелать всем удачи, успеха и самое главное отсутствия вирусов в недрах ОСи. Берегите себя и тачки, за которые отвечаете. Информируйте простых пользователей о том, что не надо запускать файл, если он даже на долю процента кажется подозрительным. Ведь вероятность того, что антивирус может попросту не сработать, и ваш компьютер окажется под серьёзной угрозой, действительно высока. Лучше тысячу раз перестрахуйтесь.
А вообще, переводите уже всех на Linux. Как там гласит народная админская поговорка: нет EXE’шек – нет проблем. А отсутствие проблем для нас, априори является признаком счастье. Подумайте над этими словами, как-нибудь на досуге. Ну а с вами, как обычно, был Денчик. Искренне благодарю за просмотр. До новых встреч, камрады. Всем пока.