SOC Prime Bias: Високий

30 Jul 2026 15:27 UTC

Виконання команд в Azure VM через розширення Salt Minion стороннього виробника

Author Photo
SOC Prime Team linkedin icon Стежити
Виконання команд в Azure VM через розширення Salt Minion стороннього виробника
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Резюме

Атакуючий з Microsoft.Compute/virtualMachines/extensions/write дозволами може зловживати легітимними сторонніми розширеннями, щоб виконувати довільний код на віртуальних машинах Azure. Розгорнувши розширення Salt Minion і підключивши його до зловмисного Salt Master, атакуючий може відправляти шкідливі стани на цільові системи та отримувати доступ на рівні root або SYSTEM. Ця техніка дозволяє непомітно виконувати команди, що можуть зливатися з нормальною адміністративною автоматизацією.

Розслідування

У звіті представлено атаку з доказами концепції, в якій зловмисний Salt Master налаштовано для керування віртуальними машинами Azure. Розслідування показує, як розширення Salt Minion розгортається через Azure CLI і налаштовується для зв’язку через порти 4505 і 4506. Дослідники виконують шкідливий Salt state, який використовує curl для ексфільтрації токенів Managed Identity до сервісу зовнішньої взаємодії.

Пом’якшення

Організації повинні суворо обмежити ролі, що включають дозволи на запис розширень, включаючи Власника, Учасника та Учасника віртуальної машини. Застосування принципу найменших привілеїв є важливим для запобігання несанкціонованого розгортання розширень. Команди безпеки повинні також моніторити журнали активності Azure для підозрілих операцій запису розширень віртуальних машин та неочікуваних установок сторонніх розширень.

Відповідь

Якщо ця активність виявляється, команди безпеки повинні негайно відкликати дозволи особи, відповідальної за розгортання розширення. Перегляньте журнали активності Azure, щоб визначити IP-адресу джерела, постраждалу віртуальну машину та конфігурацію розширення. Проведіть аналітику кінцевої точки на скомпрометованій системі, щоб оцінити виконання команд, виявити вкрадені облікові дані та виявити будь-яку несанкціоновану стійкість.

Потік атаки

Виконання симуляції

Попередня вимога: Телеметрія та попередня перевірка повинні бути успішно пройдені.

Обґрунтування: У цьому розділі детально описується точна реалізація техніки противника (TTP), розроблена для запуску правила виявлення. Команди та розповідь ПОВИННІ безпосередньо відображати ідентифіковані TTPs та бути спрямовані на генерацію саме тієї телеметрії, що очікує логіка виявлення. Абстрактні або не пов’язані приклади призведуть до діагностичних помилок.

  • Опис атаки та команди: Противник отримав достатньо дозволів у Tenant Azure (наприклад, через скомпрометовану Service Principal або обліковий запис користувача з ролями “Учасник віртуальної машини”). Щоб закріпитися та виконувати команди безпосередньо на цільовій віртуальній машині без традиційного доступу SSH/RDP, противник вирішує розгорнути “Розширення користувацького скрипта”. Ця техніка надзвичайно ефективна для обходу мережевих контролів на основі кінцевої точки. Противник виконає команду Azure CLI для ‘запису’ нового розширення на цільову віртуальну машину. Ця дія запустить MICROSOFT.COMPUTE/VIRTUALMACHINES/EXTENSIONS/WRITE операцію в журналі активності Azure, що є саме тією телеметрією, яку наше правило виявлення розроблено для виявлення.

  • Скрипт регресійного тестування:

    # Симуляція: Розгортання фіктивного розширення для запуску логіки виявлення 'EXTENSIONS/WRITE'
    # Замініть змінні на значення вашого фактичного тестового середовища
    RESOURCE_GROUP="TestRG"
    VM_NAME="TestVM"
    EXTENSION_NAME="MaliciousSaltMinionSim"
    
    echo "Запуск симуляції: Розгортання розширення $EXTENSION_NAME на $VM_NAME..."
    
    az vm extension set 
      --resource-group $RESOURCE_GROUP 
      --vm-name $VM_NAME 
      --name $EXTENSION_NAME 
      --publisher Microsoft.Azure.Extensions 
      --settings '{"commandToExecute": "echo "Simulation Successful" > /tmp/pwned.txt"}'
    
    echo "Симуляційна команда відправлена. Перевірте журнали активності Azure для MICROSOFT.COMPUTE/VIRTUALMACHINES/EXTENSIONS/WRITE"
  • Команди прибирання:

    # Прибирання: Видаліть симульоване шкідливе розширення, щоб повернути середовище до його початкового стану
    RESOURCE_GROUP="TestRG"
    VM_NAME="TestVM"
    EXTENSION_NAME="MaliciousSaltMinionSim"
    
    echo "Прибирання: Видалення розширення $EXTENSION_NAME..."
    
    az vm extension delete 
      --resource-group $RESOURCE_GROUP 
      --vm-name $VM_NAME 
      --name $EXTENSION_NAME
    
    echo "Прибирання завершено."