FixVibe
Covered by FixVibemedium

API Varnostni kontrolni seznam: 12 stvari, ki jih morate preveriti pred objavo

API-ji so hrbtenica sodobnih spletnih aplikacij, vendar pogosto nimajo varnostne strogosti tradicionalnih vmesnikov. Ta raziskovalni članek opisuje bistven kontrolni seznam za varovanje API-jev, s poudarkom na nadzoru dostopa, omejevanju hitrosti in skupni rabi virov med izvori (CORS), da se prepreči vdor podatkov in zloraba storitev.

CWE-285CWE-799CWE-942

Vpliv

Ogroženi API-ji omogočajo napadalcem, da obidejo uporabniške vmesnike in neposredno komunicirajo z zalednimi bazami podatkov in storitvami [S1]. To lahko privede do nepooblaščenega odtujevanja podatkov, prevzemov računov s surovo silo ali nedostopnosti storitve zaradi izčrpanosti virov [S3][S5].

Temeljni vzrok

Primarni glavni vzrok je izpostavljenost notranje logike prek končnih točk, ki nimajo zadostne validacije in zaščite [S1]. Razvijalci pogosto domnevajo, da če funkcija ni vidna v uporabniškem vmesniku, je varna, kar vodi do pokvarjenega nadzora dostopa [S2] in permisivnih pravilnikov CORS, ki zaupajo preveč izvorom [S4].

Osnovni varnostni kontrolni seznam API

  • Uveljavi strog nadzor dostopa: vsaka končna točka mora preveriti, ali ima zahtevatelj ustrezna dovoljenja za določen vir, do katerega dostopa [S2].
  • Implement Rate Limiting: Zaščitite se pred avtomatsko zlorabo in napadi DoS tako, da omejite število zahtev, ki jih lahko odjemalec poda v določenem časovnem okviru [S3].
  • Pravilno konfigurirajte CORS: Izogibajte se uporabi nadomestnih znakov (*) za overjene končne točke. Eksplicitno določite dovoljene izvore, da preprečite uhajanje podatkov med spletnimi mesti [S4].
  • Pregled vidnosti končne točke: Redno pregledujte "skrite" ali nedokumentirane končne točke, ki bi lahko razkrile občutljivo funkcionalnost [S1].

Kako ga FixVibe testira

FixVibe zdaj pokriva ta kontrolni seznam z več preverjanji v živo. Sonde z aktivnimi vrati preizkušajo omejitev hitrosti končne točke preverjanja, CORS, CSRF, vbrizgavanje SQL, slabosti pretoka preverjanja in druge težave, povezane z API, šele po preverjanju. Pasivni pregledi pregledujejo varnostne glave, javno dokumentacijo API in izpostavljenost OpenAPI ter skrivnosti v svežnjih odjemalcev. Repo pregledi dodajo pregled tveganja na ravni kode za nevaren CORS, surovo interpolacijo SQL, šibke skrivnosti JWT, uporabo JWT samo za dekodiranje, vrzeli v podpisu webhook in težave z odvisnostjo.