mcpField
C
chaitin-cli

chaitin-cli

github.com/chaitinセキュリティ11788 回インストール1 日前に更新
リポジトリ

chaitin-cli について

chaitin-cli は、長亭のセキュリティ製品を共通のコマンドラインから操作するスキルです。SafeLine、DDR、X-Ray、CodeInsight、CodeForce、CloudWalker、VeinMind、T-Answer などに対応し、設定方法と製品別の出力形式を扱います。

主な機能

  1. 01複数の長亭製品を一つのCLIで操作
  2. 02製品ごとのコマンドグループ
  3. 03設定ファイル、環境変数、フラグに対応
  4. 04製品ごとの出力形式
  5. 05対応製品でのドライラン

活用シーン

  1. 01コマンドラインからSafeLine WAFを管理
  2. 02X-Rayスキャナーの操作
  3. 03設定済みの長亭製品を一つのCLIで利用
  4. 04設定ファイルで製品環境を切り替え

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/chaitin/chaitin-cli --skill chaitin-cli

インストール後、Claude Code で/chaitin-cliを入力して読み込まれたか確認します。

同梱ファイルscripts/install-chaitin-cli.sh

詳細

chaitin-cli 使用ガイド

Chaitin のセキュリティ製品向け統合 CLI です。1 つのツールで SafeLine WAF、DDR、X-Ray スキャナー、CodeInsight、CodeForce、CloudWalker CWPP、VeinMind コンテナーセキュリティ、T-Answer を管理できます。

引数なしの場合の動作

/chaitin-cli が引数なし(空の ARGUMENTS)で呼び出された場合:

  1. ユーザーに挨拶し、SKILL.md の内容に基づいて、このスキルをわかりやすく紹介します。
  2. command -v chaitin-cli を実行して、chaitin-cli がすでにインストールされているか確認します。
  3. 見つかった場合は、インストール先のパスを伝えます(例:chaitin-cli is installed at /opt/homebrew/bin/chaitin-cli)。
  4. 見つからなかった場合は、プラットフォームに応じてインストールします。
    • Windows:https://github.com/chaitin/chaitin-cli/releases から最新のリリースを手動でダウンロードし、chaitin-cli.exe を展開して PATH に追加するようユーザーに伝えます。Windows では自動インストールを試みないでください。
    • macOS、Linux:bash scripts/install-chaitin-cli.sh を実行します。スクリプトはインストールされたバイナリのパスを標準出力(最終行)に出力します。このパスを記録してください。Bash を呼び出すたびに新しいシェルが起動し、インストール先ディレクトリがまだ PATH に含まれていない可能性があるため、以降のコマンドではフルパス(例:/home/user/.local/bin/chaitin-cli)を使用する必要があります。
  5. セットアップの確認後、次にできることを簡潔に伝えます。たとえば、「これで chaitin-cli を使って SafeLine、DDR、X-Ray、CodeInsight、CodeForce、CloudWalker、VeinMind、T-Answer を管理できます。行いたい操作を伝えるか、chaitin-cli --help を実行してコマンドを確認してください。」

ツールの解決方法

このスキルで chaitin-cli が必要な場合、コマンドを実行するたびに事前に利用可能か確認しないでください。

  1. 要求された chaitin-cli ... コマンドを直接実行します。
  2. シェルが command not found、No such file or directory、または chaitin-cli が見つからないことによる終了コード 127 を報告した場合に限り、プラットフォームに応じてインストールします。
    • Windows:https://github.com/chaitin/chaitin-cli/releases から最新のリリースを手動でダウンロードし、chaitin-cli.exe を展開して PATH に追加するようユーザーに伝えます。Windows では自動インストールを試みないでください。
    • macOS、Linux:bash scripts/install-chaitin-cli.sh を実行します。スクリプトはインストールされたバイナリのパスを標準出力(最終行。例:/home/user/.local/bin/chaitin-cli)に出力します。セッションの残りの間、このパスを記録しておきます。
  3. インストール後は、Bash を呼び出すたびに新しいシェルが起動し、インストール先ディレクトリがまだ PATH に含まれていない可能性があるため、以降の chaitin-cli コマンドでは chaitin-cli 単体ではなく、インストール先のフルパス(例:/home/user/.local/bin/chaitin-cli safeline site list)を使用します。
  4. chaitin-cli がすでに存在する場合は、ユーザーから明示的に求められない限り、GitHub Releases を確認したり、再インストールしたり、バージョンを確認したりしないでください。

インストーラーは、現在の OS とアーキテクチャを検出し、https://github.com/chaitin/chaitin-cli/releases から該当する最新の chaitin-cli リリースアーカイブをダウンロードして、直接実行できる chaitin-cli としてインストールします。ユーザーの PATH に含まれるディレクトリを優先し、可能な場合はシステム全体へのインストールにフォールバックします。

Windows:Windows 用の自動インストーラーはありません。https://github.com/chaitin/chaitin-cli/releases から最新のリリースをダウンロードし、chaitin-cli.exe を展開して、手動で PATH に追加してください。

インストールと実行

# On-demand installer used only when `chaitin-cli` is missing
# macOS / Linux
bash scripts/install-chaitin-cli.sh

# The installer fetches the matching GitHub release package
# and installs the extracted binary as `chaitin-cli`.

# Windows: download the latest release manually from
# https://github.com/chaitin/chaitin-cli/releases
# Extract chaitin-cli.exe and add it to PATH.

# Or build from source
git clone https://github.com/chaitin/chaitin-cli.git
cd chaitin-cli
go build -o chaitin-cli .

# Run
chaitin-cli <product> <command> [flags]

前提条件

chaitin-cli コマンドを実行する前に、次の点を確認してください。

  1. ネットワーク到達性 — chaitin-cli を実行するマシンから、各製品のコンソール/API エンドポイントにアクセスできる必要があります。
  2. API キー — 各製品の UI から API キーを生成し(SafeLine → System → API Token、X-Ray → System Settings → API Key など)、--api-key、製品の環境変数、または config.yaml で指定してください。
  3. 自己署名証明書を使った TLS — chaitin-cli xray では --insecure を指定できます(デフォルトでは無効です)。chaitin-cli safeline でも --insecure を指定できますが、デフォルトは true(すでに検証をスキップする設定)です。検証を再度有効にするには、--insecure=false を指定してください。chaitin-cli tanswer では、TLS 証明書の検証をスキップする必要がある環境向けに --insecure を指定できます。その他の製品では挙動が異なるため、不明な場合は製品のヘルプを確認してください。
  4. ソースからビルドする場合 — Go 1.25 以降が必要です(go.mod を参照してください)。それ以外の場合は、GitHub Releases のビルド済みバイナリを使用してください。

設定

プロジェクト固有の設定を行うには、作業ディレクトリに認識対象の ./config.yaml を作成してください(tanswer など、chaitin-cli の製品名を少なくとも 1 つ含める必要があります)。それ以外の場合は、デフォルトの設定ファイルのパスである ~/.chaitin-cli/config.yaml に同じ設定を置いてください。 T-Answer では、--url、--api-key、--timeout、--insecure、TANSWER_URL、TANSWER_API_KEY、TANSWER_TIMEOUT、TANSWER_INSECURE、または共有設定ファイル内の tanswer.url、tanswer.api_key、tanswer.timeout、tanswer.insecure を使用してください。

safeline:
  url: https://your-safeline-server
  api_key: YOUR_API_KEY

xray:
  url: https://your-xray-server/api/v2
  api_key: YOUR_API_KEY

cloudwalker:
  url: https://your-cloudwalker-server/rpc
  api_key: YOUR_API_KEY

ddr:
  url: https://your-ddr-server/qzh/api/v1
  api_key: YOUR_API_KEY

veinmind:
  url: https://your-veinmind-server
  api_key: YOUR_64_CHARACTER_API_TOKEN

tanswer:
  url: 'https://<全悉 Web 端 IP>'
  api_key: '<全悉 OpenAPI Token>'
  timeout: 30s
  insecure: false

codeinsight:
  url: https://your-codeinsight-server
  access_token: YOUR_ACCESS_TOKEN

または、環境変数/.env ファイルを使用してください。

SAFELINE_URL=https://your-safeline-server
SAFELINE_API_KEY=YOUR_API_KEY
XRAY_URL=https://your-xray-server/api/v2
XRAY_API_KEY=YOUR_API_KEY
DDR_URL=https://your-ddr-server/qzh/api/v1
DDR_API_KEY=YOUR_API_KEY
CODEINSIGHT_URL=https://your-codeinsight-server
CODEINSIGHT_TOKEN=YOUR_ACCESS_TOKEN
TANSWER_URL='https://<全悉 Web 端 IP>'
TANSWER_API_KEY='<全悉 OpenAPI Token>'
TANSWER_TIMEOUT=30s
TANSWER_INSECURE=false

優先順位:flags > environment/.env > recognized ./config.yaml > ~/.chaitin-cli/config.yaml。認識対象の chaitin-cli 製品を含まないローカルの ./config.yaml は無視されるため、別のプロジェクトの設定を誤って上書きすることはありません。

複数の環境を使い分ける場合などは、-c で設定ファイルを切り替えてください。

chaitin-cli -c ./configs/prod.yaml safeline stats overview
chaitin-cli -c ./configs/staging.yaml safeline stats overview
グローバルフラグ
フラグ説明
-c, --config設定ファイルのパスを明示的に指定します。このフラグを指定しない場合、CLI は最初に認識対象の ./config.yaml を、次に ~/.chaitin-cli/config.yaml を試します。
--dry-run製品が対応している場合、実行せずに API リクエストを表示します。ルートコマンドから xray、cloudwalker、veinmind に適用されます。safeline は独自の --dry-run を登録し、サブコマンドに渡します。safeline-ce はルートのフラグを継承しますが、現行のコードベースでは値を保存するだけで使用しません。tanswer はこのフラグを無視します。
コマンドの確認

--help が最も信頼できる情報源です。このドキュメントでは、すべてのフラグを列挙していません。

chaitin-cli <product> --help                # List subcommand groups for a product
chaitin-cli <product> <group> --help        # List commands in a group
chaitin-cli <product> <group> <cmd> --help  # List flags for a specific command

chaitin-cli xray のコマンドは X-Ray OpenAPI 仕様から自動生成されており、数百の操作があります。完全なリファレンスは chaitin-cli xray <category> --help でのみ確認できます。chaitin-cli cloudwalker には、同様に詳細なコマンドグループが 60 以上あります。chaitin-cli veinmind は VeinMind OpenAPI 仕様から生成されます。末端のフラグは必ず chaitin-cli veinmind <group> <cmd> --help で確認してください。

操作ルール

SafeLine、X-Ray、DDR、CodeInsight、CloudWalker、VeinMind、T-Answer、SafeLine-CE に関するタスクでは、chaitin-cli のみをサポート対象の操作インターフェースとして扱ってください。

  • curl、場当たり的な HTTP リクエスト、ブラウザーのデバッグ、推測したエンドポイントよりも、chaitin-cli ... --help と既存の chaitin-cli サブコマンドを優先してください。
  • chaitin-cli で要求された製品操作を実行できない場合は、そこで中止し、現在の CLI では対応していないことを伝えてください。「試す」ためだけに、直接 API を呼び出す方法に切り替えないでください。
  • chaitin-cli で実装されていない、状態を変更する操作や危険を伴う可能性のある製品操作には、curl や生の HTTP リクエストを使用しないでください。
  • ソースの調査は、コマンドの対応状況と動作を確認する目的で行ってください。CLI を迂回して非公開 API 呼び出しを再構築しないでください。
  • サポート対象のコマンドが状態を変更する可能性があり、かつ製品が実際に --dry-run に対応している場合は、まずその方法での確認を優先してください。
出力形式

各製品はそれぞれ独自の出力規則を使用しており、chaitin-cli 全体で統一された -f/--format フラグはありません。

製品デフォルトJSON に切り替える方法その他
chaitin-cli safelinetable--indent—
chaitin-cli safeline-cetable-o json(または --output json)--verbose
chaitin-cli ddrJSON-o json がすでにデフォルトです手動で素早く読むには -o table、リクエストのデバッグには -v
chaitin-cli xrayJSON(代替なし)—デバッグログには --debug
chaitin-cli cloudwalkertext-f json(または --format json)テキストの切り詰めを無効にするには --no-trunc
chaitin-cli veinmindtable-o json(または --output json)リクエストのデバッグには -v、リクエストの概要を表示するには --dry-run
chaitin-cli tanswerJSONデフォルトで JSON が出力されるため、形式の切り替えは不要ですTLS 証明書の検証を回避するには --insecure

jq にパイプで渡す場合、SafeLine では -o/-f ではなく --indent を使用し、T-Answer はデフォルトで JSON を出力する点に注意してください。


機能別のクイック検索

製品名ではなく、タスクから選択してください。項目は、使用頻度の高い順に並んでいます。

タスクコマンドパス
IP のブロック/許可、レート制限、手動 ACLsafeline acl · safeline ip-group · safeline-ce rule
URL パス/ヘッダー/本文にカスタムルールを追加safeline policy-rule · safeline-ce rule
保護対象のサイト/Web サービスを管理safeline site · safeline-ce site
攻撃/アクセス/レート制限のログを照会safeline log · safeline-ce log
検出モジュール(SQLi、XSS など)を有効化safeline policy-group · safeline-ce module · safeline-ce skynet
脆弱性スキャンを開始/停止xray plan
スキャン結果、脆弱性を照会し、レポートを生成xray result · xray vulnerability · xray report
CodeInsight のプロジェクトとスキャンタスクを管理codeinsight project · codeinsight task · codeinsight repo-config
CodeForce のプロジェクト、AI タスク、リポジトリ、ノイズ除去ワークフローを管理codeforce project · codeforce audit · codeforce denoise · codeforce repository · codeforce git-auth
資産インベントリ(Web/ドメイン/IP)xray web_asset · xray domain_asset · xray ip_asset
ベースライン/コンプライアンスチェックxray baseline · cloudwalker baseline_v2
コンテナセキュリティエージェントの管理veinmind agent
コンテナ/イメージ/Kubernetes のインベントリveinmind img · veinmind container · veinmind cluster · veinmind host
コンテナのソフトウェア/Web サイト/Web フレームワークのインベントリveinmind app · veinmind website · veinmind web-framework
コンテナのセキュリティベースライン/コンプライアンスイベントveinmind baseline
コンテナのランタイムおよびイメージのリスクイベントveinmind risk
ホストレベルのイベント対応(Web シェル、リバースシェル、ブルートフォース)cloudwalker webshell_event · cloudwalker revshell_event · cloudwalker brute_force
ホスト資産インベントリ(プロセス/ポート/コンテナ/ユーザー)cloudwalker process_asset · cloudwalker port_asset · cloudwalker docker_container · cloudwalker user_asset
ランサムウェア対策、ファイルの隔離、プロセスの停止cloudwalker anti_ransomware · cloudwalker file_disposal · cloudwalker process_kill
ホストファイアウォール/ネットワークブロックcloudwalker firewall · cloudwalker network_reject
DDR デバイスインベントリ/ファイルスキャンタスクddr device list · ddr device filescantask · ddr device filescantask list
DDR 承認/ポリシーログddr disposal approvalinstance list · ddr policylog channel list · ddr policylog softwarenetwork list
DDR の動作制御ポリシーddr policy channel · ddr policy landing · ddr policy email · ddr policy codecontrol · ddr policy clipboard · ddr policy webpost-control
DDR デバイスのアンインストールddr device status-action --operation uninstall
トラフィック脅威の検出および対応操作tanswer alarm · tanswer file-alarm · tanswer asset · tanswer policy · tanswer response
システム情報/ライセンス管理safeline system · safeline-ce cert info/get · xray system_info · xray system_service PostSystemLicense

SafeLine(雷池 WAF)

グローバルフラグ(SafeLine)
フラグ環境変数説明
--urlSAFELINE_URLSafeLine Skyview API アドレス(必須)
--api-keySAFELINE_API_KEYAPI トークン
--indent—デフォルトのテーブル形式ではなく、整形済み JSON を出力します。SafeLine には個別の -o/--output フラグがないため、形式を切り替えるにはこの方法を使用します。
--insecure—TLS 証明書の検証をスキップします。デフォルト:true — SafeLine は初期状態で検証をスキップします。検証を再度有効にするには、--insecure=false を指定します。

完全なワークフロー:攻撃への対応

このガイドでは、攻撃の発見から攻撃者のブロックまで、一般的なインシデント対応の流れを説明します。

ステップ 1:ダッシュボードを確認する
# View last 24 hours stats
chaitin-cli safeline stats overview --duration h

# View last 30 days stats
chaitin-cli safeline stats overview --duration d
ステップ 2:保護対象のサイトを一覧表示する
chaitin-cli safeline site list
ステップ 3:最近の攻撃ログを表示する
# List the latest 20 attack events
chaitin-cli safeline log detect list --count 20

# Get full details of a specific event
chaitin-cli safeline log detect get \
  --event-id "6edb4c7eb69042cd996045e3ee5526d9" \
  --timestamp "1774857841"
ステップ 4:攻撃者の IP をブロックする

オプション A — IP グループを作成し、ACL ルールでブロックする:

# Create an IP group for malicious IPs
chaitin-cli safeline ip-group create \
  --name "Blocklist" \
  --ips "203.0.113.42,198.51.100.7" \
  --comment "Attackers from incident 2024-01"

# Create an ACL template that forbids the group
chaitin-cli safeline acl template create \
  --name "Block Malicious IPs" \
  --template-type manual \
  --target-type cidr \
  --action forbid \
  --ip-groups <group-id>

オプション B — グループを作成せずに、特定の IP を直接ブロックする:

chaitin-cli safeline acl template create \
  --name "Emergency Block" \
  --template-type manual \
  --target-type cidr \
  --action forbid \
  --targets "203.0.113.42,198.51.100.7"
ステップ 5:悪意のあるパスをブロックするカスタムルールを追加する
# Block requests to /admin/upload with high risk level
chaitin-cli safeline policy-rule create \
  --comment "Block malicious upload path" \
  --target urlpath \
  --cmp infix \
  --value "/admin/upload" \
  --action deny \
  --risk-level 3
ステップ 6:検知モジュールが有効になっていることを確認する
# Check the policy group
chaitin-cli safeline policy-group list
chaitin-cli safeline policy-group get <id>

# Enable SQL injection and XSS detection
chaitin-cli safeline policy-group update <id> \
  --module m_sqli,m_xss \
  --state enabled
ステップ 7:アクセスログを監視する
chaitin-cli safeline log access list --count 50
chaitin-cli safeline log access get \
  --event-id "1e1ef8e9b21d42cd996045e3ee5526d9" \
  --req-start-time "1775117700"
ステップ 8:誤検知を解除する
# List active ACL rules (blocked IPs)
chaitin-cli safeline acl rule list --template-id <template-id>

# Remove the block and add IP to whitelist
chaitin-cli safeline acl rule delete <rule-id> --add-to-whitelist

# Or clear all rules for a template
chaitin-cli safeline acl rule clear --template-id <template-id>

SafeLine コマンドリファレンス
stats
chaitin-cli safeline stats overview --duration h   # 24h stats
chaitin-cli safeline stats overview --duration d   # 30d stats
site
chaitin-cli safeline site list                                    # List all sites
chaitin-cli safeline site get <id>                                # Get site details
chaitin-cli safeline site enable <id>                             # Enable a site
chaitin-cli safeline site disable <id>                            # Disable a site
chaitin-cli safeline site update <id> --policy-group <group-id>  # Attach a policy group to a site
chaitin-cli safeline site update <id> --policy-group 0            # Detach policy group from a site
ip-group(別名:ipgroup)
chaitin-cli safeline ip-group list                                              # List all IP groups
chaitin-cli safeline ip-group list --name "office" --count 50 --offset 0       # Filter by name with pagination
chaitin-cli safeline ip-group get <id>                                          # Get IP group details
chaitin-cli safeline ip-group create --name "DC" --ips "172.16.0.0/16" --comment "Data center"  # Create a new IP group
chaitin-cli safeline ip-group delete <id>                                       # Delete an IP group
chaitin-cli safeline ip-group delete 1 2 3                                      # Batch delete IP groups
chaitin-cli safeline ip-group add-ip <id> --ips "10.0.1.0/24"                  # Add IPs to an IP group
chaitin-cli safeline ip-group remove-ip <id> --ips "10.0.1.0/24"               # Remove IPs from an IP group
acl template
chaitin-cli safeline acl template list                # List all ACL templates
chaitin-cli safeline acl template list --name "limit" # Filter templates by name
chaitin-cli safeline acl template get <id>            # Get ACL template details
chaitin-cli safeline acl template enable <id>         # Enable an ACL template
chaitin-cli safeline acl template disable <id>        # Disable an ACL template
chaitin-cli safeline acl template delete <id>         # Delete an ACL template

# Create manual block rule (specific IPs)
chaitin-cli safeline acl template create \
  --name "Block IPs" --template-type manual \
  --target-type cidr --action forbid \
  --targets "192.168.1.100,10.0.0.50"

# Create auto rate-limit rule
chaitin-cli safeline acl template create \
  --name "Rate Limit" --template-type auto \
  --period 60 --limit 100 --action forbid

# Create throttle rule (allow but slow down)
chaitin-cli safeline acl template create \
  --name "Throttle" --template-type auto \
  --period 60 --limit 100 \
  --action limit_rate \
  --limit-rate-limit 10 --limit-rate-period 60
acl rule(ブロック済み IP エントリ)
chaitin-cli safeline acl rule list --template-id <id>                    # List blocked IP entries for a template
chaitin-cli safeline acl rule delete <id>                                # Delete a blocked IP entry
chaitin-cli safeline acl rule delete <id> --add-to-whitelist             # Delete and move IP to whitelist
chaitin-cli safeline acl rule clear --template-id <id>                   # Clear all blocked IP entries for a template
chaitin-cli safeline acl rule clear --template-id <id> --add-to-whitelist # Clear all and move IPs to whitelist
policy-group
chaitin-cli safeline policy-group list                                              # List all policy groups
chaitin-cli safeline policy-group get <id>                                          # Get policy group details
chaitin-cli safeline policy-group update <id> --module m_sqli,m_xss --state enabled  # Enable detection modules
chaitin-cli safeline policy-group update <id> --module m_cmd_injection --state disabled # Disable a detection module

利用可能なモジュール:m_sqli m_xss m_cmd_injection m_file_include m_file_upload m_php_code_injection m_php_unserialize m_java m_java_unserialize m_ssrf m_ssti m_csrf m_scanner m_response m_rule

policy-rule
chaitin-cli safeline policy-rule list                  # List all policy rules (global by default)
chaitin-cli safeline policy-rule list --global=false   # List site-specific rules only
chaitin-cli safeline policy-rule get <id>              # Get policy rule details
chaitin-cli safeline policy-rule enable <id>           # Enable a policy rule
chaitin-cli safeline policy-rule disable <id>          # Disable a policy rule
chaitin-cli safeline policy-rule delete <id>           # Delete a policy rule

# Create simple rule
chaitin-cli safeline policy-rule create \
  --comment "Block /admin" \
  --target urlpath --cmp infix --value "/admin" \
  --action deny --risk-level 3

# List available targets and operators
chaitin-cli safeline policy-rule targets
chaitin-cli safeline policy-rule targets --cmp urlpath

# Actions: deny | dry_run | allow
# Risk levels: 0=none 1=low 2=medium 3=high
log
# Attack logs
chaitin-cli safeline log detect list --count 50
chaitin-cli safeline log detect list --current-page 1 --target-page 2
chaitin-cli safeline log detect get --event-id "<id>" --timestamp "<ts>"

# Access logs
chaitin-cli safeline log access list --count 50
chaitin-cli safeline log access get --event-id "<id>" --req-start-time "<ts>"

# Rate-limit logs (alias: rl)
chaitin-cli safeline log rate-limit list --count 50 --offset 0
system
chaitin-cli safeline system license                      # Get license information
chaitin-cli safeline system machine-id                   # Get machine ID (for license activation)
chaitin-cli safeline system log list --count 50 --offset 0  # List system operation logs
network(ハードウェアモードのみ)
chaitin-cli safeline network workgroup list          # alias: wg list
chaitin-cli safeline network workgroup get <name>    # alias: wg get
chaitin-cli safeline network interface list          # alias: if list
chaitin-cli safeline network interface ip <name>     # alias: if ip
chaitin-cli safeline network gateway get             # alias: gw get
chaitin-cli safeline network route list              # alias: sr list

X-Ray(洞鉴 脆弱性スキャナー)

グローバルフラグ(X-Ray)
フラグ環境変数説明
--urlXRAY_URLX-Ray API アドレス(必須)
--api-keyXRAY_API_KEYAPI トークン
--debug—デバッグログを有効にする
--insecure—TLS 証明書の検証をスキップする
基本コマンド
# Quick scan (create and immediately execute a task)
chaitin-cli xray plan PostPlanCreateQuick \
  --targets=10.3.0.4,10.3.0.5 \
  --engines=<engine-id> \
  --project-id=1

# List scan tasks
chaitin-cli xray plan PostPlanFilter \
  --filterPlan.limit=10 \
  --filterPlan.offset=0

# Stop a scan task
chaitin-cli xray plan PostPlanStop --stopPlanBody.id=<id>

# Resume a scan task
chaitin-cli xray plan PostPlanExecute --executePlanBody.id=<id>

# Delete a scan task
chaitin-cli xray plan DeletePlanID --id=<id>
コマンドカテゴリ
コマンド説明
chaitin-cli xray asset_propertyアセット管理
chaitin-cli xray audit_log監査ログ管理
chaitin-cli xray baselineベースラインチェック管理
chaitin-cli xray custom_pocカスタム POC 管理
chaitin-cli xray domain_assetドメインアセット管理
chaitin-cli xray insightデータインサイトと分析
chaitin-cli xray ip_assetIP/ホストアセット管理
chaitin-cli xray planスキャンタスク管理
chaitin-cli xray projectプロジェクト管理
chaitin-cli xray reportレポート管理
chaitin-cli xray resultスキャン結果管理
chaitin-cli xray roleロール管理
chaitin-cli xray service_assetサービスアセット管理
chaitin-cli xray system_infoシステム情報
chaitin-cli xray system_serviceシステムサービス管理
chaitin-cli xray task_configタスク設定管理
chaitin-cli xray templateポリシーテンプレート管理
chaitin-cli xray userユーザー管理
chaitin-cli xray vulnerability脆弱性管理
chaitin-cli xray web_assetWeb アセット管理
chaitin-cli xray xprocessXProcess タスクインスタンス管理
chaitin-cli xray xprocess_liteXProcess lite 管理

CloudWalker(云溯 CWPP)

グローバルフラグ(CloudWalker)
フラグ環境変数説明
--urlCLOUDWALKER_URLCloudWalker RPC アドレス(必須)
--api-keyCLOUDWALKER_API_KEYAPI キー

注:CloudWalker では --insecure は公開されていませんが、HTTP クライアントは常に InsecureSkipVerify: true を設定します。そのため、自己署名証明書をそのまま使用でき、CA のインストールや HTTP へのフォールバックは不要です。

コマンドカテゴリ

各カテゴリにはサブコマンドがあります。サブコマンドを一覧表示するには、chaitin-cli cloudwalker <category> --help を実行してください。

セキュリティイベント
コマンド説明
chaitin-cli cloudwalker abnormal_login_event異常なログインイベント
chaitin-cli cloudwalker brute_forceブルートフォースイベント
chaitin-cli cloudwalker elevation_process_event権限昇格プロセスイベント
chaitin-cli cloudwalker event_statイベント管理と統計
chaitin-cli cloudwalker full_commandコマンド実行の全記録
chaitin-cli cloudwalker honeypotハニーポットのトラップイベント
chaitin-cli cloudwalker malware_eventマルウェアイベント
chaitin-cli cloudwalker memory_webshell_eventインメモリ Webshell イベント
chaitin-cli cloudwalker network_audit_eventネットワーク異常イベント
chaitin-cli cloudwalker non_white_processホワイトリストに登録されていないプロセスのイベント
chaitin-cli cloudwalker revshell_eventリバースシェルイベント
chaitin-cli cloudwalker suspicious_operation不審な操作のイベント
chaitin-cli cloudwalker webshell_eventWebshell イベント
資産インベントリ
コマンド説明
chaitin-cli cloudwalker application_assetアプリケーション資産
chaitin-cli cloudwalker asset_cert証明書資産
chaitin-cli cloudwalker asset_config資産収集設定
chaitin-cli cloudwalker asset_crontabスケジュールタスク資産
chaitin-cli cloudwalker asset_env環境変数資産
chaitin-cli cloudwalker asset_registryレジストリ資産
chaitin-cli cloudwalker asset_startupスタートアップ項目資産
chaitin-cli cloudwalker docker_containerDocker コンテナ資産
chaitin-cli cloudwalker docker_imageDocker イメージ資産
chaitin-cli cloudwalker docker_networkDocker ネットワーク資産
chaitin-cli cloudwalker host_assetホスト資産(エージェント管理を含む)
chaitin-cli cloudwalker host_discovery未知のホストの検出
chaitin-cli cloudwalker host_nic_assetネットワークインターフェースカード資産
chaitin-cli cloudwalker host_partition_assetパーティション資産
chaitin-cli cloudwalker host_route_assetルート資産
chaitin-cli cloudwalker port_assetポート資産
chaitin-cli cloudwalker process_assetプロセス資産
chaitin-cli cloudwalker user_assetユーザー資産
chaitin-cli cloudwalker website_assetウェブサイト資産
セキュリティ保護
コマンド説明
chaitin-cli cloudwalker anti_ransomwareランサムウェア対策
chaitin-cli cloudwalker baseline_v2ベースラインチェック管理
chaitin-cli cloudwalker detection_rule検出ルール管理
chaitin-cli cloudwalker file_disposalファイル処理(隔離/削除)
chaitin-cli cloudwalker firewallファイアウォールルール管理
chaitin-cli cloudwalker mimicryミミクリーディフェンス
chaitin-cli cloudwalker network_rejectネットワークブロック管理
chaitin-cli cloudwalker port_scanポートスキャン保護
chaitin-cli cloudwalker process_killプロセスの終了
chaitin-cli cloudwalker security_checkセキュリティチェック
chaitin-cli cloudwalker sensitive_file機密ファイル管理
chaitin-cli cloudwalker sensitive_file_scan機密ファイルのスキャン
chaitin-cli cloudwalker sensitive_port機密ポート管理
chaitin-cli cloudwalker sensitive_user機密ユーザー管理
chaitin-cli cloudwalker tamper_proofファイル改ざん防止保護
chaitin-cli cloudwalker vuln脆弱性管理
chaitin-cli cloudwalker weak_passwd弱いパスワードの検出
chaitin-cli cloudwalker whitelistホワイトリストルール管理
プラットフォーム管理
コマンド説明
chaitin-cli cloudwalker admin_agentエージェントモジュールの更新管理
chaitin-cli cloudwalker admin_monitorシステム監視管理
chaitin-cli cloudwalker admin_strategy戦略管理
chaitin-cli cloudwalker agentエージェント管理
chaitin-cli cloudwalker agent_detector悪意のあるファイルを検知するエージェントの管理
chaitin-cli cloudwalker agent_moduleエージェントモジュール管理
chaitin-cli cloudwalker alert_configアラート設定
chaitin-cli cloudwalker audit_log監査ログ
chaitin-cli cloudwalker business_groupビジネスグループ管理
chaitin-cli cloudwalker crontabスケジュールタスク管理
chaitin-cli cloudwalker emergency_vuln_v1緊急脆弱性管理
chaitin-cli cloudwalker endpointエージェント接続設定
chaitin-cli cloudwalker log_collectログ収集
chaitin-cli cloudwalker message_queueメッセージキュー管理
chaitin-cli cloudwalker organization組織管理
chaitin-cli cloudwalker package_service更新パッケージサービス
chaitin-cli cloudwalker patch_infoパッチ情報
chaitin-cli cloudwalker patch_info_eventパッチリスクイベント
chaitin-cli cloudwalker reportレポート管理
chaitin-cli cloudwalker scout_agent_apiイベント収集エージェント管理
chaitin-cli cloudwalker security_strategyセキュリティ領域の戦略管理
chaitin-cli cloudwalker security_toolセキュリティツール
chaitin-cli cloudwalker statisticsイベント統計の概要
chaitin-cli cloudwalker threat_overview脅威の概要
chaitin-cli cloudwalker vuln_info脆弱性情報

VeinMind(コンテナセキュリティ)

VeinMind のコマンドは、埋め込みの OpenAPI 仕様から生成されます。chaitin-cli veinmind --help を使用してすべてのグループを一覧表示し、chaitin-cli veinmind <group> --help および chaitin-cli veinmind <group> <cmd> --help で詳細を確認してください。

グローバルフラグ(VeinMind)
フラグ環境変数説明
--urlVEINMIND_URLVeinMind API アドレス
--api-keyVEINMIND_API_KEY64 文字の完全な VeinMind API トークン
-o, --output—出力形式:table(デフォルト)または json
-v, --verbose—リクエスト URL、ヘッダー、本文を出力
--dry-run—製品へのリクエストを送信せずに、リクエストの概要を出力

注:VeinMind は、64 文字の API トークンをシークレットとキーに分割してセッションを作成することで認証します。HTTP クライアントは TLS 検証をスキップするため、自己署名された製品証明書に対して追加のフラグは必要ありません。

コンテナセキュリティのコマンドグループ
コマンド主な用途
chaitin-cli veinmind agentプローブ/スキャナーの管理、グループ、インストールコマンド、起動/停止/再起動/修復/削除
chaitin-cli veinmind appソフトウェア名/バージョンおよび関連イメージ別のソフトウェア資産インベントリ
chaitin-cli veinmind hostクラスター外のホストインベントリと、ホスト関連イメージ
chaitin-cli veinmind baselineシフトレフトコンプライアンスベースラインのメタデータとイベント
chaitin-cli veinmind imgイメージインベントリ、詳細、レイヤー、履歴、ソース情報、修復の提案
chaitin-cli veinmind containerコンテナインベントリ、コンテナの詳細、ネットワーク、ポート、プロセス、ボリューム
chaitin-cli veinmind clusterKubernetes クラスターとリソース:ノード、ポッド、サービス、ロール、シークレット、ワークロード、PV/PVC
chaitin-cli veinmind websiteWeb サイトの資産と、Web サイトを公開するコンテナ
chaitin-cli veinmind web-frameworkWeb フレームワークの資産と、フレームワークを公開するコンテナ
chaitin-cli veinmind riskランタイム/イメージのリスクイベント、イベントの詳細、対応アクション、イベントステータスの更新
一般的な読み取り専用クエリ

結果を解析または要約する場合は、-o json を優先してください。ほとんどのリストコマンドでは --offset と --page-size を使用します。正確なフィルターはコマンドによって異なるため、フィルターを追加する前に、該当する下位コマンドのヘルプを確認してください。

# Probes / scanners
chaitin-cli veinmind agent scanner-list --offset 0 --page-size 20 -o json
chaitin-cli veinmind agent scanner-list --state 2 --host-ip <ip> -o json

# Image and container inventory
chaitin-cli veinmind img list --offset 0 --page-size 20 --risk 5 -o json
chaitin-cli veinmind img base-info --id <image-list-id> -o json
chaitin-cli veinmind container list --offset 0 --page-size 20 --state 3 --risk 4 -o json
chaitin-cli veinmind container get --id <container-list-id> -o json

# Kubernetes and host inventory
chaitin-cli veinmind cluster cluster-list --offset 0 --page-size 20 --status 1 -o json
chaitin-cli veinmind cluster pod-list --cluster-id <cluster-id> --offset 0 --page-size 20 -o json
chaitin-cli veinmind host list --offset 0 --page-size 20 --name <host-name> -o json

# Software, web site, and web framework assets
chaitin-cli veinmind app agg-list --offset 0 --page-size 20 --name nginx -o json
chaitin-cli veinmind website list --offset 0 --page-size 20 --container-name <container-name> -o json
chaitin-cli veinmind web-framework list --offset 0 --page-size 20 --name spring -o json

# Baseline metadata and events
chaitin-cli veinmind baseline meta -o json
chaitin-cli veinmind baseline events --set-id <set-id> --item-id <item-id> --offset 0 --page-size 20 -o json

# Risk events
chaitin-cli veinmind risk real-time-event-list -o json
chaitin-cli veinmind risk container-webshell-list --offset 0 --page-size 20 --risk 5 --manage-status 1 -o json
chaitin-cli veinmind risk container-malicious-file-list --offset 0 --page-size 20 --risk 5 -o json
chaitin-cli veinmind risk container-revshell-event-list --offset 0 --page-size 20 --risk 4 -o json
chaitin-cli veinmind risk event-info --event-type 8 --id <event-id> -o json

コマンドのヘルプに記載されている便利な列挙値のヒント:

フィールド値
--risk1 リスクなし、2 低、3 中、4 高、5 重大
container list の --state1 作成中、2 作成済み、3 実行中、4 停止
cluster cluster-list の --status1 接続可能、2 接続不可
リスクイベントのリストにおける --manage-status1 リスクあり、2 確認中、3 解決済み、4 誤検知、5 無視
risk event-info の --event-type1 イメージ内の機密ファイル、2 イメージ内の悪意のあるファイル、3 イメージ内のウェブシェル、5 コンテナコマンドの監査、6 リバースシェル、7 コンテナ内の悪意のあるファイル、8 コンテナ内のウェブシェル、9 ブルートフォース、10 弱いパスワード、11 メモリ内トロイの木馬、12 緊急脆弱性、22 脱出、23 異常な接続
変更/対応コマンド

agent の start/stop/restart/repair/delete、agent のグループに対する create/update/delete、cluster delete、risk batch-tag-events、risk container-op、risk file-op、および risk resume-* コマンドは、変更を伴うものとして扱ってください。リクエストボディに対応しているコマンドでは、まず --dry-run -v を使用してください。JSON ペイロードには、インラインの --body より --body-file を優先してください。

# Inspect the request shape before changing event status
chaitin-cli --dry-run veinmind risk batch-tag-events --body-file /tmp/veinmind-event-status.json -v -o json

# Inspect the request shape before container / Pod response actions
chaitin-cli --dry-run veinmind risk container-op --body-file /tmp/veinmind-container-op.json -v -o json

VeinMind のリクエストボディを推測してはいけません。--help で該当する下位コマンドを確認し、必要に応じて関連する OpenAPI/ソースマッピングを調べてください。対象のイベント、アセット、またはプローブの ID が確認できた場合に限り、変更コマンドを実行してください。


T-Answer(全悉 Traffic Threat Detection)

T-Answer のタスクでは、次の手順に従ってください。

  1. 接続して認証します。 TANSWER_URL と TANSWER_API_KEY(または tanswer 設定セクション)を設定します。製品にアクセスする前に、chaitin-cli tanswer auth status を実行してローカル設定を確認し、chaitin-cli tanswer auth check を実行してください。設定または認可が利用できない場合は、ユーザーに確認してください。値を推測してはいけません。
  2. 操作の前に確認します。 まず chaitin-cli tanswer --help を実行し、次にドメインと下位コマンドの --help を確認してください。未知のコマンド、フラグ、出力フィールド、および保護された書き込みに必要な条件は、ヘルプまたは chaitin-cli tanswer manifest から確認してください。リポジトリの製品ドキュメントに依存したり、コマンドを推測したりしてはいけません。
  3. 読み取り操作を行います。 api よりセマンティックコマンドを優先し、認証後に読み取り専用の操作を実行して、返された JSON をユーザー向けに要約してください。
  4. 保護されたセマンティックな書き込みにはユーザーの許可が必要です。 まず、対象のコマンドを --preview 付きで実行します。対象、変更の概要、影響、およびリスクに関する警告をユーザーに提示し、その特定の変更について明示的な確認を得るまで待ってください。ユーザーが確認した後に限り、ドキュメントに記載された正確な --confirm トークンを指定してコマンドを実行できます。ヘルプやマニフェストから確認できるトークンは、CLI の機械的な要件であり、ユーザーの許可ではありません。自分の判断で書き込みを実行するために使用してはいけません。
  5. Open API にフォールバックします。 リクエストされた機能を扱うセマンティックコマンドがなく、かつユーザーから既知の認可済みエンドポイント、メソッド、リクエストボディが提示されている場合に限り、chaitin-cli tanswer api を使用してください。RPC メソッド、パス、リクエストボディを推測してはいけません。GET/HEAD リクエストはそのまま実行できます。それ以外の HTTP メソッドでは、まず --confirm を付けずにコマンドを実行するか、--preview を指定してください。メソッド、パス、クエリ、ボディ、およびリスクを提示し、その正確なリクエストについて明示的な確認を得るまで待ってから、--confirm CONFIRM_TANSWER_RAW_API_WRITE を指定してください。ルートレベルの --dry-run フラグは tanswer には適用されません。
高速エージェントのワークフロー(T-Answer)

自律的な T-Answer 作業を開始する前に、現在のセッションで環境をすでに確認済みの場合を除き、chaitin-cli tanswer auth check と chaitin-cli tanswer manifest を実行してください。作成、更新、削除、インポート、有効化、無効化、または対応の操作では、まず --preview を付けてコマンドを実行してください。また、ユーザーまたは上流システムから正確な確認トークンが明示的に提供されていない限り、--confirm に値を入力しないでください。

通常の読み取り専用タスクであれば、このセクションで十分です。複雑なルーティング、書き込み操作の計画、または判断が曖昧なポリシー/対応については、該当するドメイン/リーフの --help と chaitin-cli tanswer manifest を確認し、推測しないでください。特定のコマンドの全フラグ、出力フィールド、詳細な例、または適用範囲が必要な場合は、products/tanswer/COMMAND_REFERENCE.md を使用してください。オンボーディング、トークンのセットアップ、権限要件、スモークテスト、トラブルシューティングについては、products/tanswer/README.md を参照してください。

クイックルーティング(T-Answer)
ユーザーの意図推奨
接続、ローカル設定、またはトークンの利用可否を確認するtanswer auth status、tanswer auth check
対応コマンド、フラグ、リスクレベル、出力フィールドを確認するtanswer manifest
システムバージョン、ライセンス、ノードの状態、ヘルスサマリーtanswer system status
全体的な脅威状況、アラーム分布、攻撃者/被害者の上位リストtanswer alarm overview
当番対応が必要な、重大度がクリティカル/高で、攻撃成功または侵害されたアラームtanswer alarm high-priority
元の脅威アラームの行、または単一のアラーム詳細tanswer alarm list、続けて tanswer alarm detail --id <doc_id>
1 件のソースアラームに関連するアラームtanswer alarm related --id <doc_id>
悪意のあるファイル、Webshell、またはサンドボックス結果の調査tanswer file-alarm overview、malicious、webshell、sandbox、detail
設定済みのアセットインベントリ、グループツリー、インポート/エクスポート、アセットのメンテナンスtanswer asset ...
プロトコル別のトラフィックメタデータ、高度なクエリ、詳細、またはアラームのコンテキストtanswer metadata ...
検知ホワイトリスト、またはカスタム IOC インテリジェンスtanswer policy ...
バイパスブロックポリシー、ブロック記録、対応ホワイトリスト、連携デバイス、自動対応tanswer response ...

alarm detail、file-alarm detail、asset detail、metadata detail、metadata near-alarm、およびアラーム由来のポリシー/対応コマンドは、必要な ID を一覧/詳細コマンドまたはユーザーから取得した後にのみ使用してください。

安全ルール(T-Answer)
  • 状態を変更する操作で curl を使って chaitin-cli tanswer を回避しないでください。
  • RPC メソッドやリクエスト本文を推測しないでください。セマンティックコマンド、manifest、コマンドの --help、またはユーザーが提供した認可済み Open API ドキュメントを使用してください。
  • サンプルのダウンロード、サンプルの送信、新たなサンドボックス分析の開始に file-alarm を使用しないでください。
  • metadata near-alarm は調査のコンテキストとして扱い、攻撃の単独の証拠とみなさないでください。
  • 別途検証しない限り、T-Answer の対応記録を、サードパーティ製デバイスで強制措置が完了した証拠とみなさないでください。

SafeLine-CE(雷池コミュニティ版)

SafeLine-CE は SafeLine WAF のコミュニティ版です。コマンド構造はエンタープライズ版と異なります。

グローバルフラグ(SafeLine-CE)
フラグ説明
--urlSafeLine-CE サーバーのアドレス(例:https://your-server:9443)
--api-key認証用の API キー
-o, --output出力形式:table(デフォルト)または json
--verbose詳細な出力

注:SafeLine-CE は --insecure を公開していませんが、HTTP クライアントでは常に InsecureSkipVerify: true が設定されます。

設定
safeline-ce:
  url: https://your-safeline-ce-server:9443
  api_key: YOUR_API_KEY

または環境変数を使用します。

SAFELINE_CE_URL=https://your-safeline-ce-server:9443
SAFELINE_CE_API_KEY=YOUR_API_KEY
コマンドリファレンス
stat
chaitin-cli safeline-ce stat overview        # Aggregated stats: QPS, access, intercept counts
site
chaitin-cli safeline-ce site list            # List all web services
chaitin-cli safeline-ce site create          # Create a web service
chaitin-cli safeline-ce site update          # Update a web service
chaitin-cli safeline-ce site delete          # Delete a web service
rule(カスタムポリシールール)
chaitin-cli safeline-ce rule list            # List all custom rules
chaitin-cli safeline-ce rule create          # Create a custom rule
chaitin-cli safeline-ce rule update          # Update a custom rule
chaitin-cli safeline-ce rule delete          # Delete a custom rule
chaitin-cli safeline-ce rule switch          # Enable or disable a custom rule
ipgroup
chaitin-cli safeline-ce ipgroup list         # List all IP groups
chaitin-cli safeline-ce ipgroup get          # Get IP group details
chaitin-cli safeline-ce ipgroup create       # Create an IP group
chaitin-cli safeline-ce ipgroup update       # Update an IP group
chaitin-cli safeline-ce ipgroup delete       # Delete an IP group
chaitin-cli safeline-ce ipgroup append       # Add IPs to an IP group
log
chaitin-cli safeline-ce log attack list      # List attack logs
chaitin-cli safeline-ce log attack get       # Get attack log detail by ID
chaitin-cli safeline-ce log rule list        # List rule-triggered attack logs
chaitin-cli safeline-ce log rule get         # Get rule-triggered attack log detail
chaitin-cli safeline-ce log audit list       # Get audit logs
skynet(高度な検知ルール)
chaitin-cli safeline-ce skynet get           # Get enhanced rule configuration
chaitin-cli safeline-ce skynet update        # Update enhanced rule configuration
chaitin-cli safeline-ce skynet switch get    # Get global enable status of enhanced rules
chaitin-cli safeline-ce skynet switch set    # Enable or disable enhanced rules globally
module(グローバルセマンティクス)
chaitin-cli safeline-ce module get           # Get global semantics mode
chaitin-cli safeline-ce module update        # Update global semantics mode
cert(システム/ライセンス)
chaitin-cli safeline-ce cert info            # Get system info
chaitin-cli safeline-ce cert get             # Get license info
chaitin-cli safeline-ce cert update          # Update management certificate

DDR(データセキュリティ運用)

グローバルフラグ(DDR)
フラグ環境変数説明
--urlDDR_URLDDR API のアドレス。通常は末尾が /qzh/api/v1 です
--api-keyDDR_API_KEYAPI キーまたは Serval トークン
-o, --output—出力形式:json(デフォルト)または table
-v, --verbose—リクエスト URL、ヘッダー、本文を出力します

DDR コマンドの出力形式はデフォルトで JSON です。結果を解析する場合は例に -o json を残し、コンパクトで人が読みやすい要約をユーザーが求めた場合のみ -o table を使用してください。

アセットスキャンタスクの作成手順
  1. デバイス名からデバイス UID を検索します。PC-000006 の例:
chaitin-cli ddr device list --accept application/json --accept-language zh --content-type application/json --if-none-match '' --x-cs-header-crypt none --x-cs-header-debug false --x-cs-header-timezone Asia/Shanghai -o json --search PC-000006 --limit 20 --page 1
  1. 返された結果からデバイスの id を取得し、そのデバイス名と ID を使ってスキャンタスクの body にある name、include[0].name、include[0].id、binding_config.include.device_ids を変更します。コマンドラインのエスケープに関する問題を避けるため、一時 JSON ファイルを作成することをおすすめします。
{
  "file_size_lower_measure": "MB",
  "file_size_lower": 0,
  "file_size_upper_measure": "MB",
  "file_size_upper": 100,
  "name": "2222-1",
  "description": "3222",
  "scope": "common",
  "include": [
    {
      "name": "PC-000341",
      "id": "62515059-0700-46a8-8441-bb75413e75de",
      "type": "device",
      "expand": {
        "ip": "192.168.96.247",
        "code": "PC-000341",
        "username": "orange@orangedeMacBook-Pro",
        "os_icon": ["macOS"],
        "status": "activated",
        "conn_status": "online",
        "agent_version": "3.9.100",
        "tags": []
      }
    }
  ],
  "frequency": "immediately",
  "worktime_point": [
    {"begin": "00:00", "end": "23:59", "week": 1},
    {"begin": "00:00", "end": "23:59", "week": 2},
    {"begin": "00:00", "end": "23:59", "week": 3},
    {"begin": "00:00", "end": "23:59", "week": 4},
    {"begin": "00:00", "end": "23:59", "week": 5},
    {"begin": "00:00", "end": "23:59", "week": 6},
    {"begin": "00:00", "end": "23:59", "week": 7}
  ],
  "scan_mode": "custom",
  "dirs_scan_options": {
    "Windows": [{"path": "C:\\Users"}, {"path": "D:\\"}, {"path": "E:\\"}],
    "macOS": [{"path": "/tmp/123"}],
    "Linux": [{"path": "/home"}, {"path": "/data"}],
    "Kylin": [{"path": "/home"}, {"path": "/data"}],
    "UOS": [{"path": "/home"}, {"path": "/data"}]
  },
  "scan_all_das": true,
  "expand": {"web": {"file_size_operator": "lt", "file_size_num": 100, "file_size_unit": "MB"}},
  "file_scan_mode": "speed",
  "advanced_option": false,
  "binding_config": {
    "source": "file_scan",
    "include": {"device_ids": ["62515059-0700-46a8-8441-bb75413e75de"]},
    "exclude": {}
  },
  "file_exclude_ids": [],
  "file_include_ids": [],
  "custom_whitelist": [],
  "notification_config": [],
  "governance_id": null
}

JSON の body を使ってタスクを実行します。

chaitin-cli ddr device filescantask --body "$(cat /tmp/ddr-filescantask.json)"
スキャンタスクの結果を確認する

最新のスキャンタスクを照会し、可能であればコンパクトな表で結果をユーザーに要約します。

chaitin-cli ddr device filescantask list --body '{"page": 1, "limit": 1, "search": ""}' -o json
承認タスクの一覧を確認する
chaitin-cli ddr disposal approvalinstance list --page 1 --limit 10 --search "" -o json
外部送信制御ログの照会
chaitin-cli ddr policylog channel list --page 1 --limit 20 --search "" -o json
ネットワーク管理ログの照会
chaitin-cli ddr policylog softwarenetwork list --page 1 --limit 20 --search "" -o json
デバイスのアンインストール

これは変更を伴う操作です。実行前に対象デバイスの UUID を確認し、利用可能な場合はまず --dry-run を使用してください。

./bin/chaitin-cli ddr device status-action --device-id <device uuid> --operation uninstall
エンドポイントスキャン
chaitin-cli ddr device filescantask list  # 终端扫描任务列表
chaitin-cli ddr device filescantask get --task-id <task id> # 终端扫描任务结果详情
chaitin-cli ddr device filescantask instance-device-list --task-id=<task_id> --instance-id=<instance_id> # 拉取扫描设备列表
chaitin-cli ddr device filescantask instance-results-list --task-id=<task_id> --instance-id=<instance_id> # 拉取命中结果列表
chaitin-cli ddr device filescantask remove --task-id=<task_id> # 删除资产扫描任务
チャネル管理
chaitin-cli ddr system channeldefgroup list  # 获取渠道列表
外部送信制御
chaitin-cli ddr policy list # 外发管控策略列表
chaitin-cli ddr policy channel get --policy-id <policy_id> # 外发管控策略详情


chaitin-cli ddr policy channel --body='{"mode":"quick","name":"<name>","policy_group_ids":["<policy_group_id>"],"description":"222","risk_level":3,"scope":"common","expression_fields":[{"field":"channel","operator":"contains","value":["<channel_id>"]},{"field":"file_size_limit_mb","operator":"gt","value":10}],"action":"approval","action_template_id":"<action_template_id>","binding_config":{"source":"channel","include":{"device_ids":["<device_id>"]},"exclude":{}}}' # 创建外发管控策略 body 内容建议创建临时文件,避免转移问题, <name> 替换为策略名称, <policy_group_id> 替换为策略组ID, <channel_id> 替换为渠道ID, <device_id> 替换为设备ID, <action_template_id> 替换为动作模板ID
外部送信制御ポリシーを作成する body の内容例
{"mode":"quick","name":"<name>","policy_group_ids":["0f2ad6aa-d1cc-4a4e-a0b0-3bd749579868"],"description":"222","risk_level":3,"scope":"common","expression_fields":[{"field":"channel","operator":"contains","value":["6509b799-78e7-4ede-9af4-2c743897e6c6"]},{"field":"file_size_limit_mb","operator":"gt","value":10}],"action":"approval","action_template_id":"90144b18-e9d2-49ad-9c1d-cef0a4146ccc","binding_config":{"source":"channel","include":{"device_ids":["ebf62d82-f02b-4805-b6c3-31d1475b8061"]},"exclude":{}}}
ソフトウェア制御
chaitin-cli ddr softwaremanager list --page 1 --limit 50 --search "" # 软件管控-软件列表
chaitin-cli ddr softwaremanager software-hash-list --software-hash=<software-hash> --limit=10 --page=1 --search= --body='{"is_pirated":false,"use_default_query":false,"search":"","queries":[]}' # 软件管控-安装详情 <software-hash> 取 软件管控-软件列表 里的 total_view_digest 字段
動作制御ポリシーの共通規約

ポリシーの作成または更新時は、シェルのエスケープエラーを避けるため、まず JSON を一時ファイルに書き込み、次に --body-file を使用してください。有効化・無効化の操作は chaitin-cli --dry-run ddr ... -v で検証済みです。最小の body は {"operation":"activate"} です。無効化する場合は通常、activate を deactivate に置き換えます。

OpenAPI の webpost_control は CLI では webpost-control に正規化されるため、コマンドではハイフンを使用してください。

ファイル書き込み制御
chaitin-cli ddr system channeldefgroup landing-list -o json # 落盘管控源列表
chaitin-cli ddr policy landing list # 落盘管控列表
chaitin-cli ddr policy landing action --uid <policy_id> --body '{"operation":"activate"}' # 启用落盘管控策略
chaitin-cli ddr policy landing action --uid <policy_id> --body '{"operation":"deactivate"}' # 停用落盘管控策略
chaitin-cli ddr policy landing get --uid <policy_id> # 落盘管控详情
chaitin-cli ddr policy landing remove --uid <policy_id> # 删除落盘管控策略
chaitin-cli ddr policy landing --body-file /tmp/ddr-policy-landing.json # 创建落盘管控策略
ファイル書き込み制御を作成する body の内容例
{"name":"test_langding","scope":"common","expression_fields":[{"field":"channel","operator":"contains","value":["6509b799-78e7-4ede-9af4-2c743897e6c6"]}],"action":"notify","category":"landing","policy_group_ids":[null],"binding_config":{"source":"landing","include":{"device_ids":["0578ae3e-6369-4cc4-bad6-ff48f1cf6ceb"]},"exclude":{}}}
メール制御 - email
chaitin-cli ddr system channeldefgroup email-list -o json # 邮件管控源列表
chaitin-cli ddr policy email list -o json # 邮件管控策略列表
chaitin-cli ddr policy email get --uid <policy_id> -o json # 邮件管控策略详情
chaitin-cli ddr policy email action --uid <policy_id> --body '{"operation":"activate"}' # 启用邮件管控策略
chaitin-cli ddr policy email action --uid <policy_id> --body '{"operation":"deactivate"}' # 停用邮件管控策略
chaitin-cli ddr policy email remove --uid <policy_id> # 删除邮件管控策略
chaitin-cli ddr policy email --body-file /tmp/ddr-policy-email.json # 创建邮件管控策略
chaitin-cli ddr policy email entitywhitelist-list -o json # 邮件管控实体白名单列表
chaitin-cli ddr policylog email timelinelist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 邮件管控时间线
chaitin-cli ddr policylog email stafflist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 邮件管控员工列表
メール制御を作成する body の内容例
{"name":"邮件策略","description":"策略描述","scope":"global","binding_config":{"source":"email","include":{},"exclude":{}},"action":"notify","expression":"N/A","expression_relation":"all","expression_fields":[{"field":"channel","operator":"contains","value":["all_channels"]}]}
コード制御 - codecontrol
chaitin-cli ddr policy codecontrol list --page 1 --page-size 20 --search "" -o json # 代码管控策略列表
chaitin-cli ddr policy codecontrol get --policy-id <policy_id> -o json # 代码管控策略详情
chaitin-cli ddr policy codecontrol action --policy-id <policy_id> --body '{"operation":"activate"}' # 启用代码管控策略
chaitin-cli ddr policy codecontrol action --policy-id <policy_id> --body '{"operation":"deactivate"}' # 停用代码管控策略
chaitin-cli ddr policy codecontrol remove --policy-id <policy_id> # 删除代码管控策略
chaitin-cli ddr policy codecontrol create --body-file /tmp/ddr-policy-codecontrol.json # 创建代码管控策略
chaitin-cli ddr policy codecontrol update --policy-id <policy_id> --body-file /tmp/ddr-policy-codecontrol.json # 更新代码管控策略
chaitin-cli ddr policy codecontrol configwhitelist-list -o json # 代码管控配置白名单列表
chaitin-cli ddr policy codecontrol controlwhitelist-list -o json # 代码管控管控白名单列表
chaitin-cli ddr policy codecontrol entitywhitelist-list -o json # 代码管控实体白名单列表
chaitin-cli ddr policylog code timelinelist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 代码管控时间线
chaitin-cli ddr policylog code stafflist --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' -o json # 代码管控员工列表
chaitin-cli ddr policylog code download --body '{"time_range":{"begin":"2023-11-14 10:55:38","end":"2023-11-14 11:55:38"},"search":"","queries":[]}' # 代码管控导出
コード制御を作成する body の内容例
{"name":"代码管控策略","description":"策略描述","scope":"global","period_category":"permanent","period_options":{"period_value":["2023-01-01 00:00:00","2023-01-01 00:00:00"]},"binding_config":{"include":{"device_ids":[],"device_tag_ids":[],"staff_ids":[],"staff_tag_ids":[],"dept_ids":[]},"exclude":{},"source":"code_control"},"control_action":{"category":"upload","expression_fields":{"git":{"left":"repository_url","operator":"contains","value":["github.com/example"]},"svn":{"left":"repository_url","operator":"contains","value":["svn.example.com"]}}},"action":"notify","action_template_id":"<action_template_id>"}
クリップボード制御 - clipboard
chaitin-cli ddr policy clipboard --body-file /tmp/ddr-policy-clipboard.json # 创建剪贴板管控策略
chaitin-cli ddr policylog clipboard list --page 1 --limit 20 --search "" --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板管控日志列表
chaitin-cli ddr policylog clipboard timelinelist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板管控时间线
chaitin-cli ddr policylog clipboard stafflist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板管控员工列表
chaitin-cli ddr clipboardbehavior timelinelist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板行为时间线
chaitin-cli ddr clipboardbehavior stafflist --body '{"time_range":{"begin":"2024-09-23T06:36:00Z","end":"2024-11-22T06:36:59Z"},"search":"","queries":[]}' -o json # 剪贴板行为员工列表
クリップボード制御を作成する body の内容例
{"name":"剪贴板策略","period_category":"permanent","scope":"common","family":"Windows","control_category":"copy","expression_fields":[{"field":"source_process","operator":"contains","value":["example.exe"]}],"action":"notify","binding_config":{"source":"clipboard","include":{"device_ids":["<device_id>"]},"exclude":{}}}
Web 制御 - webpost_control
chaitin-cli ddr policy webpost-control list --page 1 --limit 20 --search "" -o json # 网页管控策略列表
chaitin-cli ddr policy webpost-control get --policy-id <policy_id> -o json # 网页管控策略详情
chaitin-cli ddr policy webpost-control action --policy-id <policy_id> --body '{"operation":"activate"}' # 启用网页管控策略
chaitin-cli ddr policy webpost-control action --policy-id <policy_id> --body '{"operation":"deactivate"}' # 停用网页管控策略
chaitin-cli ddr policy webpost-control remove --policy-id <policy_id> # 删除网页管控策略
chaitin-cli ddr policy webpost-control create --body-file /tmp/ddr-policy-webpost-control.json # 创建网页管控策略
chaitin-cli ddr policy webpost-control update --policy-id <policy_id> --body-file /tmp/ddr-policy-webpost-control.json # 更新网页管控策略
chaitin-cli ddr policy webpost-control whitelist-list -o json # 网页管控管控白名单列表
chaitin-cli ddr policy webpost-control entitywhitelist-list -o json # 网页管控实体白名单列表
Web 制御を作成する body の内容例
{"name":"网页管控策略","description":"策略描述","scope":"global","period_category":"permanent","period_options":{"period_hours_value":[{"begin":"00:00","end":"23:59","week":1},{"begin":"00:00","end":"23:59","week":2},{"begin":"00:00","end":"23:59","week":3},{"begin":"00:00","end":"23:59","week":4},{"begin":"00:00","end":"23:59","week":5},{"begin":"00:00","end":"23:59","week":6},{"begin":"00:00","end":"23:59","week":7}]},"binding_config":{"include":{"device_ids":[],"device_tag_ids":[],"staff_ids":[],"staff_tag_ids":[],"dept_ids":[]},"exclude":{},"source":"webpost_control"},"control_action":{"expression_fields":[{"left":"content","operator":"contains","value":["secret"]}]},"action":"notify","action_template_id":"<action_template_id>","checked_urls_options":{"left":"url","operator":"contains","value":["example.com"]},"detect_position":"form_internal"}

コメント