Potreba za razvojem sve većeg broja web aplikacija u što kraćem vremenskom roku rezultirala je promjenom u arhitekturnom pristupu.
Sve aplikacije koriste API-je kao što su setovi za razvoj softvera, kriptografske biblioteke i SOAP za razmjenu informacija između aplikacija preko HTTP protokola.
Mrežno izloženi API-ji omogućavaju slobodan protok informacija i interakciju između softverskih komponenti, pa hakeri imaju nove mogućnosti napada. Vidjeli smo značajna kršenja u nekoliko poznatih tvrtki (USPS, T-Mobile i Salesforce) koja proizlaze iz izloženosti ili upotrebe nesigurnih krajnjih točaka API-ja.
Sigurnost API-ja je zaštita mrežno izloženih sučelja za programiranje aplikacija. To znači korištenje zajedničkih sigurnosnih kontrola koje se odnose na API-je: ograničavanje brzine i provjeru autentičnosti i autorizacije korisnika, usluga i zahtjeva.
Današnje sigurnosno testiranje jednako je relevantno za stvaranje uvida u djelotvornost sigurnosnih praksi softvera kao što je to bilo i do sada. Sigurnosno testiranje API-ja predstavlja nove izazove za ručne, automatizirane i hibridne aktivnosti.
API-jem aplikacije mogu tražiti usluge i podatke operacijskog sustava ili neke druge aplikacije, a na korištenje API-ja se oslanjaju i mobilne aplikacije, kao i bogate JavaScript razvojne okoline i biblioteke poput Angulara i Reacta. Aplikacija koja poziva neki API mora voditi računa samo o tome kako sastaviti i poslati zahtjev i kakav će odgovor dobiti (, bez vođenja računa o implementacijskim detaljima funkcije koja će mu pružiti odgovor.