
Ein Python-Paket wird verwendet, um Atomic Red Team Tests (Atomics) über mehrere Betriebssystemumgebungen hinweg auszuführen.
Dieses Python-Paket wird verwendet, um Atomic Red Team-Tests (Atomics) auf mehreren Betriebssystemumgebungen auszuführen.
atomic-operator ermöglicht es Sicherheitsexperten, ihre Erkennungs- und Abwehrfähigkeiten gegen die in atomic-red-team definierten Techniken zu testen. Durch die Verwendung eines Testframeworks wie atomic-operator können Sie sowohl Ihre Abwehrfähigkeiten als auch Lücken in der Abdeckung identifizieren.
Darüber hinaus kann atomic-operator in vielen anderen Situationen eingesetzt werden, wie zum Beispiel:
iaas:awsinput_arguments als Eingabe für Tests über die Kommandozeileatomic-operator ist ein reines Python-Paket, das auf PyPi gehostet wird und mit Python 3.6 und höher funktioniert.
Wenn Sie eine PowerShell-Version wünschen, schauen Sie bei Invoke-AtomicRedTeam vorbei.
pip install atomic-operator
Die nächsten Schritte führen Sie durch die Einrichtung und Ausführung von atomic-operator.
Sie können atomic-operator unter OS X, Linux oder Windows installieren. Sie können es auch direkt aus dem Quellcode installieren. Die Installationsbefehle finden Sie nachfolgend unter dem entsprechenden Betriebssystem.
Die folgenden Bibliotheken werden benötigt und von atomic-operator installiert:
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
# Behebt ModuleNotFoundError: No module named 'setuptools_rust'
brew install rust
pip3 install --upgrade pip
pip3 install setuptools_rust
# Zurück zum regulären Programm ...
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
Sie können atomic-operator über die Kommandozeile oder in Ihren eigenen Python-Skripten ausführen. Um atomic-operator in der Kommandozeile zu verwenden, geben Sie einfach Folgendes in Ihrem Terminal ein:
atomic-operator --help
atomic-operator run -- --help
Bitte beachten Sie, dass Sie
atomic-operator run -- --helpund NICHTatomic-operator run --helpeingeben müssen, um Details zum run-Befehl zu sehen.
Um atomic-operator verwenden zu können, müssen Sie einen oder mehrere atomic-red-team-Tests (Atomics) auf Ihrem lokalen System haben. atomic-operator bietet Ihnen die Möglichkeit, das Atomic Red Team-Repository herunterzuladen. Sie können dies tun, indem Sie Folgendes in der Kommandozeile ausführen:
atomic-operator get_atomics
# Sie können das Zielverzeichnis mit der --destination-Option angeben
atomic-operator get_atomics --destination "/tmp/some_directory"
Um einen Test auszuführen, müssen Sie einige zusätzliche Eigenschaften (und bei Bedarf Optionen) angeben. Die Hauptmethode zum Ausführen von Tests heißt run.
# Dies führt ALLE Tests aus, die mit Ihrem lokalen Betriebssystem kompatibel sind
atomic-operator run --atomics-path "/tmp/some_directory/redcanaryco-atomic-red-team-3700624"
Sie können einzelne Tests auswählen, wenn Sie eine oder mehrere bestimmte Techniken angeben. Zum Beispiel, wenn Sie Folgendes in der Kommandozeile ausführen:
atomic-operator run --techniques T1564.001 --select_tests
Wird der Benutzer mit einer Auswahlliste der zu dieser Technik gehörenden Tests aufgefordert. Ein Benutzer kann einen oder mehrere Tests auswählen, indem er die Leertaste verwendet, um den gewünschten Test zu markieren:
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)
Das Folgende ermöglicht es Ihnen, benutzerdefinierte Eingabeargumente für Tests bereitzustellen. Sie tun dies, indem Sie ein Wörterbuch von Schlüsseln und Werten als Wörterbuch an den Parameter input_arguments der run-Methode übergeben.
atomic-operator run --techniques T1564.001 --input_arguments '{"project-id": "some_value", "another_key": "another value"}'
# Bitte setzen Sie den Wert von input_arguments in einfache Anführungszeichen.