Взлом

Пост-эксплуатация Linux. Поднимаемся от юзера до бога в несколько кликов


В этом материале тебя ждет обзор и примеры применения наиболее известных и, самое главное, рабочих утилит постэксплуатации серверов с Linux. Как манипулировать системой, стать рутом или бескомпромиссно слить все данные после того, как ты уже проник внутрь защищенного корпоративного периметра, обошел десятки фаеров и хонипотов, а может, даже получил физический доступ к жертве… Расширь влияние и почувствуй себя богом!
 

Концепция Kill Chain в практике пентеста

Если рассматривать практику пентеста, вся цепочка событий, приводящих к какой-либо успешной атаке на целевую ИТ-инфраструктуру, условно разбивается на сменяющие друг друга последовательные этапы. Эта цепочка действий получила название Kill Chain, или, как это звучит в русской нотации, убийственная цепочка (не исключено, что данный творческий перевод сделал сам Капитан Очевидность. — Прим. ред.).

Термин сейчас очень часто используется в мире ИБ, а широкое распространение он получил после публикации доклада Intelligence-Driven Computer Network Defense Informed by Analysis of Adversary Campaigns and Intrusion Kill Chains компании Lockheed Martin, специализирующейся в области авиастроения и авиакосмической техники, в котором среди прочего описывается последовательность шагов злоумышленника, осуществляющего незаконное проникновение (взлом) в информационную систему.

Спросишь меня, как связаны Lockheed Martin и информационная безопасность? Все довольно просто: эта компания имеет прямое отношение к ВПК Соединенных Штатов. Используя опыт Минобороны и других силовых ведомств, компания еще в 2011 году сформулировала план, состоящий из семи последовательных стадий, которые выполняются одна за другой и приводят к взлому целевой системы.

Если кратко, то вот эти семь этапов ниже и есть Kill Chain.

  • Разведка. Исследование, идентификация и выбор целевой системы для взлома.
  • Вооружение. Оснащение хакерскими тулзами и malware для совершения нападения.
  • Доставка. Донесение вредоносного контента (тулз) до целевой системы.
  • Заражение. Запуск вредоносного кода или эксплуатация уязвимостей системы.
  • Инсталляция. Открытие удаленного доступа и другие действия с зараженной системой.
  • Получение управления. Управление зараженной системой.
  • Выполнение действий. Сбор, кража, отправка данных, шифрование файлов, подмена и удаление данных, затирание следов и так далее.
  • Цепочка Kill Chain

    А вот небольшой пример, иллюстрирующий ее применение (проведение атаки step-by-step).

    Сценарий атаки step-by-step

    Постэксплуатация, если накладывать ее на эту таблицу, реализуется на 5-й и 6-й фазах, то есть когда хакер уже проник внутрь корпоративного периметра, обойдя периметровые и некоторые end-point средства защиты, с помощью малвари или эксплоита получил доступ к системе и готов действовать дальше. Постэксплуатация предшествует 7-й фазе «Выполнение действий», когда хакер достигает, если так можно сказать, бизнес-цели своей атаки, однако прежде, чем это произойдет, необходимо закрепиться внутри сети, дособрать нужную информацию о сети и серверах, скорректировать цели, подготовить каналы связи для передачи данных и прочее. Связано это с тем, что, как правило, конфиденциальные данные не лежат на каком-то одном серваке или крутятся в одном приложении, поэтому и необходимо дальше изучать сеть, хранилища данных, искать артефакты — в этом как раз отчасти и помогают инструменты постэксплуатации.

    Основные паттерны, по которым работают злоумышленники, предполагают:

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

    Дополнительно хакер может получать информацию о скомпрометированной системе, анализируя:

    • конфигурацию системы (логин и пароль к БД в исходных кодах);
    • конфигурацию веб-сервера (например, httpd.conf, .htaccess);
    • исходные коды приложения (поиск уязвимостей через анализ логики приложения);
    • доступ к окружению (изнутри сети может быть проще попасть на соседние серверы и изолированные сегменты подсети);
    • базы данных (аутентификационная информация к другим системам, хранящаяся в них).

    Для Windows типичные примеры постэксплуатации — такие атаки, как Pass-in-the-Hash, реализуемые известной тулзой mimikatz, о которых мы писали в нескольких прошлых материалах тут и тут, запуск бинарного кода с помощью PsExec, проброс VPN и/или DNS-туннеля, о которых более подробно рассказывали здесь и здесь. И еще известные паки для нашумевших недавно уязвимостей типа EternalBlue с помощью FuzzBunch и PowerShell Empire.

    Мы же в разделе, который пойдет ниже, сделаем акцент на рассмотрение аналогичных инструментов постэксплуатации, но исключительно под Linux-системы. Ведь все знают, что back-end крупных, особенно DevOps’вских компаний обычно вращаются именно на пингвине.

     

    Обзор основных инструментов постэксплуатации

    Общие векторы атак на целевой машине после получения доступа:

    • эскалация привилегий в системе (Vectors of Privilege Escalation);
    • получение информации о дистрибутиве и ядре (OS Detail & Kernel Version);
    • поиск уязвимого ПО (Any Vulnerable package installed or running);
    • избыточные права доступа (Files and Folders with Full Control or Modify Access);
    • файлы с разрешениями SUID (File with SUID Permissions);
    • примонтированные тома (Mapped Drives (NFS));
    • чувствительные файлы и директории (Potentially Interesting Files);
    • изменение среды окружения (Environment Variable Path);
    • модификация сетевого интерфейса и трафика (Network Information — interfaces, arp, netstat);
    • модификация запущенных процессов в оперативной памяти (Running Processes);
    • задачи, запускаемые по расписанию (Cronjobs);
    • использование утилиты sudo для пользователя (User’s Sudo Right);
    • различные манипуляции с исходным и бинарным кодом (Wildcard Injection).

    PXEnum (Post eXploitation Enumeration script for Linux)

    Основная задача данного скрипта — функция перечисления (англ. Enumeration). Он вытаскивает всю доступную информацию о системе. Скрипт создан для настоящих лентяев. Окей, если высказаться более политкорректно, то «для тех, кто ценит свое время». 🙂 Встроенные команды позволяют также угонять хеши паролей, содержание директорий, все сведения о системе, наличие application-серверов, приложений, соединений, юзеров.

    Источник: xakep.ru

    Оставить комментарий

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