Target Intelligence

CVE를 제공해 주시면 현재 인터넷상에 존재하는 모든 취약한 호스트를 알려드립니다.

VulnCheck Target Intelligence는 취약한 소프트웨어를 실행 중인 것으로 확인된 인터넷 공개 호스트의 지속적으로 업데이트되는 인덱스입니다. 잠재적으로 취약한 호스트를 식별하는 기존 인터넷 스캐너와 달리, Target Intelligence는 핑거프린팅 및 버전 탐지 기술을 적용하여 높은 신뢰도로 취약한 호스트를 식별한 후 해당 결과를 CVE에 직접 매핑합니다.

이를 통해 Target Intelligence는 1차 트리아지 도구로 활용될 수 있습니다. 공격자가 악용하기 전에 "현재 이 CVE의 실제 공격 대상 목록에 포함된 인터넷상의 호스트는 무엇인가?" 라는 질문에 답할 수 있습니다.

Base URL

https://api.vulncheck.com/v3/index/target-intel

인증

모든 요청에는 Authorization 헤더에 Bearer 토큰이 필요합니다.

Authorization: Bearer <your_api_token>

Query Parameters

매개변수는 조합하여 사용할 수 있습니다. 모든 매개변수는 선택 사항이지만, 의미 있는 결과를 얻으려면 최소 하나 이상 제공하는 것이 좋습니다.

ParameterTypeDescription
cidrstring서브넷 조회를 위한 CIDR 범위입니다. 단일 호스트의 경우 /32를 사용합니다 (예: 203.0.113.42/32)
hostnamestring스캔 시점의 DNS 조회를 통해 얻은 호스트명
cvestring확인된 모든 취약 호스트를 조회하기 위한 CVE ID (예: CVE-2024-21887)
vendorstring소프트웨어 공급업체 이름
productstring소프트웨어 제품 이름
versionstring소프트웨어 버전 문자열
cpestring전체 CPE 문자열
asnstringAutonomous System Number (예: AS15169)
countrystring국가 이름 (예: United States, Germany)
country_codestringISO 3166-1 alpha-2 국가 코드 (예: US, DE)
protocolstring전송 프로토콜 (일반적으로 tcp)
portintegerTCP 포트 번호
contains_cvebooleantrue인 경우, 핑거프린트된 서비스와 연관된 CVE가 존재하는 호스트만 반환합니다
classificationsstring필터링할 분류 값의 쉼표로 구분된 목록입니다. 유효한 값: c2, scanner, proxy, attack-infrastructure, honeypot, mcp, cdn, sector, canary-attacker
limitinteger페이지당 반환할 최대 결과 수

vendor, product, version에 대한 참고: 이 매개변수들은 어떤 조합으로도 사용할 수 있습니다. vendor만 또는 version만으로도 조회할 수 있지만 결과 범위가 매우 넓어질 수 있습니다. 두 개 이상을 조합하면 보다 구체적인 결과를 얻을 수 있습니다.


Response Schema

각 결과는 단일 호스트-포트-서비스 조합을 나타냅니다. 결과는 JSON 배열로 반환됩니다.

Top-Level Fields

FieldTypeAlways PresentDescription
ipstringYes관찰된 호스트의 IPv4 주소
hostnamestringYes스캔 시점의 DNS 조회로 얻은 호스트명 (비어 있을 수 있음)
portintegerYes서비스가 관찰된 TCP 포트
timestampstringYes관찰이 수행된 시각의 ISO 8601 타임스탬프
date_addedstringYes레코드가 인덱스에 추가된 시각의 ISO 8601 타임스탬프
protocolstringYes전송 프로토콜 (일반적으로 tcp)
cpearrayYes핑거프린팅을 통해 도출된 CPE 문자열 배열
cvearray|nullConditional해당 호스트의 핑거프린트와 연관된 CVE ID 배열. CVE 일치 항목이 없으면 null
vendorarrayYes핑거프린팅을 통해 도출된 공급업체 이름 배열
productarrayYes핑거프린팅을 통해 도출된 제품 이름 배열
versionarrayYes핑거프린팅을 통해 도출된 버전 문자열 배열
fingerprintsarrayYes핑거프린트별 상세 객체 — 아래 참조
contains_cvebooleanYes핑거프린트된 서비스에 연관된 CVE가 있으면 true
asnstringConditionalAutonomous System Number (예: AS64500). 사용할 수 없는 경우 생략
as_namestringConditionalAutonomous System 이름. 사용할 수 없는 경우 생략
as_domainstringConditionalAutonomous System 도메인. 사용할 수 없는 경우 생략
countrystringConditional국가명. 사용할 수 없는 경우 생략
country_codestringConditionalISO 3166-1 alpha-2 국가 코드. 사용할 수 없는 경우 생략
classificationsarrayConditional이 호스트에 부여된 분류 태그 (예: c2, honeypot, proxy). 해당하는 태그가 없으면 생략
metadataobjectConditional추가 메타데이터. 사용할 수 없는 경우 생략

fingerprints 배열

각 요소는 해당 호스트-포트에 대한 단일 핑거프린트 일치를 설명합니다.

FieldTypeDescription
cpestring이 핑거프린트의 CPE 문자열
vendorstring공급업체 이름
productstring제품 이름
versionstring제품 버전
Additional fieldsstring가변적입니다. 탐지된 서비스 배너 및 기타 보강 정보가 포함될 수 있으며, 이는 핑거프린트가 수집한 정보에 따라 달라집니다

제품 중심의 핵심 API 질문 및 필터

질문API 호출 예시(쿼리 매개변수 사용)
특정 CVE에 취약한 인터넷 공개 시스템은 무엇인가요?https://api.vulncheck.com/v3/index/target-intel?cve=CVE-2021-36260
특정 공급업체 및 제품을 사용하는 인터넷 공개 시스템은 무엇인가요?https://api.vulncheck.com/v3/index/target-intel?vendor=ivanti&product=connect+secure
특정 공급업체, 제품 및 특정 버전을 사용하는 인터넷 공개 시스템은 무엇인가요?https://api.vulncheck.com/v3/index/target-intel?vendor=ivanti&product=connect+secure&version=22.7.2.5367
특정 CPE 문자열과 일치하는 인터넷 공개 시스템은 무엇인가요?https://api.vulncheck.com/v3/index/target-intel?cpe=cpe:2.3:o:qnap:qts:-:*:*:*:*:*:*:*
원본 국가로 필터링하려면 어떻게 하나요?https://api.vulncheck.com/v3/index/target-intel?country_code=US
ASN으로 필터링하려면 어떻게 하나요?https://api.vulncheck.com/v3/index/target-intel?asn=AS7018
포트로 필터링하려면 어떻게 하나요?https://api.vulncheck.com/v3/index/target-intel?port=443
IP 범위(CIDR 표기법)로 필터링하려면 어떻게 하나요?https://api.vulncheck.com/v3/index/target-intel?cidr=99.97.87.190/32

분류 API 질문

질문API 호출 예시(쿼리 매개변수 사용)
분류는 유형 수준 및 유형:제품 수준 필터링을 모두 지원합니다Use classifications=<type> for broad filtering or classifications=<type>:<product> for a specific framework (e.g., classifications=c2:cobalt-strike).
인터넷상의 모든 C2는 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=c2
모든 Cobalt Strike C2 서버는 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=cobalt-strike
인터넷상의 모든 허니팟은 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=honeypot
인터넷상의 모든 Canary 공격자는 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=canary-attacker
인터넷상의 모든 프록시는 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=proxy
식별된 모든 공격 인프라 자산은 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=attack-infrastructure
알려진 모든 스캐너는 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=scanner
정부, 의료, 교육 및 에너지 분야의 자산은 어디에 있나요?https://api.vulncheck.com/v3/index/target-intel?classifications=sector

자산 중심 쿼리

질문API 호출 예시(쿼리 매개변수 사용)
IPv4 a.b.c.d에 대한 정보가 있나요?https://api.vulncheck.com/v3/index/target-intel?cidr=99.97.87.190
IPv6 y:y:y:y:y:y:x.x.x.x에 대한 정보가 있나요?https://api.vulncheck.com/v3/index/target-intel?cidr=2001:4860:4860::8888 (supported, no ipv6 data yet)
호스트 이름에 대한 정보가 있나요?https://api.vulncheck.com/v3/index/target-intel?hostname=test.com

Example Requests

CIDR 표기법을 사용하여 단일 IP 조회

curl -H "Authorization: Bearer <token>" \
  "https://api.vulncheck.com/v3/index/target-intel?cidr=203.0.113.42/32"

특정 CVE에 취약한 것으로 확인된 모든 호스트 조회

curl -H "Authorization: Bearer <token>" \
  "https://api.vulncheck.com/v3/index/target-intel?cve=CVE-2024-21887"

특정 제품을 실행 중인 모든 호스트 조회

curl -H "Authorization: Bearer <token>" \
  "https://api.vulncheck.com/v3/index/target-intel?vendor=ivanti&product=connect+secure"

국가 코드로 CVE 결과 필터링

curl -H "Authorization: Bearer <token>" \
  "https://api.vulncheck.com/v3/index/target-intel?cve=CVE-2024-21887&country_code=US"

Example Response

{
  "data": [
    {
      "ip": "203.0.113.42",
      "hostname": "vpn.example.com",
      "port": 443,
      "timestamp": "2025-01-15T08:42:11Z",
      "date_added": "2025-01-15T08:42:11Z",
      "protocol": "tcp",
      "cpe": ["cpe:2.3:a:ivanti:connect_secure:22.3.0:*:*:*:*:*:*:*"],
      "cve": ["CVE-2024-21887", "CVE-2023-46805"],
      "vendor": ["Ivanti"],
      "product": ["Connect Secure"],
      "version": ["22.3.0"],
      "fingerprints": [
        {
          "cpe": "cpe:2.3:a:ivanti:connect_secure:22.3.0:*:*:*:*:*:*:*",
          "vendor": "Ivanti",
          "product": "Connect Secure",
          "version": "22.3.0"
        }
      ],
      "contains_cve": true,
      "asn": "AS64500",
      "as_name": "Example ISP",
      "as_domain": "example.com",
      "country": "United States",
      "country_code": "US",
      "classifications": ["c2:cobalt-strike"]
    }
  ]
}

핑거프린트된 서비스와 연관된 CVE가 없는 경우 cve 필드는 null이 되고(빈 배열이 아님) contains_cvefalse가 됩니다.

{
  "ip": "198.51.100.7",
  "hostname": "",
  "port": 80,
  "timestamp": "2025-01-15T09:10:00Z",
  "date_added": "2025-01-15T09:10:00Z",
  "protocol": "tcp",
  "cpe": ["cpe:2.3:a:apache:tomcat:10.1.0:*:*:*:*:*:*:*"],
  "cve": null,
  "vendor": ["Apache"],
  "product": ["Tomcat"],
  "version": ["10.1.0"],
  "fingerprints": [
    {
      "cpe": "cpe:2.3:a:apache:tomcat:10.1.0:*:*:*:*:*:*:*",
      "vendor": "Apache",
      "product": "Tomcat",
      "version": "10.1.0"
    }
  ],
  "contains_cve": false,
  "asn": "AS64501",
  "country": "Germany",
  "country_code": "DE"
}

Data Freshness

Target Intelligence는 스캔 데이터의 롤링 윈도우를 유지합니다. 새로운 스캔 결과가 수집됨에 따라 인덱스는 지속적으로 업데이트됩니다. 오래된 관찰 데이터는 데이터셋의 최신성과 운영상의 유용성을 유지하기 위해 순차적으로 만료됩니다.

각 레코드의 고유 키는 IP + port + fingerprint/service information 의 조합입니다. 호스트가 다시 스캔되면 해당 레코드는 최신 관찰 결과로 업데이트됩니다.


What This API Is and Is Not

Target Intelligence가 제공하는 기능:

  • 알려진 취약점을 가진 인터넷 공개 호스트에 대한 확인된 공격 대상 큐
  • CVE 공개 시점의 노출 현황을 파악하기 위한 사전 트리아지 도구
  • 버전 수준의 핑거프린팅을 통해 수집된 높은 신뢰도의 CVE 매핑 호스트 데이터

Target Intelligence가 제공하지 않는 기능:

  • Attack Surface Management (ASM) 도구 (시드 도메인을 입력하여 자산을 열거하지 않음)
  • 특정 조직에 속한 모든 인터넷 공개 자산의 완전한 인벤토리
  • 내부 자산 탐지의 대체 수단

조직과 연관된 호스트를 조회하려면 ASN, CIDR 범위 또는 알려진 IP 목록을 사용하여 쿼리하십시오.