홈 / n8n 워크플로 템플릿 / n8n에서 Icypeas를 사용하여 단일 도메인 또는 회사 보안 스캔 수행

n8n에서 Icypeas를 사용하여 단일 도메인 또는 회사 보안 스캔 수행

Perform a domain search (single) with Icypeas

이 워크플로는 API를 통해 Icypeas를 사용하여 도메인 또는 회사 보안 스캔을 자동화하며, 수동 실행과 유효한 자격 증명이 필요합니다.

수동 실행노드 3개개발자 도구API 통합보안수동 트리거

워크플로 소개

워크플로 분석: 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 웹 인터페이스에서 결과를 볼 수 있는 링크.

이들은 기능적이지는 않지만 신규 사용자 온보딩 및 올바른 설정 보장에 중요합니다.

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 호출을 제거합니다.
  • 향상된 정확성: 요청 서명 시 사람의 실수를 줄입니다.
  • 통합 준비: 나중에 스프레드시트, 웹훅 또는 양식에서 입력을 수락하도록 확장할 수 있습니다.
  • 확장 가능한 기반: 이 단일 스캔 버전은 배치 처리 워크플로로 발전할 수 있습니다.
  • 교육적 가치: 시간 제한 서명 및 헤더 기반 인증과 같은 안전한 API 패턴 모범 사례를 시연합니다.

단계별 워크플로 로직

  1. 트리거 실행

    • 사용자가 n8n 편집기에서 "워크플로 실행"을 클릭합니다.
    • 수동 트리거 노드가 활성화되고 다음 노드로 제어를 전달합니다.
  2. 인증 및 서명 생성

    • 코드 노드가 JavaScript를 실행합니다.
      • 상수 정의: 기본 URL, API 경로, HTTP 메서드.
      • 사용자 제공 API_KEY, API_SECRET, USER_ID 로드.
      • 현재 ISO 타임스탬프 생성.
      • 페이로드 문자열 구성: 소문자로 ${METHOD}${PATH}${TIMESTAMP}.
      • crypto.createHmac()을 사용하여 API_SECRET으로 SHA1 해시 생성.
      • 결과 signature를 다른 값과 함께 $json.api 아래에 저장.
  3. 스캔 요청 준비 및 전송

    • 데이터가 HTTP 요청 노드로 흐릅니다.
      • URL은 https://app.icypeas.com/api/domain-search로 동적으로 설정됩니다.
      • 메서드는 POST입니다.
      • 헤더 X-ROCK-TIMESTAMP는 생성된 타임스탬프로 채워집니다.
      • 인증 헤더는 표현식 {{ $json.api.key }}:{{ $json.api.signature }}를 사용하여 빌드됩니다.
      • 본문에는 하나의 매개변수(domainOrCompany, 예: google)가 포함됩니다.
  4. API 호출 실행

    • n8n은 인증된 POST 요청을 Icypeas로 보냅니다.
    • Icypeas는 서명과 타임스탬프를 확인합니다.
    • 유효한 경우 새 도메인 검색 작업을 큐에 넣습니다.
  5. 결과 보기

    • n8n에서 직접 출력을 캡처하지 않습니다.
    • 사용자는 스캔 결과를 보려면 Icypeas Business Office에 로그인하도록 안내됩니다.
  6. 선택적 후속 조치

    • 향후 개선 사항에는 결과 폴링, 결과 구문 분석 또는 보고서 내보내기가 포함될 수 있습니다.

요약

이 워크플로는 n8n이 암호화 인증을 요구하는 타사 API와의 안전한 상호 작용을 간소화하는 방법을 보여줍니다. 수동 시작, 동적 코드 실행 및 HTTP 요청을 결합하여 Icypeas를 사용하여 효율적이고 감사 가능하며 반복 가능한 도메인 정찰을 가능하게 합니다. 특히 유효한 자격 증명을 삽입하고 crypto 모듈을 활성화하는 등 올바른 설정을 통해 OSINT 도구 모음의 귀중한 자산이 됩니다.

사용 방법: JSON을 다운로드한 뒤 n8n에서 “파일에서 가져오기”를 선택하세요.