API-ji su nevidljiva infrastruktura modernog softvera. Aplikacija na mobitelu, web sučelje i vanjske integracije gotovo uvijek komuniciraju preko API-ja, sučelja koja razmjenjuju podatke između sustava. Kako se broj API-ja množi, oni postaju sve privlačnija meta. Za razliku od web sučelja, API je dizajniran za strojeve, pa propusti često prolaze nezapaženo. Ovaj tekst objašnjava glavne rizike API sigurnosti i kako ih smanjiti.
Web sučelje vidi i čovjek, pa se očiti propusti lakše primijete. API je namijenjen strojevima i često nije vidljiv krajnjem korisniku, pa propusti dugo prolaze nezapaženo. Uz to, organizacije često imaju mnogo više API-ja nego što misle, uključujući stare i zaboravljene krajnje točke koje nitko ne nadzire. Svaka od njih je potencijalni ulaz.
Glavni rizici
OWASP održava zaseban popis najčešćih rizika API sigurnosti.1 Najvažniji su sljedeći.
Rizik
Što znači
Slaba kontrola pristupa objektu
Korisnik mijenja identifikator i dohvaća tuđe podatke.
Slaba kontrola pristupa funkciji
Korisnik poziva radnju za koju nema ovlasti.
Prekomjerno izlaganje podataka
API vraća više podataka nego što sučelje prikazuje.
Nedostatak ograničenja prometa
Nema zaštite od masovnih ili automatiziranih zahtjeva.
Slaba autentifikacija
Loše upravljanje ključevima, tokenima i sesijama.
Najčešći rizici API sigurnosti.
Kako smanjiti rizik
Sigurnost API-ja temelji se na strogoj kontroli pristupa i vidljivosti.
01
Provjeravajte ovlasti pri svakom pozivu
Kontrolirajte pristup na poslužitelju, za svaki objekt i svaku funkciju.
02
Vraćajte samo nužne podatke
API ne smije izlagati polja koja korisnik ne treba vidjeti.
03
Ograničite promet
Uvedite ograničenja broja zahtjeva da spriječite zlouporabu i preopterećenje.
04
Učvrstite autentifikaciju
Sigurno upravljajte ključevima i tokenima te im dajte rok valjanosti.
05
Vodite popis API-ja
Znajte koje krajnje točke postoje i ugasite stare i nekorištene.
Po čemu se API sigurnost razlikuje od web sigurnosti?+
API je namijenjen strojevima i nije vidljiv krajnjem korisniku, pa propusti dulje prolaze nezapaženo. Uz to organizacije često imaju mnogo više API-ja nego što misle, uključujući zaboravljene krajnje točke.
Koji je najčešći propust API-ja?+
Slaba kontrola pristupa na razini objekta. Korisnik promijeni identifikator u zahtjevu i dohvati tuđe podatke. To se ne vidi u sučelju i otkriva se tek ciljanim testiranjem.
Pomaže li OWASP kod API sigurnosti?+
Da. OWASP uz web popis održava i zaseban popis najčešćih rizika API sigurnosti, koji je dobra polazna referenca za razvoj i testiranje API-ja.
Kako znati koje API-je imamo?+
Treba voditi popis svih krajnjih točaka i redovito ga provjeravati. Stare i zaboravljene API-je vrijedi ugasiti jer su čest, a nenadziran ulaz za napad.
Izvori
1OWASP. OWASP API Security Top 10. Open Worldwide Application Security Project, 2023. Poveznica
2NIST. SP 800-218: Secure Software Development Framework (SSDF). National Institute of Standards and Technology, 2022. Poveznica
Želite li ovakvu provjeru na vlastitim sustavima?
Naš tim definirat će opseg posla s vama u 30-minutnom razgovoru.