Fingerprinting - mrhenrike/MikrotikAPI-BF GitHub Wiki
Fingerprinting
Language: English · Português (pt-BR)
Non-destructive device fingerprinting before any attack — understand what you're targeting.
Usage
# Fingerprint only (no attack)
python mikrotikapi-bf.py -t 192.168.88.1 --fingerprint
# Fingerprint + CVE lookup (requires NVD API key in config.json)
python mikrotikapi-bf.py -t 192.168.88.1 --fingerprint --nvd
# Fingerprint as part of an attack (auto-prefill wordlist with discovered serial)
python mikrotikapi-bf.py -t 192.168.88.1 -d combos.txt --fingerprint --progress
What Is Detected
| Field | Source | Example |
|---|---|---|
| RouterOS version | API banner, HTTP header, Winbox | 7.12.1 |
| Hardware model | SNMP sysDescr, API | RouterBOARD 450Gx4 |
| Board serial | API /system/routerboard, HTTP EWS |
HF507ABCDE12 |
| Architecture | Model string parsing | MIPS, ARM, x86 |
| Open ports | TCP connect scan | 22, 23, 80, 8291, 8728 |
| Enabled services | RouterOS /ip/service |
api, ftp, ssh, telnet, www |
| Risk score | Firmware age + CVE count | 8.2 / 10 (High) |
Fingerprint Sources
1. RouterOS API Banner
The first response from port 8728 includes the RouterOS version in plaintext before any authentication.
2. Winbox Port (8291)
Winbox sends a device description packet before authentication, including board name and RouterOS version.
3. HTTP / EWS Headers
Port 80/443 returns Server: Mikrotik HttpProxy and the board name in the HTML.
4. SNMP sysDescr
sysDescr: RouterOS RB450Gx4 CHR
CVE Lookup
When --nvd is specified (or nvd.api_key is set in config.json):
- Detected RouterOS version is matched against NVD CPE database:
cpe:2.3:o:mikrotik:routeros:7.12.1:* - All matching CVEs are retrieved with CVSS score and description
- Known RouterOS CVEs in local
xpl/cve_db.pyare always checked (offline)
Example output:
[FINGERPRINT] 192.168.88.1
RouterOS : 7.12.1
Board : RouterBOARD 450Gx4
Serial : HF507ABCDE12
Arch : MIPS
Open ports: 22/tcp, 80/tcp, 8291/tcp, 8728/tcp
Services : api, www, ssh, winbox
Risk score: 7.8 (High)
[CVE]
CVE-2023-30799 CVSS 9.1 Privilege escalation via /nova endpoint
CVE-2022-45315 CVSS 8.8 Buffer overflow in Winbox handler
See also: Features · Usage Examples · API Reference