Оболочка Unix - важнейший интерфейс командной строки для Unix-подобных операционных систем - включает в себя несколько вариантов, в том числе Bourne Shell (sh), Bourne-Again Shell (bash), Z Shell (zsh), Korn Shell (ksh) и Secure Shell (SSH). Эти оболочки предлагают ряд команд и функций для эффективного управления файлами и выполнения программ.
Оболочка Unix - это не только интерактивный интерфейс, но и среда написания сценариев, позволяющая пользователям писать скрипты для автоматизации задач и системных операций. Язык сценариев поддерживает различные функции программирования, такие как условные операторы, циклы, файловые операции и переменные, что делает его универсальным инструментом для автоматизации и управления системой.
Использование оболочки Unix злоумышленниками
Универсальная функциональность и адаптивность оболочки Unix делают ее ценным ресурсом как для авторизованных пользователей, так и для злоумышленников. Злоумышленники используют оболочку Unix для выполнения различных команд и развертывания полезной нагрузки, включая вредоносные программы и другой вредоносный код, на целевой системе. Команды оболочки Unix часто занимают видное место в арсенале методов, используемых злоумышленниками в своих атакующих кампаниях.
Эксплуатация с помощью SSH
В январе 2024 года исследователи безопасности обнаружили множество уязвимостей в движке OAS Engine, раскрыв критические недостатки в его существующих релизах [17]. Эксплуатация уязвимостей в OAS Engine иллюстрирует, как незначительные на первый взгляд проблемы могут быть объединены для достижения значительного повышения привилегий в системах на базе Unix. Получив аутентификацию, злоумышленник может исследовать файловую систему на предмет критических файлов, таких как sshd_config или .ssh/authorized_keys, используя такие команды, как:
1 2 | ls -la /etc/ssh/ ls -la /home/<OAS_user>/.ssh/ |
Эта разведка помогает выявить конфигурацию SSH и определить, включена ли аутентификация с открытым ключом. Используя уязвимости OAS Engine, злоумышленник манипулирует системой, чтобы внедрить свой открытый ключ SSH в файл authorized_keys, имитируя команду типа:
1 | echo "ssh-rsa AAAAB3NzaC1yc2EAAFABIwAAAQEArw..." >> /home/<OAS_user>/.ssh/authorized_keys |
Это обеспечивает постоянный доступ, позволяя им подключаться через SSH:
1 | ssh -i /path/to/private_key <OAS_user>@<target_ip> |
Получив доступ к оболочке, злоумышленник может далее манипулировать конфигурационными файлами, такими как .bashrc или .zshrc, чтобы, например, изменять окружение и сохранять контроль:
1 | echo "export PATH=/tmp/malicious_bin:$PATH" >> ~/.bashrc |
Комбинируя уязвимости приложений с инструментами Unix, злоумышленник получает расширенный доступ и контроль над системой, что подчеркивает острую необходимость своевременного исправления ошибок и безопасной конфигурации.
Снижение эффективности защиты: Модификация системного брандмауэра (T1562.004)
Подробнее: MITRE ATT&CK T1562.004 Ослабление защиты: Отключение или модификация системного брандмауэра
В другом примере, продемонстрированном CISA в июле 2024 года, APT40 широко использует инструменты оболочки Unix для поддержания доступа и выполнения команд на взломанных системах. После получения первоначального доступа группа развертывает веб-оболочки, позволяющие выполнять произвольные команды через оболочки Unix, такие как bash или zsh. Это обеспечивает гибкую среду для разведки, сбора учетных данных и латерального перемещения.
Например, участники используют такие инструменты, как nmap, для сканирования сети, а также такие команды, как iptables-save, для манипулирования конфигурацией брандмауэра и создания несанкционированных точек доступа:
1 | iptables-save >> /path/to/modified/rules |
Эти действия обеспечивают сохранение и облегчают утечку информации по защищенным или туннельным каналам.
Загрузка, перегрузка и выполнение вредоносных полезных нагрузок
В рекомендациях CISA, выпущенных в феврале 2024 года, злоумышленники из Volt Typhoon использовали Unix Shell в качестве части командного и скриптового интерпретатора для поддержания и расширения доступа в скомпрометированных средах. В частности, Unix Shell использовался наряду с другими интерфейсами командной строки, такими как PowerShell и Windows Management Instrumentation (WMI), предоставляя злоумышленникам универсальные и скрытные средства для выполнения команд, управления процессами и передачи данных по сети.
Этот метод, реализованный с помощью таких инструментов, как Brightmetricagent.exe, демонстрирует их способность интегрировать расширенные возможности оболочки для двунаправленной передачи данных, удаленного выполнения и точного манипулирования скомпрометированными системами, избегая при этом обнаружения через легитимные системные процессы.