FixVibe
Covered by FixVibehigh

API Atslēgas noplūde: riski un to novēršana mūsdienu tīmekļa lietotnēs

Cietie kodēti noslēpumi priekšgala kodā vai repozitorija vēsturē ļauj uzbrucējiem uzdoties par pakalpojumiem, piekļūt privātiem datiem un radīt izmaksas. Šajā rakstā ir aprakstīti slepenas noplūdes riski un nepieciešamie tīrīšanas un profilakses pasākumi.

CWE-798

Ietekme

Noslēpumu nopludināšana, piemēram, API atslēgas, marķieri vai akreditācijas dati, var izraisīt nesankcionētu piekļuvi sensitīviem datiem, uzdošanos par pakalpojumu un ievērojamus finansiālus zaudējumus resursu ļaunprātīgas izmantošanas dēļ. [S1]. Kad noslēpums ir ievietots publiskajā repozitorijā vai iekļauts priekšgala lietojumprogrammā, tas jāuzskata par apdraudētu [S1].

Galvenais cēlonis

Galvenais iemesls ir sensitīvu akreditācijas datu iekļaušana tieši avota kodā vai konfigurācijas failos, kas pēc tam tiek izmantoti versiju kontrolei vai tiek pasniegti klientam [S1]. Ērtības labad izstrādātāji izstrādes laikā bieži iekodē atslēgas vai nejauši iekļauj .env failus savās saistībās [S1].

Betona labojumi

  • Pagrieziet apdraudētos noslēpumus: ja noslēpums ir nopludināts, tas ir nekavējoties jāatsauc un jāaizstāj. Ar vienkāršu noslēpuma noņemšanu no pašreizējās koda versijas nepietiek, jo tas paliek versiju kontroles vēsturē [S1][S2].
  • Izmantojiet vides mainīgos: saglabājiet noslēpumus vides mainīgajos, nevis tos stingri kodējiet. Nodrošiniet, lai .env faili tiktu pievienoti .gitignore, lai novērstu nejaušas [S1].
  •  Ieviesiet slepeno pārvaldību: izmantojiet īpašus slepeno pārvaldības rīkus vai glabātuves pakalpojumus, lai ievadītu akreditācijas datus lietojumprogrammas vidē izpildlaikā [S1].
  • Iztīriet krātuves vēsturi: ja Git tika atklāts noslēpums, izmantojiet tādus rīkus kā git-filter-repo vai BFG Repo-Cleaner, lai neatgriezeniski noņemtu sensitīvos datus no visiem zariem un atzīmēm krātuves vēsturē [S2].

Kā FixVibe to pārbauda

FixVibe tagad tas ir iekļauts tiešraidē. Pasīvā secrets.js-bundle-sweep lejupielādē vienas izcelsmes JavaScript komplektus un saskaņo zināmos API atslēgu, pilnvaru un akreditācijas datu modeļus ar entropijas un vietturu vārtiem. Saistītās tiešraides pārbaudēs tiek pārbaudīta pārlūkprogrammas krātuve, avota kartes, autentifikācijas un BaaS klientu komplekti un GitHub repo avota modeļi. Git vēstures pārrakstīšana joprojām ir sanācijas solis; FixVibe tiešraide koncentrējas uz noslēpumiem, kas atrodas nosūtītajos aktīvos, pārlūkprogrammas krātuvē un pašreizējā repo saturā.