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
YARA-L Detection Query
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
} Chronicle YARA-L rule detecting Hikvision CVE-2017-7921 exploitation by matching known authentication bypass URL patterns in HTTP network events.
Data Sources
Required Tables
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.
- 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
- 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
- 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
- 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.