Этичный хакинг с Михаилом Тарасовым (Timcore)
Во время пандемии многие организации трансформировались, чтобы лучше интегрироваться с облачными платформами, не подозревая о наличии критических уязвимостей в Microsoft Exchange Server. В этом разделе мы обсудим различные методы, используемые для выполнения сбора информации из среды Azure, с помощью Kali Linux.
Для взаимодействия со службами Azure нам сначала потребуется загрузить клиент. Это достигается выполнением следующих команд в терминале:
1 2 3 4 |
curl-sL https://aka.ms/InstallAzureCLIDeb | sudo bash sudo apt-get install ca-certificates curl apt-transport-https lsb-release gnupg sudo apt-get install azure-cli |
После успешной установки azure-cli мы сможем войти в систему, с помощью клиента az из нашей Kali Linux, запустив az login; если подписки нет, злоумышленники могут войти в систему без какой-либо подписки, добавив —no-subscriptions, как показано на рисунке ниже:
После входа в систему с учетной записью Microsoft 365, Вы сможете успешно получить детали облака; если у учетной записи есть подписки, они будут отображаться, как показано на рисунке ниже:
В Таблице 3.7 представлены некоторые полезные команды, которые пригодятся при перечислении облачных сервисов Microsoft Azure:
Использование комплексных инструментов (Легион)
Бывший инструмент безопасности Sparta больше не доступен в последней версии Kali, но он дополняется еще одним всеобъемлющим инструментом, под названием Legion, который представляет собой тот же форк, что и Sparta. Этот инструмент может помочь ускорить достижение цели пентестера по компрометации системы, который сочетает в себе несколько инструментов, таких как Nmap, и несколько других скриптов и инструментов. Это полуавтоматический инструмент, и может быть очень удобно, когда злоумышленники хотят выполнить целенаправленный сбор информации по портам и сервисам:
• Хосты: список всех целей, установленных пентестерами.
• Службы: это список служб, которые необходимо запустить во время автоматического запуска; Например, если Вы настроите запуск Nmap, и когда будет определен порт 80, он автоматически примет скриншот
• Инструменты: сюда будут включены все инструменты, которые были запущены на конкретном порту
На рисунке ниже, показано действие Legion против локальной подсети. По умолчанию Legion выполняет полное сканирование портов, с помощью nmap, а также запускает соответствующие сценарии Nmap на основе служб, указанных на порту, и делает скриншот, где это возможно:
Использование машинного обучения для разведки
Машинное обучение стало жизненно важной технологией кибербезопасности. Это искусство использования данных и алгоритмов, чтобы имитировать то, как мы учимся как люди. Машинное обучение — это отрасль искусственного интеллекта. В этом разделе мы рассмотрим инструмент GyoiThon, который Вы можете использовать во время крупномасштабного тестирования или действия красной команды.
Существует четыре типа алгоритмов машинного обучения:
• Под наблюдением: эти алгоритмы обучения снабжены набором известных данных (помеченных), которые включают в себя желаемый результат. Цель этого типа обучения состоит в том, чтобы алгоритм достиг высокого уровня точности, изучая закономерности в данных, чтобы делать прогнозы.
• Без присмотра: эти алгоритмы обучения обучаются на немаркированных данных или наборах данных, которые не включают желаемый результат. Алгоритм пытается интерпретировать и организовать наборы данных.
• Полууправляемый: это сочетание предыдущих типов.
• Обучение с подкреплением: эти алгоритмы основаны на регламентированных процессах обучения, где алгоритм снабжен четким набором действий, факторов и желаемых результатов. В большинстве случаев — это метод проб и ошибок, для изучения различных возможностей и вариантов, чтобы определить, что лучше.
GyoiThon от gyoisamurai — это инструмент для пентеста, основанный на Na?ve Bayes (контролируемом) глубоком обучении. Глубокое обучение является подмножеством машинного обучения, и написано на Python 3. Он включает в себя механизм анализа программного обеспечения, механизм выявления уязвимостей и механизм генерации отчетов. Установите GyoiThon на нашу машину с Kali Linux, и выполните следующие команды в терминале:
1 2 3 4 5 |
$sudo git clonehttps://github.com/gyoisamurai/GyoiThon cd GyoiThon sudo pip3 install-rrequirements.txt sudo apt—fix-broken install sudo apt install python3-tk |
После установки требований, запустите sudo python3 gyyoithon.py -h из терминала, и у Вас должны отображаться все параметры, как показано на рисунке ниже:
Перед началом разведки, Вы можете отредактировать файл конфигурации config.ini, и ввести данные прокси-сервера (если есть), такие как данные API Censys и DomainTools. Все цели могут быть введены в файл host.txt, который находится в той же папке, что и инструмент. Формат для ввода сведений о цели: протокол (http или https), домен (cyberhia.com), порт (80 или 443) и корень (/ или /admin/). Пример использования host.txt для выполнения разведки на cyberhia.com это:
1 2 |
http cyberhia.com80/ https cyberhia.com443/admin/ |
Наконец, Вы можете запустить sudo python3 gyoithon.py из терминала. Программный движок внутри инструмента должен иметь возможность захватывать баннер, используя обычный веб-доступ, и базу глубокого обучения, а также подпись. На рисунке ниже показан успешный результат разведки цели:
Другие функции, которые Вы можете использовать с помощью этого инструмента, включают:
• Поиск облачных сервисов и изучение соответствующих (полных доменных имен)
• Выполнение настраиваемого поиска в Google и изучение путей по умолчанию в зависимости от продукта, и версии
• Выполнение сканирования портов на целях
• Запуск модуля эксплойта с помощью Metasploit.
Поскольку это контролируемый алгоритм обучения, Вы должны уметь определять входные и выходные данные с данными, введенными в алгоритм. В этом случае при каждом сканировании данные будут быть помечены, а алгоритм обучен, что значительно уменьшит количество ложных срабатываний. Например, если у цели есть сотни доменов, это может быть очень удобно для автоматизации баннера сервера, чтобы захватить и перечислить все уязвимости, используя механизм обнаружения уязвимостей, для подготовки к эксплуатации.
Резюме
Злоумышленники могут столкнуться с очень реальной вероятностью того, что их действия будут идентифицированы, что ставит их под риск обнаружения. Тем не менее, мы уже видели различные методы, которые могут быть использованы во время активной разведки. Чтобы уменьшить такой риск, злоумышленники должны убедиться, что является балансом между необходимостью отображать сеть, находить открытые порты и службы, и определять операционные системы и установленные приложения.
Настоящей проблемой для злоумышленников является применение методов скрытого сканирования, для снижения риска взлома.
Ручные подходы обычно используются для создания медленных сканирований; однако такой подход не всегда может быть эффективным. Поэтому злоумышленники пользуются такими инструментами, как сеть Tor и различные прокси-приложения, чтобы скрыть свою личность.
Кроме того, мы изучили, как проводить разведку с помощью машинного обучения, при помощи инструмента GyoiThon, который может значительно сократить ваши ручные усилия.
В следующем разделе мы рассмотрим больше методов и процедур, помогающих в оценке уязвимости, и как использовать сканеры для выявления уязвимостей, которые можно использовать как потенциальные кандидаты для эксплуатации, чтобы двигаться вперед в достижении цели.
Источник: timcore.ru