
Bella — это инструмент пост-эксплуатационного сбора данных и удалённого администрирования для macOS, написанный на чистом Python. 🍎💻
Bella — это инструмент для извлечения данных и удаленного администрирования на чистом Python, предназначенный для пост-эксплуатации на macOS. 🍎 💻
Bella — это надежный, чистый Python, инструмент для пост-эксплуатации и удаленного администрирования на macOS.
Bella (также известный как сервер) — это обратная оболочка с шифрованием SSL/TLS, которую можно разместить на любой системе под управлением macOS >= 10.6. Bella предлагает следующие возможности:
Псевдо-TTY, эмулирующий экземпляр SSH [поддержка Ctrl-C для большинства функций, потоковый вывод, полная поддержка встроенного Bash-скриптинга, автодополнение по табуляции, история команд и т.д.].
Автоустановщик! Просто выполните бинарник, и Bella сделает всё остальное — постоянную обратную оболочку в скрытом месте на жёстком диске, незаметную для антивирусов.
Загрузка / скачивание любых файлов
Обратное VNC-подключение.
Трансляция и сохранение входного сигнала микрофона компьютера.
Фишинг паролей входа / связки ключей через системное приглашение.
Фишинг пароля Apple ID через приглашение iTunes.
Извлечение токенов iCloud.
Доступ ко всем сервисам iCloud пользователя через извлечённые токены или пароли.
Сюда входят: Контакты iCloud, Найти iPhone, Найти друзей, Резервные копии iOS.
Извлечение паролей Google Chrome.
Извлечение истории Chrome и Safari.
Автоматическая расшифровка связки ключей при обнаружении пароля kc.
История чатов macOS.
Перебор резервных копий iOS из iTunes.
Обширное логирование всей активности Bella и загруженных файлов.
ОЧЕНЬ всестороннее хранение данных. Вся информация, которую обнаруживает Bella [токены, пароли и т.д.], хранится в зашифрованной SQL-базе данных на компьютере, где запущена Bella. Эта информация используется для более быстрого выполнения функций и более «умной» обратной оболочки.
Множество других отличных функций! Поэкспериментируйте с ней, чтобы увидеть её в действии.
Это лишь некоторые из функций, доступных, когда мы находимся в пользовательском пространстве. Эта оболочка доступна в любое время, когда у пользователя есть подключение к Интернету, что происходит, когда он вошёл в систему, а компьютер не спит.
Если мы получим root, возможности Bella значительно расширяются.
Аналогично функции getsystem в оболочке meterpreter, у Bella есть функция get_root, которая пытается получить root-доступ различными способами, включая фишинг пароля пользователя и/или локальные эксплойты повышения привилегий, если система уязвима.
После получения root-доступа Bella перемещается в скрытый каталог в /Library и загружает себя как LaunchDaemon. Это обеспечивает удалённый доступ к экземпляру Bella в любое время, если компьютер подключён к сети. После получения root мы можем делать следующее:
ПОДДЕРЖКА НЕСКОЛЬКИХ ПОЛЬЗОВАТЕЛЕЙ! Bella отслеживает всю информацию от всех активных пользователей компьютера в единой базе данных и автоматически переключается на активного пользователя. Все упомянутые выше методы извлечения данных теперь доступны для каждого пользователя на машине.
Расшифровывать ВЕСЬ трафик TLS/SSL и перенаправлять его через центр управления! [красивая активная MITM-атака]
Отключать/включать клавиатуру и/или мышь.
Загружать KEXT Insomnia для поддержания соединения, если пользователь закрывает ноутбук.
Автоматический дамп токенов iCloud и паролей Chrome [использует keychaindump и chainbreaker, если SIP отключён]
Множество автоматизации за кулисами.
Мощь Bella заключается в высоком уровне автоматизации большинства трудоёмких задач, с которыми сталкиваются при пост-эксплуатации. Её невероятно легко настроить и использовать, она не требует предварительной настройки на цели и очень мало настроек в центре управления. Она использует невероятную скрытую мощь macOS и Python для плавного пост-эксплуатационного опыта.
Скачайте / склонируйте этот репозиторий.
Запустите ./BUILDER и введите соответствующие данные.
Всё! Bella готова к работе. Просто загрузите и выполните Bella на вашей цели macOS.
Теперь запустите Control Center.py на вашем центре управления macOS. Он не требует зависимостей [кроме mitmproxy, если вы хотите MITM]. Он выполнит некоторую автонастройку, и через несколько секунд вы увидите нечто подобное.
Центр управления будет постоянно обновлять этот список для 128 отдельных компьютеров.
Нажмите Ctrl-C, чтобы выбрать из списка, затем введите номер нужного компьютера. После этого вы увидите экран, подобный этому.
Начните выполнять команды! bella_info — отличная команда. Выполните manual, чтобы получить полное руководство по всем командам. Также можно дважды нажать Tab, чтобы увидеть список доступных команд.
Маленькое замечание: Bella работает через интернет, если вы выполните некоторую настройку. Настройте брандмауэр на перенаправление порта Bella на ваш центр управления. Другие важные порты для перенаправления: 1) VNC - 5500. 2) Микрофон - 2897. 3) MITM - 8081
Этот проект активно поддерживается. Пожалуйста, отправляйте все сообщения об ошибках, вопросы, запросы функций или связанную информацию.
Bella использует keychaindump, VNC, потоковую передачу микрофона и т.д., отправляя закодированные в base64 бинарники C на сервер/цель Bella. Я включил предварительно скомпилированные и закодированные файлы в Payloads/payloads.txt. Если вы хотите скомпилировать свою версию этих полезных нагрузок, вот что нужно сделать после компиляции:
Закодируйте их в base64 и поместите в payloads.txt в следующем порядке, каждый отделяется новой строкой.
vnc, keychaindump, microphone, rootshell, insomnia, lock_icon, chainbreaker.
payload_generator в каталоге Payloads должен помочь с этим.
Пожалуйста, дайте мне знать, если возникнут проблемы.
https://github.com/juuso/keychaindump
https://github.com/n0fate/chainbreaker
https://github.com/richardkiss/speakerpipe-osx
https://github.com/semaja2/InsomniaX
https://github.com/stweil/OSXvnc
Поддержка центра управления для Linux [не должно потребовать много доработок]
Обратный SOCKS-прокси для туннелирования нашего трафика через сервер.
Расшифровка / извлечение паролей Firefox
Логирование нажатий клавиш с читаемым выводом [готово на 80%]
Обнаружение ВСЕХ программ, вызывающих блокировку, и их завершение [готово на 85%]
Команда interactive_shell, которая предоставляет полностью интерактивный tty через модуль ptty. Единственный недостаток этой функции на данный момент — она не может выполнять запрограммированные функции. [Готово на 95%, осталась интеграция запрограммированных функций]