La sicurezza delle Application Programming Interface (API)
Un elemento fondamentale dell’innovazione nell’odierno mondo guidato dalle app è l’API. Dalle banche, alla vendita al dettaglio e ai trasporti, fino all’IoT, ai veicoli autonomi e alle smart cities, le API sono una parte fondamentale delle moderne applicazioni mobili, SaaS e web e possono essere presenti nelle applicazioni rivolte ai clienti, ai partner e interne.
Per loro natura, le API espongono le logiche dell’applicazione e i dati sensibili come le informazioni di identificazione personale (PII) e per questo motivo sono diventate sempre più un obiettivo per gli aggressori.
Senza API sicure, la rapida innovazione sarebbe impossibile. Per questo, la API Security si concentra su strategie e soluzioni per comprendere e mitigare le vulnerabilità e i rischi di sicurezza unici delle interfacce di programmazione delle applicazioni (API).
Application Programming Interface
Le API sono meccanismi che consentono a due componenti software di comunicare tra loro usando una serie di definizioni e protocolli.
Ad esempio, il sistema software dell’ufficio meteorologico contiene dati meteorologici giornalieri. L’app del meteo sul proprio cellulare comunica con questo sistema tramite API e mostra gli aggiornamenti meteorologici quotidiani sul telefono.
API è l’acronimo di “Application Programming Interface”. Nel contesto delle API, la parola “application” si riferisce a qualsiasi software con una funzione distinta.
Si può pensare all’interfaccia come a un contratto di servizio tra due applicazioni. Questo contratto definisce come queste due parti comunicano tra loro usando richieste e risposte. La rispettiva documentazione dell’API contiene informazioni su come gli sviluppatori devono strutturare tali richieste e risposte.
Semplificando l’integrazione dei nuovi componenti applicativi nell’architettura esistente, le API promuovono la collaborazione tra team amministrativi e IT.
Per restare competitive e rispondere ai costanti mutamenti dei mercati digitali, in cui nuovi concorrenti possono rivoluzionare un intero settore con una nuova app, le aziende devono adattarsi rapidamente e supportare lo sviluppo e il deployment di servizi innovativi.
Cos’è l’API Security?
La sicurezza delle Application Programming Interface (API) si riferisce alla pratica di prevenire o attenuare gli attacchi alle API. Come detto, le API fungono da struttura di backend per le applicazioni mobili e web. Pertanto, è fondamentale proteggere i dati sensibili che trasferiscono.
In particolare, con l’aumento dell’IoT, la sicurezza delle API è diventata sempre più importante. Dati cruciali e sensibili vengono trasferiti tra gli utenti, le API e le applicazioni e i sistemi con cui interagiscono.
Un’API non sicura può essere un facile bersaglio per gli hacker che possono accedere a un computer o a una rete altrimenti sicuri. Gli aggressori possono cercare di eseguire attacchi di tipo man-in-the-middle (MITM), distributed denial-of-service (DDoS), injection, broken access control e molto altro.
Vulnerabilità delle API
Se non adeguatamente protetti, gli endpoint API possono consentire a soggetti malintenzionati di ottenere l’accesso non autorizzato a dati sensibili, provocare l’interruzione dei servizi o entrambi, con conseguenze potenzialmente devastanti. Le minacce più comuni includono:
- Attacchi basati sull’autenticazione – in cui gli hacker tentano di scoprire o sottrarre le password degli utenti o di impiegare meccanismi di autenticazione deboli per ottenere l’accesso ai server API.
- Attacchi man-in-the-middle – in cui un soggetto malintenzionato sottrae o modifica dei dati (ad esempio, credenziali di accesso o informazioni di pagamento) intercettando richieste o risposte API.
- Code injection/attacchi di iniezione – in cui l’hacker trasmette uno script dannoso (per introdurre informazioni false, eliminare o rivelare dati o interrompere la funzionalità delle app) tramite una richiesta API, mostrando i punti deboli degli interpreti API che leggono e traducono i dati.
- Errori di configurazione della sicurezza – quando le informazioni sensibili dell’utente o i dettagli del sistema vengono esposti a causa di configurazioni predefinite inadeguate, di una condivisione di risorse cross-origin (CORS) troppo permissiva o di intestazioni HTTP errate.
- Attacco denial-of-service (DoS) – questi attacchi inviano decine di richieste API per arrestare o rallentare il server. Gli attacchi DoS possono spesso provenire da più aggressori contemporaneamente, in quello che viene chiamato distributed denial-of-service (DDoS).
- Attacchi BOLA (broken object level authorization) – si verificano quando i criminali informatici manipolano gli identificatori degli oggetti sugli endpoint API per ampliare la superficie di attacco e ottenere l’accesso non autorizzato ai dati degli utenti. Gli attacchi BOLA sono particolarmente comuni, perché l’implementazione di adeguati controlli di autorizzazione a livello di oggetto può essere difficile e richiedere molto tempo.
Best practice per l’API security
In un’economia digitale dinamica, le API sono fondamentali per l’agilità aziendale, ma la loro natura aperta può comportare rischi significativi per la sicurezza dei dati. Le violazioni dell’API security hanno portato a ingenti perdite di dati, anche per aziende grandi e affidabili.
Inoltre, in un ambiente tecnologico così globale, le vulnerabilità della sicurezza minacciano la supply chain di tutti i principali provider di servizi, indipendentemente dal settore o dalla posizione geografica.
L’implementazione di protocolli di API security rigorosi protegge i dati, le app e i servizi mostrati dagli endpoint API, garantendo allo stesso tempo la loro disponibilità per gli utenti legittimi.
L’API security, però, non riguarda solo la protezione degli endpoint. Dà anche priorità alla sicurezza delle interazioni di rete, come le trasmissioni di dati, le richieste degli utenti e le comunicazioni tra app durante l’intero ciclo di vita delle API.
Alcune delle soluzioni di API security più comuni per rafforzare le infrastrutture IT includono protocolli di autenticazione e autorizzazione, crittografia, convalida dell’input, rate limiting, quote e throttling, intestazioni di sicurezza, API gateway, controllo e registrazione, gestione degli errori, monitoraggio e patch delle API, controllo delle versioni e documentazione, test di sicurezza.
Penetration Test API: la API Security di Telsy
Per rispondere alla chiara necessità di soluzioni pratiche ed affidabili per la sicurezza delle API, Telsy propone il servizio di Penetration Test API.
Il Penetration Test API di Telsy, attraverso la verifica e l’identificazione dell’esatto numero di API coinvolte inclusive delle cosiddette “shadow API”, fornisce alle organizzazioni gli strumenti conoscitivi necessari per affrontare proattivamente le vulnerabilità e migliorare la sicurezza delle loro interfacce API.
Questo processo rafforza la protezione dei dati sensibili e contribuisce a instaurare una solida fiducia digitale tra i clienti e l’organizzazione oltre ad abilitare i piani di rischio, l’innalzamento postura di sicurezza con identificazione granulare del perimetro di esposizione.
Attraverso tecnologie uniche e made in Italy il Penetration Test API di Telsy mette a disposizione un servizio gestito, erogato dal SOC aziendale, che segue le best practice di settore con un mix di tecnologie basate su intelligenza artificiale e machine learning ed una piattaforma specialistica per l’API Security.
Scopri di più sull’API security di Telsy e le altre soluzioni di Vulnerability Management oppure contattaci all’indirizzo [email protected].
Claudio Di GiuseppeVedi tutti gli articoli
Diplomato in chimica a Roma, si laurea in sociologia per poi specializzarsi in comunicazione, valutazione e ricerca sociale. Si dedica allo studio di internet, della comunicazione digitale e del marketing, conseguendo un master negli Stati Uniti, a Los Angeles. Successivamente consegue un master di II livello in geopolitica e sicurezza globale, in Italia. Attualmente è Junior Communication Specialist per Telsy, Gruppo TIM. Collabora con la Croce Rossa Italiana come operatore volontario e operatore in attività di protezione civile (OPEM).