ru:https://highload.today/blogs/kriptografiya-kak-zashifrovat-fajl/ ua:https://highload.today/uk/blogs/kriptografiya-kak-zashifrovat-fajl/
logo

Как зашифровать файл для пентестов: простая инструкция

Анастасия Шкуро BLOG

Специалист по in-bound-маркетингу в Techwarn

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

Что такое крипт файлов?

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

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

Еще одно понятие, которое нужно рассмотреть в рамках крипта файлов, — обфускация. Это практика шифрования шелл-кода — двоичного исполняемого кода, который передает команды процессору в MS-DOS и Windows. При помощи обфускаторов можно «обернуть» шелл-код шифрованием XOR или AES. Как правило, обфускаторы работают с шелл-кодами в форматах C, HEX, BASE64 и RAW. 

Чтобы криптовать файлы, часто используется FUD (Fully UnDetectable — «полностью нераспознаваемый»). Так называют программное обеспечение для шифрования приложений .exe. Кроме того, FUD криптует вирусы, шпионское ПО, троянские вирусы удаленного действия RAT, а также кейлогеры (аппаратное или программное устройство для распознавания действий пользователя). 

FUD берет за основу оригинальный бинарный файл .exe и применяет многослойный крипт, создавая новый зашифрованный документ.

Когда новый .exe файл приводится в действие, происходит дешифровка бинарного файла на небольшие фрагменты данных. Эта информация инфицируется, либо в нее встраиваются коды с информацией, необходимой для «этичного хакера». Часто такие файлы впоследствии перезапускаются как .txt или .mp3. 

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

Убедились в действенности программы? Можно начинать пентест. 

Компиляция с источника

Следующий этап — собственно, создать файл, который вы планируете зашифровать и дальше тестировать. 

Курс-професія "Motion Designer" від Skvot.
Навчіться створювати 2D- та 3D-анімації у софтах After Effects, Cinema 4D та Octane Render. Протягом курсу ви створите 14 моушн-роликів, 2 з яких — для реального клієнта.
Детальніше про курс

Чтобы сделать сборку на основании исходников, можно воспользоваться программой Quasar. До этого потребуется добавить несколько элементов в исходный код. Проверьте свои действия по чек-листу:

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

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

 > 1.exe head 1000 1.exe > /host/machine/ 

Для дальнейших занятий пентестом, вам понадобятся дебаггеры (отладчики) — программы, которые ищут ошибки в ПО, операционных системах, SQL и других кодах. Рассмотрим работу с отладчиками на примере Immunity Debugger.

Интерфейс Immunity Debugger

Интерфейс Immunity Debugger

  1. Для начала пройдите по ссылке http://debugger.immunityinc.com/ID_register.py, заполните форму и скачайте программу, после чего инсталлируйте по умолчанию.
  2. Загрузите PuTTY — безвредный SSH-клиент Windows. Так как после этого мы планируем протестировать, как система противостоит троянскому вирусу, нам понадобится добавить в PuTTY этот зловредный код.
  3. Практичний інтенсивний курс з дизайну - Design Booster від Powercode academy.
    Навчіться дизайну з нуля за 3 місяці і заробляйте перші $1000, навіть якщо ви не маєте креативного мислення, смаку або вміння малювати. Отримайте практичні навички, необхідні для успішної кар'єри в дизайні.
    Зарееструватися
  4. Затем запустите Debugger, в меню кликните на опцию «Файл». После этого откройте PuTTY. 
  5. Debugger покажет много информации, но вам требуется код сборки в левом верхнем углу, а также сообщения, поставленные на паузу, внизу справа. 
  6. В меню Immunity Debugger нажмите Debug — Run. Так включится PuTTY, находясь под контролем дебаггера, что означает, что мы можем модифицировать код. После этого закройте PuTTY. 
  7. И снова в меню Immunity нажмите Debug — Restart. В панели кода сборки кликните правой кнопкой мыши, укажите на поиск, выделите All referenced text strings. 
  8. Выделите первую линию, кликните на «Поиск текста». Так дебаггер найдет все фрагменты кода, в которых используется данная линия.
  9. Теперь установим точки останова — целенаправленного прерывания программы в определенное время. Наша точка невозврата сработает, когда пользователь залогинится на SSH-сервер. В опции Text strings referenced in putty:.text нажмем на поиск. Откроем инструкцию и кликнем на опцию Toggle breakpoint. На этом этапе вновь нажмите на Immunity в меню, кликнув на Debug — Restart. Всплывет уведомление о том, что процесс PuTTY активен. Не забудьте после этого в Immunity нажать Debug — Run. Откроется черное окно, и программа остановится. Одним словом, таким образом мы протестируем систему на предмет того, каких вирусов не нужно бояться ее владельцу, а от каких нужно защититься.

Проделав последовательность действий, нам необходимо подписать файл сертификатом Windows и упаковать его. Можно воспользоваться для этого специальными программами-пакерами. Среди проверенных вариантов — UPX, ASPack, FSG, VMProtect.

Что делать дальше?

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

Как пример, лоадеры могут выглядеть как файлы vbs, is, hta, bat, ps1. Пентестерам лоадер понадобится для того, чтобы скачать вредоносный код и поработать с ним. При помощи скриптов ps или certutil пентестер сможет скачать вредоносные файлы.

Онлайн-курс "Тестування API" від robot_dreams.
Навчіться працювати з API на просунутому рівні та проводити навантажувальні тестування, щоб виявляти потенційні проблеми на ранніх етапах розробки.
Програма курсу і реєстрація

Работа над криптом файла практически завершена. Осталось проверить, что находится в вашем файле для пентеста. Чтобы обезопасить от распознавания антивирусом, необходимо нашпиговать файл программами Anti Ring3 Hooks, Anti Emulator, Anti Debugger, Anti Dumper, Anti VM/SandBox.

Готово — можно тестировать систему на проникновение!

If you have found a spelling error, please, notify us by selecting that text and pressing Ctrl+Enter.

Курс English For IT: Communication від Enlgish4IT.
Почни легко працювати та спілкуватися з мультикультурними командами та міжнародними клієнтами. Отримайте знижку 10% за промокодом ITCENG.
Інформація про курс

Этот материал – не редакционный, это – личное мнение его автора. Редакция может не разделять это мнение.

Топ-5 самых популярных блогеров марта

PHP Developer в ScrumLaunch
Всего просмотровВсего просмотров
2434
#1
Всего просмотровВсего просмотров
2434
Founder at Shallwe, Python Software Engineer (Django/React)
Всего просмотровВсего просмотров
113
#2
Всего просмотровВсего просмотров
113
Career Consultant в GoIT
Всего просмотровВсего просмотров
95
#3
Всего просмотровВсего просмотров
95
CEO & Founder в Trustee
Всего просмотровВсего просмотров
94
#4
Всего просмотровВсего просмотров
94
Рейтинг блогеров

Ваша жалоба отправлена модератору

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: