
Chaos DB APIと通信するためのGoクライアント。
go install -v github.com/projectdiscovery/chaos-client/cmd/chaos@latest
chaos -h
これによりツールのヘルプが表示されます。以下は、ツールがサポートするすべてのスイッチです。
-key string projectdiscovery cloud (pdcp) api key
-d string domain to search for subdomains
-count show statistics for the specified domain
-silent make the output silent
-o string file to write output to (optional)
-dL string file containing domains to search for subdomains (optional)
-json print output as json
-version show version of chaos
-v, -verbose verbose mode
-up, -update update chaos to latest version
-duc, -disable-update-check disable automatic chaos update check
API キーを環境変数として bash プロファイルに設定することもできます。
export PDCP_API_KEY=xxxxx
PDCP_API_KEY の取得方法API キーは、cloud.projectdiscovery.io でサインアップまたはログインして取得できます。
ドメインのサブドメインを取得するには、次のコマンドを使用します。
chaos -d uber.com -silent
restaurants.uber.com
testcdn.uber.com
approvalservice.uber.com
zoom-logs.uber.com
eastwood.uber.com
meh.uber.com
webview.uber.com
kiosk-api.uber.com
utmbeta-staging.uber.com
getmatched-staging.uber.com
logs.uber.com
dca1.cfe.uber.com
cn-staging.uber.com
frontends-primary.uber.com
eng.uber.com
guest.uber.com
kiosk-home-staging.uber.com
Chaos は、Options 構造体をインスタンス化し、CLI で指定するのと同じオプションを設定することで、サブドメイン列挙のライブラリとして利用できます。
package main
import (
"os"
"github.com/projectdiscovery/chaos-client/internal/runner"
"github.com/projectdiscovery/chaos-client/pkg/chaos"
)
func main() {
var results []chaos.Result
opts := &runner.Options{
Domain: "projectdiscovery.io",
APIKey: os.Getenv("PDCP_API_KEY"),
OnResult: func(result interface{}) {
if val, ok := result.(chaos.Result); !ok {
results = append(results, val)
}
},
}
runner.RunEnumeration(opts)
}
💡 注記
プログラムを実行するには、Chaos API キーを PDCP_API_KEY 環境変数に設定する必要があります。
私たちの Discord コミュニティ への参加を歓迎します。また、Twitter でフォローしていただくと、chaos プロジェクトに関するすべての情報を入手できます。
皆様の貢献と、コミュニティを活気に満ちた状態に保っていただき、ありがとうございます。❤️