hacktricks/pentesting-web/uuid-insecurities.md

6.4 KiB

UUID Onsekerhede

Leer AWS hak vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun:

Basiese Inligting

Universally Unique Identifiers (UUIDs) is 128-bits getalle wat gebruik word om inligting uniek te identifiseer in rekenaarsisteme. UUIDs is noodsaaklik in toepassings waar unieke identifiseerders nodig is sonder sentrale koördinasie. Hulle word algemeen gebruik as databasis sleutels en kan na verskeie elemente soos dokumente en sessies verwys.

UUIDs is ontwerp om uniek en moeilik om te raai te wees. Hulle is gestruktureer in 'n spesifieke formaat, verdeel in vyf groepe wat voorgestel word as 32 heksadesimale syfers. Daar is verskillende weergawes van UUIDs, elkeen met verskillende doeleindes:

  • UUID v1 is tyd-gebaseerd, wat die tydstempel, klokvolgorde, en node ID (MAC-adres) inkorporeer, maar dit kan potensieel stelselinligting blootstel.
  • UUID v2 is soortgelyk aan v1 maar sluit wysigings vir plaaslike domeine in (nie wyd gebruik nie).
  • UUID v3 en v5 genereer UUIDs deur hash-waardes van die naamsruimte en naam te gebruik, met v3 wat MD5 en v5 wat SHA-1 gebruik.
  • UUID v4 word amper heeltemal willekeurig gegenereer, wat 'n hoë vlak van anonimiteit bied maar met 'n ligte risiko van duplikate.

{% hint style="success" %} Let daarop dat die weergawe en subweergawe van die UUID gewoonlik op dieselfde posisie binne die UUID verskyn. Byvoorbeeld in:
12345678 - abcd - 1a56 - a539 - 103755193864
xxxxxxxx - xxxx - Mxxx - Nxxx - xxxxxxxxxxxx

  • Die posisie van die M dui die UUID weergawe aan. In die voorbeeld hierbo, is dit UUID v1.
  • Die posisie van die N dui die UUID variant aan. {% endhint %}

Sandwich-aanval

Die "Sandwich-aanval" is 'n spesifieke tipe aanval wat die voorspelbaarheid van UUID v1-generasie in webtoepassings uitbuit, veral in kenmerke soos wagwoordherstel. UUID v1 word gegenereer op grond van tyd, klokvolgorde, en die node se MAC-adres, wat dit enigsins voorspelbaar kan maak as 'n aanvaller sommige van hierdie UUIDs wat naby in tyd gegenereer is, kan verkry.

Voorbeeld

Stel jou voor 'n webtoepassing wat UUID v1 gebruik vir die genereer van wagwoordherstelskakels. Hier is hoe 'n aanvaller dit kan uitbuit om ongemagtigde toegang te verkry:

  1. Inisieële Opstelling:
  • Die aanvaller het beheer oor twee e-posrekeninge: `aanvaller1@acme.com` en `aanvaller2@acme.com`.
  • Die teiken se e-posrekening is `slagoffer@acme.com`.
  1. Uitvoering:
  • Die aanvaller inisieer 'n wagwoordherstel vir hul eerste rekening (`aanvaller1@acme.com`) en ontvang 'n wagwoordherstelskakel met 'n UUID, sê `99874128-7592-11e9-8201-bb2f15014a14`.
  • Onmiddellik daarna inisieer die aanvaller 'n wagwoordherstel vir die slagoffer se rekening (`slagoffer@acme.com`) en dan vinnig vir die tweede aanvaller-beheerde rekening (`aanvaller2@acme.com`).
  • Die aanvaller ontvang 'n herstelskakel vir die tweede rekening met 'n UUID, sê `998796b4-7592-11e9-8201-bb2f15014a14`.
  1. Ontleding:
  • Die aanvaller het nou twee UUIDs wat naby in tyd gegenereer is (`99874128` en `998796b4`). Gegewe die opeenvolgende aard van tyd-gebaseerde UUIDs, sal die UUID vir die slagoffer se rekening waarskynlik tussen hierdie twee waardes val.
  1. Brute Force Aanval:
  • Die aanvaller gebruik 'n instrument om UUIDs tussen hierdie twee waardes te genereer en toets elke gegenereerde UUID deur te probeer om toegang tot die wagwoordherstelskakel te verkry (bv., `https://www.acme.com/reset/<gegenereerde-UUID>`).
  • As die webtoepassing nie sulke pogings voldoende beperk of blokkeer nie, kan die aanvaller vinnig al die moontlike UUIDs in die reeks toets.
  1. Toegang Verkry:
  • Sodra die korrekte UUID vir die slagoffer se wagwoordherstelskakel ontdek is, kan die aanvaller die slagoffer se wagwoord herstel en ongemagtigde toegang tot hul rekening verkry.

Gereedskap

Verwysings

Leer AWS hak vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Ander maniere om HackTricks te ondersteun: