
Пакет Python используется для выполнения тестов Atomic Red Team (Atomics) в нескольких операционных системах.
Этот пакет Python используется для выполнения тестов Atomic Red Team (Atomics) в различных операционных системах.
atomic-operator позволяет специалистам по безопасности проверять свои возможности обнаружения и защиты от предписанных техник, определённых в atomic-red-team. Используя фреймворк для тестирования, такой как atomic-operator, вы можете выявить как свои защитные возможности, так и пробелы в защите.
Кроме того, atomic-operator можно использовать во многих других ситуациях, например:
iaas:awsatomic-operator — это пакет только для Python, размещённый на PyPi, и работает с Python 3.6 и новее.
Если вам нужна версия на PowerShell, пожалуйста, посмотрите Invoke-AtomicRedTeam.
pip install atomic-operator
Следующие шаги помогут вам настроить и запустить atomic-operator.
Вы можете установить atomic-operator на OS X, Linux или Windows. Также можно установить напрямую из исходного кода. Для установки используйте команды, соответствующие вашей операционной системе, приведённые ниже.
Следующие библиотеки требуются и устанавливаются вместе с atomic-operator:
pyyaml==5.4.1
fire==0.4.0
requests==2.26.0
attrs==21.2.0
pick==1.2.0
pip install atomic-operator
git clone https://github.com/swimlane/atomic-operator.git
cd atomic-operator
# Устранение ModuleNotFoundError: No module named 'setuptools_rust'
brew install rust
pip3 install --upgrade pip
pip3 install setuptools_rust
# Возвращаемся к обычной программе...
pip install -r requirements.txt
python setup.py install
git clone https://github.com/swimlane/atomic-operator.git
cd atomic-operator
pip install -r requirements.txt
python setup.py install
Вы можете запускать atomic-operator из командной строки или внутри собственных скриптов Python. Чтобы использовать atomic-operator в командной строке, просто введите следующее в терминале:
atomic-operator --help
atomic-operator run -- --help
Обратите внимание: для просмотра подробностей о команде
runиспользуйтеatomic-operator run -- --help, а неatomic-operator run --help.
Для использования atomic-operator необходимо иметь один или несколько тестов atomic-red-team (Atomics) на локальной системе. atomic-operator предоставляет возможность загрузить репозиторий Atomic Red Team. Это можно сделать, выполнив следующую команду:
atomic-operator get_atomics
# Вы можете указать каталог назначения с помощью флага --destination
atomic-operator get_atomics --destination "/tmp/some_directory"
Для запуска теста необходимо указать несколько дополнительных свойств (и, при желании, параметры). Основной метод для запуска тестов называется run.
# Это запустит ВСЕ тесты, совместимые с вашей локальной операционной системой
atomic-operator run --atomics-path "/tmp/some_directory/redcanaryco-atomic-red-team-3700624"
Вы можете выбирать отдельные тесты, указав одну или несколько конкретных техник. Например, выполнение следующей команды:
atomic-operator run --techniques T1564.001 --select_tests
Запросит у пользователя список тестов, связанных с этой техникой. Пользователь может выбрать один или несколько тестов, используя пробел для выделения нужного теста:
Select Test(s) for Technique T1564.001 (Hide Artifacts: Hidden Files and Directories)
* Create a hidden file in a hidden directory (61a782e5-9a19-40b5-8ba4-69a4b9f3d7be)
Mac Hidden file (cddb9098-3b47-4e01-9d3b-6f5f323288a9)
Create Windows System File with Attrib (f70974c8-c094-4574-b542-2c545af95a32)
Create Windows Hidden File with Attrib (dadb792e-4358-4d8d-9207-b771faa0daa5)
Hidden files (3b7015f2-3144-4205-b799-b05580621379)
Hide a Directory (b115ecaf-3b24-4ed2-aefe-2fcb9db913d3)
Show all hidden files (9a1ec7da-b892-449f-ad68-67066d04380c)
Следующая команда позволяет указать пользовательские входные аргументы для тестов. Для этого передайте словарь ключей и значений в параметр input_arguments метода run.
atomic-operator run --techniques T1564.001 --input_arguments '{"project-id": "some_value", "another_key": "another value"}'
# Пожалуйста, заключайте значение input_arguments в одинарные кавычки.
Для удалённого запуска теста необходимо указать несколько дополнительных свойств (и, при желании, параметры). Основной метод для запуска тестов называется run.
# Это запустит ВСЕ тесты, совместимые с вашей локальной операционной системой
atomic-operator run --atomics-path "/tmp/some_directory/redcanaryco-atomic-red-team-3700624" --hosts "10.32.1.0" --username "my_username" --password "my_password"