このワークフローについて
Icypeas を使用したワークフロー分析:ドメイン検索(単一)の実行
このN8nワークフローテンプレートは、強力なオープンソースインテリジェンス(OSINT)ツールであるIcypeasを使用して、単一のドメインまたは企業偵察スキャンを実行するプロセスを自動化するように設計されています。Icypeasは、ターゲットのドメインまたは組織に関連するデジタルフットプリント、サブドメイン、関連するメールアドレス、およびその他の公開されている情報を明らかにするのに役立ちます。このワークフローは、認証の処理、セキュアな署名の生成、ドメインスキャンのトリガーをすべてn8n自動化プラットフォーム内で行うことで、Icypeas APIとシームレスに統合されます。
ワークフローの機能
このワークフローの主な機能は、Icypeas APIを介してドメインまたは企業スキャンを開始することです。手動トリガーから開始し、API認証情報(キー、シークレット、ユーザーID)を使用してユーザーを認証し、セキュリティのために暗号化された署名付きリクエストヘッダーを生成し、指定されたドメインまたは企業名をスキャンするためにIcypeas APIエンドポイントにPOSTリクエストを送信します。実行されると、スキャンはIcypeasプラットフォームで実行され、結果はIcypeasダッシュボードで直接表示できます。
この自動化により、手動でのAPI呼び出しの必要がなくなり、ドメイン調査のセキュアで再現可能な実行が保証されます。これは、サイバーセキュリティ専門家、ペネトレーションテスター、脅威ハンター、またはIT管理者が表面レベルの露出評価を実施するのに理想的です。
主な機能と能力
- セキュアな認証:
cryptoモジュールを使用してHMAC-SHA1署名生成を実装し、APIリクエストをセキュアに署名します。 - 動的な認証情報処理: Icypeasのセキュリティ要件を満たすために、タイムスタンプ付き署名に基づいた実行時に生成されるヘッダーを使用します。
- 手動実行制御: 手動でトリガーされ、ユーザーはオンデマンドでスキャンを実行できます。
- カスタマイズ可能なターゲット入力: HTTPリクエストノードでスキャンするドメインまたは企業を直接定義できます。
- セルフホスト互換性: セルフホスト型n8nインスタンスで必要な
cryptoモジュールを有効にするためのガイダンスが含まれています。 - スティッキーノートによる明確なドキュメント: 埋め込まれた指示ノートが、セットアップ、構成、および使用方法をユーザーにガイドします。
メインノードとその目的
1. 「ワークフローを実行」をクリックしたとき (手動トリガーノード)
- タイプ:
n8n-nodes-base.manualTrigger - 目的: ワークフローの開始点として機能します。ユーザーがn8n UIで「ワークフローを実行」ボタンをクリックすると、実行が開始されます。
- 機能: スケジュールや外部トリガーなしで、ドメインスキャンのテストまたは手動起動を簡単に行うことができます。
2. スティッキーノート (ドキュメントノード)
- タイプ: 複数の
n8n-nodes-base.stickyNoteノード - 目的: キャンバス内に埋め込まれたドキュメントパネルとして機能します。
- 内容:
- ワークフローの目的の概要。
- コードノードにAPI認証情報を挿入するための指示。
- セルフホスト環境で
cryptoモジュールを有効にする手順。 - HTTPリクエストノードの構成に関するガイダンス(ヘッダー、ボディパラメータ)。
- Icypeas Webインターフェースで結果を表示するためのリンク。
これらは機能的ではありませんが、新規ユーザーのオンボーディングと正しいセットアップを保証するために不可欠です。
3. Icypeasアカウントに認証する (コードノード)
- タイプ:
n8n-nodes-base.code - 言語: JavaScript (
jsCode) - 目的: 以下のすべてに必要な認証データを生成します。
- 現在のタイムスタンプ(ISO形式)
- 完全なAPI URL
- メソッド、パス、APIシークレット、タイムスタンプから派生したHMAC-SHA1署名
- 設定される主要変数:
$input.first().json.api = { timestamp, secret: API_SECRET, key: API_KEY, userId: USER_ID, url: "https://app.icypeas.com/api/domain-search", signature: generatedSignature } - セキュリティ上の注意: Node.jsの
cryptoモジュールに依存しており、セルフホスト型セットアップで有効にする必要があります。
このノードは、Icypeasとのセキュアな通信に必要なコンテキストデータを準備します。
4. ドメインスキャンを実行(単一) (HTTPリクエストノード)
- タイプ:
n8n-nodes-base.httpRequest - メソッド: POST
- URL: 動的に
={{ $json.api.url }}に設定されます。 - 送信されるヘッダー:
X-ROCK-TIMESTAMP:={{ $json.api.timestamp }}- Authorization: 認証情報として
{{ $json.api.key }}:{{ $json.api.signature }}として構築されます。
- ボディパラメータ:
domainOrCompany: デフォルト値は"google"(ユーザーが変更可能)に設定されます。
- 認証タイプ: ヘッダーベース(
httpHeaderAuth)、"Header Auth account"という名前の保存された認証情報を使用します。 - 目的: Icypeasサーバーでドメインスキャンを開始するために、実際のAPI呼び出しを実行します。
結果はn8nに直接返されず、Icypeasによって非同期に処理されます。
ユースケースとメリット
✅ 最適な用途:
- サイバーセキュリティ評価: 組織の公開攻撃サーフェスを迅速に評価します。
- ペネトレーションテスト準備: エンゲージメント前にサブドメインと連絡先情報を収集します。
- ブランド監視: 企業ドメインまたは子会社の不正使用を検出します。
- バグバウンティ調査: 複数のターゲットにわたる初期偵察ステップを自動化します。
- ITセキュリティ監査: 企業に関連付けられた未知の資産を定期的にチェックします。
🌟 メリット:
- 自動化効率: 反復的な手動API呼び出しを排除します。
- 精度向上: リクエスト署名における人的エラーを削減します。
- 統合準備完了: 後でスプレッドシート、Webhook、またはフォームからの入力を受け入れるように拡張できます。
- スケーラブルな基盤: この単一スキャンバージョンは、バッチ処理ワークフローに進化できます。
- 教育的価値: 時間制限付き署名やヘッダーベースの認証などのセキュアなAPIパターン実践を実証します。
ステップバイステップのワークフローロジック
-
実行のトリガー
- ユーザーがn8nエディタで「ワークフローを実行」をクリックします。
- 手動トリガーノードがアクティブになり、次のノードに制御を渡します。
-
認証と署名生成
- コードノードがJavaScriptを実行します。
- 定数(ベースURL、APIパス、HTTPメソッド)を定義します。
- ユーザー提供の
API_KEY、API_SECRET、USER_IDをロードします。 - 現在のISOタイムスタンプを生成します。
- ペイロード文字列
${METHOD}${PATH}${TIMESTAMP}を小文字で構築します。 crypto.createHmac()を使用して、API_SECRETを使用してSHA1ハッシュを生成します。- 結果の
signatureを他の値とともに$json.apiの下に保存します。
- コードノードがJavaScriptを実行します。
-
スキャンリクエストの準備と送信
- データがHTTPリクエストノードにフローします。
- URLは動的に
https://app.icypeas.com/api/domain-searchに設定されます。 - メソッドはPOSTです。
- ヘッダー
X-ROCK-TIMESTAMPは生成されたタイムスタンプで入力されます。 - Authorizationヘッダーは、式
{{ $json.api.key }}:{{ $json.api.signature }}を使用して構築されます。 - ボディには1つのパラメータ
domainOrCompany(例:google)が含まれます。
- URLは動的に
- データがHTTPリクエストノードにフローします。
-
API呼び出しの実行
- n8nは認証されたPOSTリクエストをIcypeasに送信します。
- Icypeasは署名とタイムスタンプを検証します。
- 有効な場合、新しいドメイン検索タスクをキューに入れます。
-
結果の表示
- n8nでは直接出力はキャプチャされません。
- ユーザーはスキャン結果を表示するためにIcypeas Business Officeにログインするように指示されます。
-
オプションのフォローアップ
- 将来の拡張機能には、結果のポーリング、検出結果の解析、レポートのエクスポートなどが含まれる可能性があります。
まとめ
このワークフローは、n8nが暗号化認証を必要とするサードパーティAPIとのセキュアなやり取りをどのように合理化できるかを示す例です。手動開始、動的なコード実行、HTTPリクエストを組み合わせることで、Icypeasを使用した効率的で監査可能で再現可能なドメイン偵察を可能にします。特に有効な認証情報を挿入し、cryptoモジュールを有効にするなどの適切なセットアップにより、あらゆるOSINTツールキットにとって貴重な資産となります。
使い方:JSON をダウンロードし、n8n で「ファイルからインポート」を選択します。