TECHTARGET

API shadow: che cosa sono, come rilevarle e controllarne la diffusione

API shadow come fenomeno silenzioso e incontrollabile. Dal momento che l’infiltrazione tramite API è diventata uno dei metodi preferiti dagli hacker, i team IT devono adottare misure aggiuntive per salvaguardare le interfacce dal cybercrime

Pubblicato il 16 Mag 2023

api shadow

API shadow, alias API ombra, sono le API di terze parti non documentate e non tracciate utilizzate dagli sviluppatori per accelerare il loro lavoro di programmazione. Come spiegano gli esperti, si tratta di interfacce talmente astruse e discrete che molte aziende spesso ne ignorano addirittura l’esistenza. Il fatto che vengano trascurate e non siano documentate fa sì che le API shadow non solo generino confusione a livello applicativo ma spesso diventano fonte di attacchi da parte del cybercrime, da cui la necessità di presidiare anche questo aspetto della governance.

API al centro del mirino degli hacker

È indubbio che le API stiano guidando il mondo digitale: circa l’89% degli sviluppatori implementa API di vario tipo quando lavora alla programmazione di una qualsiasi applicazione. Se non è un segreto che gli attacchi dannosi alle applicazioni e ai sistemi software siano all’ordine del giorno, meno noto è che le API si trovano regolarmente al centro di gravi violazioni e interruzioni. Le API non protette, infatti, rappresentano uno dei punti di attacco più sfruttati per moltissimi tipi di violazioni.

Nel 2022, una ricerca pubblicata dalla società di sicurezza informatica Cequence ha specificamente elencato le API shadow come un vettore di accesso per il cybercrime in quasi il 31% dei 16,7 miliardi di transazioni dannose. Nel momento in cui le organizzazioni non riescono a implementare una corretta gestione dell’inventario, le API shadow diventano un anello debole della sicurezza, inficiando il processo di controllo qualità e le buone pratiche dello sviluppo software durante il ciclo di evoluzione da una release all’altra.

API shadow: che cosa sono

Le API shadow sono API che vengono implementate silenziosamente da quegli sviluppatori che cercano di:

  • risparmiare tempo su un’attività ripetitiva
  • eliminare la dipendenza da altri team
  • colmare una lacuna nel catalogo aziendale di API approvate.

Tuttavia, per quanto buone possano essere le intenzioni degli sviluppatori, le API shadow, se non regolamentate aggiornate, possono creare gravi vulnerabilità quando entrano a fare parte del patrimonio applicativo dell’organizzazione.

API Shadow

API shadow: quali sono i rischi e le vulnerabilità

Esaminiamo ulteriormente i tipi di vulnerabilità associate alle API shadow e i potenziali danni che possono causare. Una premessa importante è che gli aggressori non fanno alcuna fatica a identificare quelle API non tracciate che possono costringere ad accettare:

  • determinati parametri
  • richieste di dati
  • qualsiasi altro tipo di input manipolativo

Il cybercrime, alterando i dati dell’API, accede agli endpoint e viola i controlli di sicurezza. È in questo modo che le API shadow possono diventare una porta d’ingresso a sistemi e dati sensibili delle organizzazioni. Gli aggressori possono utilizzare le API shadow anche per eseguire azioni invasive come, ad esempio, accedere agli account di uno o più utenti privati per alterare o eliminare le informazioni dell’utente o persino modificare le credenziali esistenti senza che, in tutto ciò, l’attività malevola sia rilevata. Nel momento in cui gli attacchi tramite API shadow interessano le transazioni soggette a HIPAA, GDPR o altre importanti normative sulla protezione dei dati, le conseguenze possono portare a problemi di conformità ancora più dannosi per l’organizzazione.

Come individuare le API shadow

Le API sono una necessità per lo sviluppo delle applicazioni, in quanto abilitano varie funzionalità e integrazioni di dati su larga scala. Ciò significa che l’uso di API shadow, sempre e comunque, sarà un rischio che un’azienda deve mettere in conto e imparare a gestire. Fortunatamente, ci sono alcune pratiche che possono aiutare le organizzazioni a individuare prontamente attività API sospette all’interno del proprio perimetro applicativo:

Monitorare i proxy in uscita

È opportuno intercettare ogni chiamata API in uscita tramite proxy API. Questi proxy in uscita registrano anche tutti i log delle API, comprese le richieste e le risposte, per cercare transazioni API non riconosciute, tempi di risposta insolitamente lenti, picchi anomali nelle allocazioni delle risorse o qualsiasi altra attività che possa indicare la presenza di un’API shadow.

Analizzare i log

Se implementata con dovizia, l’analisi di log aiuterà gli sviluppatori a identificare immediatamente gli endpoint appena sviluppati, i dati di risposta e altre metriche API. In ausilio esistono diversi strumenti di analisi dei log come Sematext Logs, Insight e InsightOps, che automatizzano l’attività, registrando i log a intervalli regolari (o, idealmente, in tempo reale) per valutare le prestazioni dell’applicazione end-to-end e cercare attività API sospette. Tuttavia, usare i tool non è sempre la soluzione migliore poiché l’analisi dei log richiede un enorme spazio di archiviazione per registrare i dati. Se qualcosa andasse storto, l’analisi dei log potrebbe memorizzare troppe o troppo poche informazioni, generando quel rumore di fondo che fa impazzire i responsabili della cybersecurity.

Implementare un monitoraggio in tempo reale

Un’alternativa all’analisi dei log è il monitoraggio di tutte le richieste API, costante e in tempo reale che consente una categorizzazione delle API fattibile per i dati appena aggiunti. Una scelta che permette di liberare gli sviluppatori dall’esecuzione dei test, rilevando immediatamente i problemi a livello di prestazioni. Ciò consente di risparmiare sia tempo che fatica. Un ulteriore vantaggio aggiunto del monitoraggio in tempo reale rispetto al rilevamento dell’API Shadow è la sua capacità di integrarsi direttamente con il gateway API o utilizzando l’agente dell’app già distribuito. Di questi due metodi, il primo è preferito al secondo in quanto è semplice da implementare e tiene a bada eventuali problemi di sicurezza imprevisti. Tuttavia, il suo utilizzo ridurrà le prestazioni dell’app poiché le informazioni verranno acquisite localmente o utilizzando l’app di terze parti. In ogni caso, l’app rallenterà un po’. Inoltre, questo approccio non ha un’implementazione centralizzata. Deve essere implementato su ciascuna applicazione separatamente, il che rende un po’ macchinosa la sua applicazione.

Scansionare frequentemente il codice

È possibile anche rilevare e indirizzare le API shadow prima che raggiungano la produzione eseguendo la scansione del codice sorgente per identificare eventuali tracce di API che non appartengono al sistema. Spesso nota come analisi del codice statico, la scansione del codice si riferisce al monitoraggio del codice sorgente dell’applicazione per mappare l’utilizzo dell’API. È diverso da altri approcci in quanto riconosce l’API shadow prima che questa venga messa in produzione.

Poiché la scansione non avviene mentre l’applicazione è attiva, questa tecnica è considerata non invasiva. Si tratta di un approccio olistico che non richiede un processo di integrazione in ogni fase. Il suo utilizzo fa sì che lo sviluppo delle API soddisfi facilmente la conformità al GDPR. L’unico aspetto negativo di questa tecnica è la complessità: i codici sono difficili da costruire e bisogna assicurarsi di verificare che gli strumenti utilizzati siano compatibili con ogni singolo linguaggio stack utilizzato.

Cosa fare se le API shadow si infiltrano nel sistema software

Anche con un monitoraggio adeguato, c’è ancora la possibilità che le API shadow si infiltrino in un sistema software. Pertanto, è essenziale disporre di una strategia di correzione per ridurre al minimo l’impatto delle API shadow una volta individuate. Di seguito i consigli degli esperti:

Implementare standard e linee guida rigorosi

È opportuno implementare un rigoroso processo di filtraggio delle API attraverso standard e linee guida ben definiti, atti a regolarne l’implementazione e l’utilizzo. Ciò dovrebbe includere criteri come la conformità alle normative sulla protezione dei dati pertinenti e qualsiasi requisito specifico sulla privacy degli utenti delineato negli accordi sul livello di servizio.

Stabilire procedure di osservabilità

Implementare la scansione del codice e i processi di monitoraggio in tempo reale come parte del normale processo di sviluppo per garantire che gli standard stabiliti siano soddisfatti per ogni API in uso.

Controllare frequentemente il sistema

Gli esercizi di audit automatizzati possono migliorare notevolmente la sicurezza e la visibilità delle API. Poiché l’auditing è uno sforzo collaborativo, tutti gli sviluppatori avranno una visione dei potenziali problemi relativi alle API shadow e dei modi per migliorare le prestazioni e la sicurezza dell’applicazione.

Strumenti per combattere le API shadow

Gli strumenti giusti possono ridurre significativamente il rischio di API shadow fornendo meccanismi di sicurezza adeguati, monitoraggio costante e più ampia osservabilità. Ecco alcuni esempi di strumenti e piattaforme che forniscono le funzionalità necessarie per combattere le API shadow:

  • APIsec. Questa piattaforma di test di sicurezza delle API fornisce strumenti di scansione delle vulnerabilità e supporto integrato per le iniziative DevSecOps.
  • Wallarm. Questa piattaforma di test della sicurezza delle API si concentra sul supporto sia per le applicazioni legacy che per le API native del cloud.
  • Apigee Sense. Questo strumento di rilevamento del comportamento supportato da Google tiene traccia degli inventari, delle chiavi e delle transazioni delle API e analizza automaticamente le anomalie.
  • Reblaze. Questo fornitore di piattaforme di sicurezza software generale offre strumenti per il monitoraggio del traffico API in tempo reale, la crittografia delle transazioni, la gestione automatizzata delle policy e meccanismi di reverse engineering che mitigano i danni degli attacchi API.

API shadow: come si evitano

Se non vengono intraprese misure immediate e appropriate, le API shadow possono davvero essere problematiche. Per evitare il proliferare delle API shadow ci sono alcune buone pratiche:

#1 Adottare gli standard API

Esiste una certa aderenza agli standard API predefiniti che porta a anomalie API minime. Lo standard OpenAPI Specification aiuta gli sviluppatori a comprendere lo scopo dell’API fin dall’inizio. Offre inoltre un linguaggio di programmazione standard per macchine e esseri umani. L’adesione a questi standard universali consente agli sviluppatori di minimizzare i problemi.

#2 Automatizzare la documentazione dell’API

Automatizzando la documentazione dell’API in una fase iniziale, gli sviluppatori possono facilmente risparmiare l’enorme sforzo investito nella documentazione manuale. Gli aggiornamenti della documentazione API possono essere incorporati con l’aiuto del processo CI/CD.

#3 Condurre un controllo di sicurezza delle API legacy

Prima che venga rilasciata la nuova versione dell’API, gli esperti di sicurezza delle API dovrebbero dedicare del tempo ad analizzare le condizioni di sicurezza delle API primogenite. Ciò aiuta a valutare i rischi per la sicurezza imprevisti nella nuova versione e a renderla più sicura.

#4 Inventariare le API live e la relativa documentazione

Sebbene la documentazione API automatica sia una chiave di salvezza, non può fare miracoli da sola. Gli esperti di sicurezza delle API devono approfondire i dettagli come gli endpoint API, il loro modus operandi e la posizione in tempo reale. Il monitoraggio continuo dell’inventario delle API aiuta gli sviluppatori a sradicare le possibilità delle API shadow.

#5 Eseguire il backport delle vecchie API

Anche se si tenta ampiamente, alcune API vecchie o obsolete rimarranno attive. Con l’aiuto del processo di backporting, gli sviluppatori possono facilmente introdurre pratiche di sicurezza aggiornate anche nelle API precedenti e renderle tecnicamente valide per sopportare eventuali attacchi alla sicurezza.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 4