CVE-2017-7921 Google Chronicle · YARA-L

Detect Hikvision Improper Authentication Exploitation (CVE-2017-7921) in Google Chronicle

Detects exploitation attempts targeting CVE-2017-7921, an improper authentication vulnerability (CWE-287) in Hikvision IP cameras and multiple products. This vulnerability allows unauthenticated attackers to bypass authentication and gain unauthorized access to camera streams, configurations, and credentials by manipulating URL parameters. Listed on CISA KEV, indicating active exploitation in the wild. Attackers commonly use this to gain persistent access to surveillance infrastructure, pivot within networks, or exfiltrate sensitive footage.

MITRE ATT&CK

Tactic
Initial Access Persistence Credential Access Collection

YARA-L Detection Query

Google Chronicle (YARA-L)
yaral
rule hikvision_cve_2017_7921_auth_bypass {
  meta:
    author = "df00tech Detection Platform"
    description = "Detects CVE-2017-7921 Hikvision improper authentication exploitation attempts"
    severity = "CRITICAL"
    priority = "HIGH"
    reference = "https://nvd.nist.gov/vuln/detail/CVE-2017-7921"

  events:
    $e.metadata.event_type = "NETWORK_HTTP"
    $e.network.http.request_url = /\/(onvif|ISAPI|cgi-bin|SDK|snapshot)\//
    (
      $e.network.http.request_url = /[?&]auth=/ or
      $e.network.http.request_url = /ismerge=1/ or
      $e.network.http.request_url = /configurationFile/ or
      $e.network.http.request_url = /\/Security\/users/ or
      $e.network.http.request_url = /userCheck/
    )
    $e.principal.ip = $src_ip
    $e.target.ip = $dst_ip

  match:
    $src_ip, $dst_ip over 5m

  outcome:
    $risk_score = max(
      if($e.network.http.request_url = /auth=YWRtaW4/, 90, 0) +
      if($e.network.http.request_url = /configurationFile/, 85, 0) +
      if($e.network.http.request_url = /ismerge=1/, 80, 0)
    )
    $request_count = count($e.metadata.id)

  condition:
    $e
}
critical severity high confidence

Chronicle YARA-L rule detecting Hikvision CVE-2017-7921 exploitation by matching known authentication bypass URL patterns in HTTP network events.

Data Sources

Network ProxyHTTP LogsFirewallCloud IDS

Required Tables

network_http

False Positives & Tuning

  • Authorized ONVIF clients performing device discovery on internal network segments
  • Legitimate Hikvision management applications accessing camera ISAPI endpoints
  • Security scanning tools operating under approved assessment schedules

Other platforms for CVE-2017-7921


Testing Methodology

Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1Hikvision Auth Bypass via URL Parameter

    Expected signal: HTTP GET request to /ISAPI/Security/users with auth= query parameter visible in proxy/firewall logs; HTTP 200 response body containing XML user data if device is vulnerable

  2. Test 2Hikvision Configuration File Exfiltration

    Expected signal: HTTP GET request to /System/configurationFile with auth= parameter in proxy logs; if vulnerable, a binary configuration file download (often large, >100KB) in response

  3. Test 3Hikvision Default Credential Base64 Bypass

    Expected signal: Multiple HTTP GET requests to Hikvision ISAPI endpoints across one or more camera IPs with identical base64 auth parameter; sequential probing pattern visible in proxy logs

  4. Test 4RTSP Stream Access Post-Exploitation

    Expected signal: RTSP connection attempt to port 554 on camera IP with credentials in the URL; network logs show TCP session establishment on port 554 from non-standard client

Unlock Pro Content

Get the full detection package for CVE-2017-7921 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections