Najpogostejše ranljivosti API-ja OATH

Najpogostejše ranljivosti API-ja OATH

Najboljše ranljivosti API-ja OATH: Uvod

Ko gre za izkoriščanja, so API-ji najboljše mesto za začetek. API dostop je običajno sestavljen iz treh delov. Strankam izda žetone avtorizacijski strežnik, ki deluje skupaj z API-ji. API od odjemalca prejme žetone za dostop in na podlagi njih uporabi avtorizacijska pravila, specifična za domeno. 

Sodobne programske aplikacije so ranljive za različne nevarnosti. Bodite na tekočem z najnovejšimi izkoriščanji in varnostnimi napakami; imeti primerjalne vrednosti za te ranljivosti je bistvenega pomena za zagotavljanje varnosti aplikacije, preden pride do napada. Aplikacije tretjih oseb se vedno bolj zanašajo na protokol OAuth. Uporabniki bodo s to tehnologijo imeli boljšo splošno uporabniško izkušnjo ter hitrejšo prijavo in avtorizacijo. Morda je varnejša od običajne avtorizacije, saj uporabnikom ni treba razkriti svojih poverilnic aplikaciji tretje osebe, da bi lahko dostopali do danega vira. Medtem ko je sam protokol varen in varen, vas lahko način izvajanja pusti odprtega za napade.

Pri načrtovanju in gostovanju API-jev se ta članek osredotoča na tipične ranljivosti OAuth in različne varnostne ublažitve.

Okvarjena avtorizacija na ravni objekta

Če je avtorizacija kršena, obstaja ogromna površina za napade, saj API-ji omogočajo dostop do objektov. Ker je treba elemente, dostopne prek API-ja, overiti, je to nujno. Implementirajte avtorizacijske preglede na ravni objekta z uporabo prehoda API. Dostop je treba dovoliti samo tistim z ustreznimi poverilnicami za dovoljenje.

Prekinjena avtentikacija uporabnika

Nepooblaščeni žetoni so še en pogost način, da napadalci pridobijo dostop do API-jev. Morda so vdrli v sisteme za preverjanje pristnosti ali pa je pomotoma razkrit API ključ. Žetoni za preverjanje pristnosti so lahko uporabljajo hekerji pridobiti dostop. Osebe preverjajte le, če jim lahko zaupate, in uporabljajte močna gesla. Z OAuth lahko presežete zgolj ključe API in pridobite dostop do svojih podatkov. Vedno morate razmišljati o tem, kako boste prišli v kraj in iz njega. Omejeni žetoni pošiljatelja OAuth MTLS se lahko uporabljajo v povezavi z vzajemnim TLS, da se zagotovi, da se odjemalci med dostopanjem do drugih strojev ne vedejo neprimerno in posredujejo žetonov napačni strani.

Promocija API-ja:

Prekomerna izpostavljenost podatkov

Glede števila končnih točk, ki se lahko objavijo, ni nobenih omejitev. Večino časa vse funkcije niso na voljo vsem uporabnikom. Z razkritjem več podatkov, kot je nujno potrebno, ogrožate sebe in druge. Izogibajte se razkrivanju občutljivih Podatki dokler ni nujno potrebno. Razvijalci lahko z uporabo obsegov in zahtevkov OAuth določijo, kdo ima dostop do česa. Zahtevki lahko določajo, do katerih delov podatkov ima uporabnik dostop. Nadzor dostopa je lahko preprostejši in lažji za upravljanje z uporabo standardne strukture v vseh API-jih.

Pomanjkanje virov in omejevanje hitrosti

Črni klobuki pogosto uporabljajo napade zavrnitve storitve (DoS) kot grobo silo, da preobremenijo strežnik in tako skrajšajo čas delovanja na nič. Ker ni omejitev glede virov, ki jih je mogoče poklicati, je API ranljiv za izčrpavajoče napade. 'Z uporabo prehoda API ali orodja za upravljanje lahko nastavite omejitve stopnje za API. Vključiti je treba filtriranje in številčenje strani ter omejiti odgovore.

Napačna konfiguracija varnostnega sistema

Različne smernice za varnostno konfiguracijo so dokaj obsežne zaradi velike verjetnosti napačne varnostne konfiguracije. Številne malenkosti lahko ogrozijo varnost vaše platforme. Možno je, da lahko črni klobuki s prikritimi nameni odkrijejo občutljive informacije, poslane kot odgovor na napačno oblikovane poizvedbe, na primer.

Množična dodelitev

Samo zato, ker končna točka ni javno definirana, ne pomeni, da razvijalci do nje ne morejo dostopati. Skrivni API lahko hekerji zlahka prestrežejo in izvedejo obratno inženirstvo. Oglejte si ta osnovni primer, ki uporablja odprt nosilni žeton v "zasebnem" API-ju. Po drugi strani pa lahko javna dokumentacija obstaja za nekaj, kar je namenjeno izključno osebni uporabi. Izpostavljene informacije lahko uporabijo črni klobuki ne le za branje, ampak tudi za manipulacijo lastnosti predmeta. Imejte se za hekerja, medtem ko iščete potencialne šibke točke v vaši obrambi. Dovolite samo tistim z ustreznimi pravicami dostop do tega, kar je bilo vrnjeno. Če želite zmanjšati ranljivost, omejite odzivni paket API-ja. Anketiranci naj ne dodajajo nobenih povezav, ki niso nujno potrebne.

Promovirani API:

Nepravilno upravljanje sredstev

Poleg izboljšanja produktivnosti razvijalcev so trenutne različice in dokumentacija bistvenega pomena za vašo varnost. Pripravite se na uvedbo novih različic in opustitev starih API-jev veliko vnaprej. Uporabite novejše API-je, namesto da dovolite, da starejši ostanejo v uporabi. Specifikacijo API-ja bi lahko uporabili kot primarni vir resnice za dokumentacijo.

Vbrizgavanje

API-ji so ranljivi za vbrizgavanje, vendar tudi aplikacije za razvijalce tretjih oseb. Zlonamerna koda se lahko uporabi za brisanje podatkov ali krajo zaupnih informacij, kot so gesla in številke kreditnih kartic. Najpomembnejša lekcija, ki jo je treba naučiti iz tega, je, da niste odvisni od privzetih nastavitev. Vaš dobavitelj ali dobavitelj prehoda bi moral biti sposoben prilagoditi vaše edinstvene potrebe aplikacije. Sporočila o napakah ne smejo vsebovati občutljivih informacij. Da bi preprečili uhajanje podatkov o identiteti izven sistema, je treba v žetonih uporabiti parne psevdonime. To zagotavlja, da nobena stranka ne more sodelovati pri identifikaciji uporabnika.

Nezadostno beleženje in spremljanje

Ko pride do napada, ekipe potrebujejo dobro premišljeno strategijo odzivanja. Razvijalci bodo še naprej izkoriščali ranljivosti, ne da bi jih ujeli, če zanesljiv sistem beleženja in spremljanja ne bo vzpostavljen, kar bo povečalo izgube in škodovalo javnemu dojemanju podjetja. Sprejmite strogo strategijo spremljanja API-ja in testiranja končne točke proizvodnje. Testerje belih klobukov, ki zgodaj odkrijejo ranljivosti, je treba nagraditi s shemo nagrad. Dnevniško sled je mogoče izboljšati z vključitvijo identitete uporabnika v transakcije API-ja. Zagotovite, da so vse plasti vaše arhitekture API-ja revidirane z uporabo podatkov Access Token.

zaključek

Arhitekti platform lahko svoje sisteme opremijo tako, da ostanejo korak pred napadalci z upoštevanjem uveljavljenih meril ranljivosti. Ker API-ji lahko zagotavljajo dostop do osebno prepoznavnih podatkov (PII), je ohranjanje varnosti takšnih storitev ključnega pomena za stabilnost podjetja in skladnost z zakonodajo, kot je GDPR. Nikoli ne pošiljajte žetonov OAuth neposredno prek API-ja brez uporabe prehoda API-ja in pristopa fantomskega žetona.

Promovirani API: