Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
atomic-operator — Atomic Red Teamテスト(Atomics)を複数のオペレーティングシステム環境で実行するために使用されるPythonパッケージです。 | Kitploit
ツール/GitHubGitHub/swimlane/atomic-operator
防御ツールスクリプトと自動化ペネトレーションテストクラウドセキュリティ学習と教育レッドチーミングArchived
GitHubswimlane/atomic-operator

atomic-operator

Atomic Red Teamテスト(Atomics)を複数のオペレーティングシステム環境で実行するために使用されるPythonパッケージです。

リポジトリを見る
15631232年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

PyPI Status Python Version [License][license]

Read the documentation at https://atomic-operator.com/ Code Quality & Tests

Black

atomic-operator

このPythonパッケージは、Atomic Red Teamテスト(Atomics)を複数のオペレーティングシステム環境で実行するために使用されます。

(新機能はこちら?)

なぜ?

atomic-operatorは、セキュリティ専門家がatomic-red-teamで定義された所定の手法に対して、検出および防御能力をテストすることを可能にします。atomic-operatorのようなテストフレームワークを利用することで、防御能力と防御カバレッジのギャップの両方を特定できます。

さらに、atomic-operatorは以下のような多くの他の状況でも使用できます:

  • 製品をテストするためのアラートの生成
  • EDRやその他のセキュリティツールのテスト
  • 敵対者の視点から防御回避を実行する方法の特定
  • など。

機能

  • Windows、macOS、Linuxシステム上でのAtomic Red Teamテストのローカルおよびリモート実行をサポート
  • iaas:awsに対するアトミックテストの実行をサポート
  • 入力引数のプロンプト表示が可能ですが必須ではありません
  • atomic-red-teamリポジトリのダウンロードを支援
  • 設定ファイルに基づいてさらに自動化可能
  • コマンドラインおよびインポート可能なPythonパッケージ
  • 1つ以上の手法が指定された場合に特定のテストを選択可能
  • 完璧なテストを探すために全アトミックを横断検索
  • コマンドライン経由でテストのinput_argumentsを入力として渡すことが可能
  • など

はじめに

atomic-operatorはPyPiでホストされているPythonのみのパッケージで、Python 3.6以上で動作します。

PowerShell版が必要な場合は、Invoke-AtomicRedTeamをチェックしてください。

pip install atomic-operator

次のステップでは、atomic-operatorのセットアップと実行について説明します。

  • Atomicsを取得 Atomic Red Teamリポジトリのインストール/クローン
  • 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

macOS、Linux、Windows:

pip install atomic-operator

M1プロセッサを使用したmacOS

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テストの取得

atomic-operatorを使用するには、ローカルシステムに1つ以上の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"

1つ以上の特定の手法を指定すると、個別のテストを選択できます。例えば、コマンドラインで以下を実行すると:

atomic-operator run --techniques T1564.001 --select_tests

その手法に関連するテストの選択リストがユーザーに表示されます。ユーザーはスペースバーを使用して目的のテストをハイライトし、1つ以上のテストを選択できます:

 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)

以下を使用すると、テストにカスタム入力引数を提供できます。これは、runメソッドの input_arguments パラメータにキーと値の辞書を渡すことで行います。

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"

Windowsホストに対してリモートでコマンドを実行する場合、PSRemotingの設定が必要になる場合があります。詳細はこちら:Windows Remoting

追加パラメータ

追加のパラメータは、次のコマンドを実行して確認できます:

atomic-operator run -- --help
パラメータ名型デフォルト値説明
techniqueslistallattack_technique ID によって定義された1つ以上の手法。
test_guidslistNone1つ以上のAtomicテストGUID。
select_testsboolFalse手法が指定された場合に、実行するAtomicテストを1つ以上選択します。
atomics_pathstros.getcwd()Atomicテストのパス。
input_argumentsdict{}テストに渡す入力引数の辞書。
check_prereqsboolFalse前提条件の依存関係(prereq_comand)をチェックするかどうか。
get_prereqsboolFalse前提条件を取得するかどうか。
cleanupboolFalseクリーンアップコマンドを実行するかどうか。
copy_source_filesboolTrue関連するソースファイル(src, binなど)をリモートホストにコピーするかどうか。
command_timeoutint20各コマンドのタイムアウト時間(秒)。
debugboolFalse実行中のテストに関する詳細を出力するかどうか。
prompt_for_input_argsboolFalse各テストの入力引数をプロンプト表示するかどうか。
return_atomicsboolFalseアトミックを実行せずに返すかどうか。
config_filestrNone環境内でatomic-operatorを自動化するために使用される設定ファイルへのパス。
config_file_onlyboolFalse提供されたconfig_fileのみに基づいてテストを実行するかどうか。
hostslistNoneテストを実行する1つ以上のリモートホストのリスト。
usernamestrNoneリモート接続の認証用ユーザー名。
passwordstrNoneリモート接続の認証用パスワード。
ssh_key_pathstrNoneリモート接続の認証用SSHキーへのパス。
private_key_stringstrNoneリモート接続の認証に使用するプライベートSSHキー文字列。
verify_sslboolFalseRDP(Windows)経由で接続する際にSSLを検証するかどうか。
ssh_portint22リモート接続の認証用SSHポート。
ssh_timeoutint5リモート接続の認証用SSHタイムアウト。
**kwargsdictNonerunコマンドに追加のフラグが渡された場合、Atomicテスト内で定義された入力と一致させ、その値を指定された値で置き換えようとします。

次のような出力が表示されるはずです:

NAME
    atomic-operator run - The main method in which we run Atomic Red Team tests.

SYNOPSIS
    atomic-operator run <flags>

DESCRIPTION
    The main method in which we run Atomic Red Team tests.
ツールをダウンロード