This is the Trace Id: 301318c9f2864ff154da58c3b80e7c1d
Passa a contenuti principali Microsoft Defender Microsoft Entra Microsoft Intune Percezione del progetto Microsoft Purview Microsoft Sentinel SIEM Visualizza tutti i prodotti Cybersecurity basata su intelligenza artificiale Sicurezza del cloud Sicurezza dati e governance Identità e accesso alla rete Sicurezza per intelligenza artificiale Piccole e medie imprese SecOps integrate Zero Trust Prezzi Servizi Partner Perché Microsoft Security Sensibilizzazione sulla cybersecurity Storie di clienti Nozioni di base sulla sicurezza Versioni di valutazione dei prodotti Riconoscimento nel settore Microsoft Security Insider Microsoft Digital Defense Report Security Response Center Blog di Microsoft Security Eventi di Microsoft Security Community tecnica Microsoft Documentazione Raccolta di contenuti tecnici Formazione e certificazioni Compliance Program per Microsoft Cloud Centro protezione Microsoft Service Trust Portal Microsoft Secure Future Initiative Hub soluzioni aziendali Contatto vendite Scarica la versione di valutazione gratuita Microsoft Security Azure Dynamics 365 Microsoft 365 Microsoft Teams Windows 365 Intelligenza artificiale di Microsoft Azure Space Realtà mista Microsoft HoloLens Microsoft Viva Calcolo quantistico Istruzione Automotive Servizi finanziari Enti pubblici Settore sanitario Produzione Vendita al dettaglio Trova un partner Diventa un partner Rete di partner Microsoft Marketplace Aziende software Blog Microsoft Advertising Centro per sviluppatori Documentazione Eventi Gestione delle licenze Microsoft Learn Microsoft Research Visualizza mappa del sito

Che cos'è la sicurezza del codice?

La sicurezza del codice protegge software e IaC in fase di sviluppo e runtime, contribuendo a ridurre le vulnerabilità, prevenire configurazioni errate e rafforzare il comportamento di sicurezza del cloud.
Una persona che lavora con computer e un portatile

La sicurezza del codice è la pratica di integrare la protezione nel software e nell'infrastruttura come codice (IaC) dalla prima riga di codice attraverso la distribuzione e il runtime, sapendo che i rischi introdotti durante lo sviluppo possono causare errori di configurazione, risorse esposte e carichi di lavoro vulnerabili negli ambienti cloud. La riduzione anticipata delle vulnerabilità e dei rischi di configurazione consente di limitare i percorsi di attacco e supporta una postura di sicurezza del cloud più avanzata man mano che le applicazioni si ridimensionano.

  • La sicurezza del codice riduce i rischi per tutto il ciclo di vita del software, incluse vulnerabilità e configurazioni errate che influiscono sugli ambienti cloud. Risolvendo le vulnerabilità durante lo sviluppo, le organizzazioni possono evitare problemi più difficili e più costosi da risolvere dopo la distribuzione.
  • La codifica sicura è essenziale per le applicazioni cloud moderne. Poiché gli utenti malintenzionati hanno sempre più a che fare con codice non sicuro, la protezione nel software consente di proteggere applicazioni, dati e servizi su larga scala.
  • I principi di sicurezza guidano uno sviluppo più sicuro. Procedure come privilegi minimi, impostazioni predefinite sicure e difesa avanzata consentono di limitare l'esposizione e ridurre l'impatto di potenziali attacchi.
  • L'automazione rafforza i flussi di lavoro DevSecOps. L'integrazione dei test di sicurezza nelle pipeline di integrazione continua e recapito continuo (CI/CD) consente ai team di identificare le vulnerabilità in anticipo senza rallentare il recapito.
  • La sicurezza del codice supporta la conformità e l'attendibilità. Le procedure di codifica sicure coerenti aiutano le organizzazioni a soddisfare i requisiti di governance e a proteggere la fiducia dei clienti nel tempo.

Definizione di sicurezza del codice

La sicurezza del codice consiste nel ridurre i rischi creando protezione nel software e nell'infrastruttura come codice (IaC) fin dall'inizio. Invece di considerare la sicurezza come un controllo finale, si concentra sulla prevenzione dei problemi nel codice dell'applicazione e nelle definizioni di configurazione che gli utenti malintenzionati sfruttano comunemente, consentendo alle organizzazioni di ridurre l'esposizione negli ambienti cloud di sviluppo e distribuiti. Negli ambienti nativi del cloud, sono inclusi i rischi introdotti tramite modelli IaC, configurazioni di contenitori e definizioni di servizio che modellano direttamente l'esposizione in fase di esecuzione.

Nell'ambito della sicurezza delle applicazioni e della gestione dei rischi, la sicurezza del codice si integra con le protezioni di identità, infrastruttura e dati per limitare l'impatto delle minacce informatiche. La risoluzione anticipata dei rischi rende le violazioni meno probabili, riduce i costi di correzione e rafforza il comportamento complessivo di cybersecurity con la scalabilità delle applicazioni.

La sicurezza del codice consente di proteggere le applicazioni e gli ambienti cloud risolvendo i rischi, ad esempio:

Vulnerabilità tecniche

  • Attacchi di injection, che si verificano quando l'input non attendibile viene elaborato come codice eseguibile.
  • Overflow del buffer, causati da una gestione della memoria non sicura che può consentire agli utenti malintenzionati di sovrascrivere la memoria.
  • Autenticazione e autorizzazione non corretta, esposizione di dati o funzioni sensibili.
  • Dipendenze rischiose di terze parti, incluse le librerie con vulnerabilità note.

Rischi per il cloud e la configurazione

  • Infrastruttura non sicura come codice (IaC), che può introdurre impostazioni di archiviazione, rete o identità non configurate correttamente negli ambienti cloud.
  • Configurazioni di identità e accesso eccessivamente permissive, aumentando il rischio di spostamento laterale.
  • Flussi di lavoro di sviluppo e sicurezza cloud non allineati, consentendo la persistenza delle vulnerabilità dal codice negli ambienti di runtime.
  • Strumenti siloed tra il codice e i team di sicurezza cloud, che possono ritardare la correzione e consentire alle vulnerabilità di essere persistenti dallo sviluppo al runtime.

Oltre a prevenire le vulnerabilità, la sicurezza del codice enfatizza anche l'integrità del codice, assicurandosi che il software non sia stato modificato o manomesso, e la prevenzione della vulnerabilità, invece di basarsi esclusivamente sul rilevamento dopo la distribuzione.

Se integrata nel ciclo di vita dello sviluppo software, la sicurezza del codice consente ai team di identificare e affrontare i rischi quando il codice viene scritto, testato e rilasciato, quindi i problemi rilevati nel codice e nelle pipeline non vengono rilevati in un secondo momento come rischio di runtime negli ambienti cloud. Questo approccio proattivo supporta un'innovazione più rapida nel cloud, mantenendo al tempo stesso una sicurezza solida e basata sulla progettazione.

Perché la sicurezza del codice è importante

Il codice non sicuro crea rischi molto prima che un'applicazione raggiunga la produzione. Quando le vulnerabilità diventano software, possono esporre dati sensibili, interrompere le operazioni e rallentare l'innovazione. Negli ambienti cloud questi rischi hanno spesso origine in definizioni di codice o configurazione e possono essere esposti come risorse di archiviazione esposte, identità eccessivamente permissive o servizi accessibili pubblicamente in fase di esecuzione. Le vulnerabilità nel codice e nell'IaC possono aumentare l'esposizione a minacce come ransomware, violazioni dei dati e accesso non autorizzato, soprattutto quando le configurazioni errate vengono eseguite nei carichi di lavoro cloud.

Altrettanto importante, molti team sentono questo problema nel flusso di lavoro quotidiano: i team di sicurezza possono identificare i problemi, ma gli sviluppatori sono quelli che devono risolverli, spesso senza un contesto sufficiente sull'esposizione al runtime o sull'impatto aziendale. Quando i processi vengono silo, la correzione rallenta e i rischi possono essere derivanti dal codice nei carichi di lavoro cloud distribuiti. Chiudere questo divario è il motivo per cui la sicurezza del codice funziona meglio quando è integrata con i flussi di lavoro di sicurezza cloud.

  • Protegge l'azienda: la riduzione anticipata delle vulnerabilità contribuisce a prevenire violazioni dei dati, perdite finanziarie, sanzioni per la conformità ed esposizione legale.
  • Limita i rischi tecnici: il codice sicuro consente di impedire agli utenti malintenzionati di sfruttare dipendenze non sicure o di concatenare vulnerabilità per spostarsi in modo più approfondito negli ambienti.
  • Mantiene DevOps in movimento: la risoluzione dei problemi di sicurezza in precedenza evita correzioni dell'ultimo minuto che interrompono le pipeline CI/CD, ritardano le versioni e aumentano la rielaborazione.
  • Riduce i costi a lungo termine: la correzione delle vulnerabilità durante lo sviluppo è molto meno costosa rispetto alla risposta agli eventi imprevisti dopo il rilascio.
  • Mantiene la fiducia e la reputazione: il software sicuro consente di proteggere la fiducia dei clienti e supporta la fedeltà del marchio a lungo termine.

Procedure consigliate di sicurezza del codice

Una sicurezza efficace del codice consiste nel ridurre i rischi in anticipo, incluse vulnerabilità e configurazioni errate che influiscono sulle risorse cloud distribuite, consolidando al tempo stesso le applicazioni durante lo sviluppo e mantenendo la protezione in produzione. Queste procedure consigliate consentono ai team di prevenire vulnerabilità, limitare l'esposizione e supportare l'innovazione sicura man mano che il software si evolve.

Le procedure di sicurezza del codice complesse si concentrano su:

  • Gestione sicura degli input. La convalida e la sanificazione degli input utente e di sistema aiuta a prevenire attacchi injection e altri exploit prima che raggiungano la logica dell'applicazione.
  • Compilazione in base a componenti attendibili. L'uso di librerie, immagini di contenitori e moduli di infrastruttura sicuri e ben gestiti e la rimozione di componenti deprecati o non supportati riduce l'esposizione a vulnerabilità note e configurazioni errate.
  • Test continui, non occasionali. I test di sicurezza automatizzati, tra cui statico (SAST), dinamico (DAST) e analisi della composizione del software, aiutano a esporre i problemi nelle prime fasi e durante l'intero ciclo di vita dello sviluppo.
  • Limitazione dell'accesso in base alla progettazione. L'applicazione dei privilegi minimi e delle impostazioni predefinite sicure garantisce che le applicazioni espongano solo ciò che è necessario, riducendo l'impatto se le vulnerabilità vengono sfruttate.
  • Progettazione per un errore sicuro. Quando si verificano errori, per impostazione predefinita le applicazioni devono avere un comportamento sicuro. La gestione sicura degli errori consente di evitare l'esposizione di informazioni riservate ed evita la creazione di nuovi percorsi di attacco.
  • Protezione di segreti e credenziali. L'archiviazione sicura di chiavi API, token e credenziali, anziché hardcodifica, consente di evitare l'esposizione accidentale e l'accesso non autorizzato.
  • Rimanere al sicuro dopo il rilascio. Il monitoraggio delle applicazioni nell'ambiente di produzione e l'applicazione di patch alle nuove vulnerabilità individuate consentono di gestire i rischi continui in base alle minacce e agli ambienti.

Principi di sicurezza del codice

La sicurezza del codice si basa su principi di sicurezza ben definiti che consentono di ridurre i rischi, limitare l'esposizione e supportare la governance nelle applicazioni moderne. Quando vengono applicati durante lo sviluppo, questi principi modellano il modo in cui il software viene progettato, compilato e gestito.

Cinque principi chiave di sicurezza del codice

  1. Privilegio minimo. Il codice deve concedere solo l'accesso necessario per funzionare. La limitazione delle autorizzazioni per utenti, servizi e API consente di garantire che i componenti compromessi non possano raggiungere inutilmente i dati sensibili o i sistemi.
  2. Difesa approfondita. Il software sicuro si basa su più livelli di protezione. La convalida dell'input, i controlli di autenticazione, la crittografia e il monitoraggio interagiscono in modo che un singolo errore non esponga l'intera applicazione.
  3. Errore in modo sicuro. Per impostazione predefinita, le applicazioni devono avere un comportamento sicuro quando si verificano errori. La gestione sicura degli errori impedisce l'esposizione di informazioni riservate ed evita la creazione di nuovi percorsi di attacco durante gli errori.
  4. Impostazioni predefinite sicure. La sicurezza deve essere abilitata per impostazione predefinita, non aggiunta in un secondo momento. Il codice deve presupporre configurazioni restrittive, ad esempio accesso limitato, autenticazione avanzata e connessioni crittografate, a meno che non vengano modificate in modo esplicito.
  5. Semplicità. Il codice semplice e ben strutturato è più facile da proteggere e gestire. La riduzione della complessità riduce le probabilità di vulnerabilità nascoste e rende più efficaci le verifiche di sicurezza.

Applicazione dei privilegi minimi nelle API

I privilegi minimi sono particolarmente importanti nelle API e nei servizi, in cui i controlli di Zero Trust e gestione delle identità e degli accessi (IAM) consentono di definire chi o cosa può accedere ad azioni e dati specifici. Un endpoint API deve esporre solo i dati e le azioni necessari per la relativa funzione specifica, anziché un ampio accesso ai sistemi back-end. Ciò limita l'impatto delle credenziali compromesse e consente di contenere violazioni.

Per comprendere il funzionamento pratico dei privilegi minimi, prendere in considerazione alcuni scenari api comuni:

  • Accesso in sola lettura per i profili utente. A un'API che recupera le informazioni del profilo utente viene concessa l'autorizzazione per leggere i dati di base del profilo, ma non per aggiornare i record o accedere ai campi sensibili. In questo modo l'API può eseguire la propria funzione senza esporre dati non necessari se le credenziali vengono compromesse.
  • Autorizzazioni del servizio specifiche dell'attività. Un servizio in background che elabora gli ordini può creare e aggiornare i record degli ordini, ma non può accedere ai dettagli di pagamento o ai dati di identità del cliente. La limitazione delle autorizzazioni consente di contenere potenziali violazioni a una singola funzione.
  • Accesso con ambito per le azioni amministrative. Un'API usata per le attività amministrative è limitata a operazioni specifiche, ad esempio la reimpostazione delle credenziali, anziché l'accesso completo al sistema. In questo modo si riduce l'impatto dell'uso improprio o degli errori di configurazione.
  • Accesso separato per LE API interne ed esterne. Le API pubbliche espongono solo gli endpoint necessari per gli utenti esterni, mentre le API interne mantengono un accesso più ampio per i servizi attendibili. Questa separazione consente di ridurre la superficie di attacco senza rallentare i flussi di lavoro interni.

In che modo la sicurezza del codice si adatta ai domini di sicurezza

La sicurezza del codice non opera in modo isolato. Riducendo i rischi all'origine, supporta e rafforza i controlli di sicurezza tra applicazioni, ambienti cloud, reti ed endpoint.

  • Sicurezza delle applicazioni: impedisce vulnerabilità quali attacchi injection, autenticazione non sicura e difetti logici direttamente nella codebase.
  • Sicurezza cloud: consente di proteggere le applicazioni native del cloud riducendo errori di configurazione e vulnerabilità prima della distribuzione.
  • Sicurezza di rete: interagisce con i controlli di rete assicurando che le applicazioni non espongono porte o servizi non necessari.
  • Sicurezza degli endpoint: riduce i rischi impedendo al codice non sicuro di introdurre minacce ai dispositivi utente o ai sistemi connessi.

Governance, conformità e attendibilità

Le procedure di codifica sicure supportano i requisiti di conformità e governance applicando controlli coerenti nel ciclo di vita dello sviluppo software. L'applicazione di principi come i privilegi minimi e le impostazioni predefinite sicure consente alle organizzazioni di allinearsi agli standard normativi, dimostrare la due diligence e ridurre i rischi di controllo. Queste procedure supportano anche strategie di sicurezza dei dati più ampie, garantendo che le informazioni riservate siano accessibili, elaborate e protette in modo appropriato.

Analogamente, la sicurezza del codice protegge la fiducia dei clienti. Impedendo tempestivamente le vulnerabilità, le organizzazioni evitano costosi eventi imprevisti, salvaguardano i dati sensibili e mantengono la fiducia nelle applicazioni su cui si basano gli utenti.

Standard e controlli di sicurezza del codice

La sicurezza del codice riunisce una gamma di controlli e procedure che consentono di ridurre i rischi in ambienti di sviluppo moderni. Anziché basarsi su una singola protezione, combina protezioni che limitano le operazioni che il codice può eseguire, il modo in cui comunica e il modo in cui i rischi vengono identificati e gestiti nel tempo.

La sicurezza dall'accesso di codice svolge un ruolo importante negli ambienti .NET controllando il modo in cui applicazioni, librerie e servizi accedono alle risorse. Limitando le autorizzazioni, consente di ridurre l'impatto di vulnerabilità o componenti compromessi.

I controllidi sicurezza di rete nel codice dell'applicazione svolgono un ruolo importante nella protezione delle comunicazioni applicando protocolli, crittografia e logica di convalida. La gestione sicura dei protocolli di trasporto consente di evitare intercettazioni, manomissioni e accessi non autorizzati man mano che i dati si spostano tra i sistemi.

Gli standard di codifica sicuri forniscono indicazioni coerenti per la creazione di software più sicuro. I framework come Open Web Application Security Project (OWASP) e ISO/IEC 27034 delineano le procedure per identificare le vulnerabilità, applicare i controlli di sicurezza e incorporare la protezione durante il processo di sviluppo. Negli ambienti cloud questi standard si estendono anche a IaC, garantendo che le configurazioni per identità, rete e archiviazione seguano le impostazioni predefinite sicure prima della distribuzione.

La modellazione delle minacce consente ai team di identificare in modo proattivo dove possono essere esposte le applicazioni. Valutando in anticipo i percorsi di attacco e i potenziali punti deboli, le organizzazioni possono affrontare i rischi prima che le vulnerabilità raggiungano la produzione.

La gestione sicura di segreti e credenziali è essenziale per proteggere le applicazioni. L'archiviazione, la rotazione e l'accesso sicuro a chiavi, token e credenziali consentono di evitare l'esposizione accidentale e l'uso improprio.

Un approccio unificato alla sicurezza del codice

La sicurezza del codice è più efficace quando viene considerata come un controllo del ciclo di vita anticipato all'interno di una strategia unificata di sicurezza cloud, proteggendo le applicazioni dalla prima riga di codice tramite distribuzione e runtime.

Invece di essere un'attività autonoma, la sicurezza di Microsoft è integrata nel modo in cui il software viene progettato, sviluppato, testato e distribuito, consentendo ai team di ridurre i rischi senza rallentare l'innovazione.

Connessione della sicurezza del codice alla protezione del ciclo di vita

Negli ambienti cloud, i problemi introdotti nel codice dell'applicazione e nell'IaC non rimangono isolati, ma modellano direttamente l'esposizione al runtime e il comportamento di sicurezza del cloud. Vulnerabilità e configurazioni errate introdotte nel codice o IaC, ad esempio autorizzazioni di identità non sicure o servizi esposti, possono essere inserite in carichi di lavoro distribuiti e creare l'esposizione in fase di esecuzione. La connessione della sicurezza del codice a una protezione del ciclo di vita più ampia aiuta i team a comprendere in che modo i problemi in fase di sviluppo si traducono in rischi reali per il cloud, in modo che possano classificare in ordine di priorità ciò che conta di più, correggere più rapidamente e prevenire problemi ricorrenti nell'intero ciclo di vita dell'applicazione.

Proteggere in base alla progettazione per tutto il ciclo di vita dello sviluppo

La sicurezza è incorporata in tutto il secure development lifecycle (SDL), consentendo ai team di identificare e affrontare tempestivamente i rischi, dalla pianificazione alla scrittura di codice fino alla distribuzione e alle operazioni in corso. Questo approccio classifica in ordine di priorità la riduzione proattiva dei rischi anziché le correzioni reattive.

Definizione delle priorità e correzione dei rischi reali (da codice a contesto di runtime)

Invece di concentrarsi solo sul rilevamento, la sicurezza del codice enfatizza i risultati. Grazie al superamento del divario di contesto tra i team di sicurezza e DevOps, i flussi di lavoro da codice a runtime aiutano i team a comprendere quali problemi rappresentano il rischio di produzione effettivo, assegnare una proprietà chiara e correggere le vulnerabilità all'origine, prima che vengano mantenute negli ambienti di runtime.

Incorporamento della sicurezza nelle pipeline DevOps e CI/CD

I controlli di sicurezza si integrano direttamente nelle pipeline DevOps, consentendo test automatizzati e applicazione dei criteri senza interrompere i cicli di rilascio. L'incorporamento della sicurezza in CI/CD consente ai team di identificare i problemi in precedenza, ridurre le rilavorazioni e mantenere in movimento il recapito, riducendo al tempo stesso il rischio che i risultati iniziali diventino esposizione alla distribuzione o al runtime.

Supporto di governance, conformità e responsabilità

Le procedure di codifica sicure supportano la governance e la conformità applicando controlli coerenti per tutto il ciclo di vita del software. In questo modo le organizzazioni possono soddisfare i requisiti normativi, dimostrare la dovuta disazionalità e mantenere la visibilità sul rischio dell'applicazione.

Applicazione di procedure collaudate su larga scala

Questi principi di codifica sicuri vengono applicati tra piattaforme e servizi Microsoft, dove continuano a essere perfezionati in ambienti nativi del cloud su larga scala. L'esperienza reale su questa scala aiuta a fornire indicazioni e strumenti progettati per supportare procedure di sicurezza del codice più avanzate in tutte le organizzazioni.

Tendenze emergenti nella sicurezza del codice

La sicurezza del codice continua a evolversi man mano che le applicazioni diventano più distribuite, native del cloud e assistite dall'intelligenza artificiale. I nuovi approcci si concentrano sull'identificazione dei rischi in anticipo, sull'automazione della protezione e sul mantenimento della sicurezza continua per tutto il ciclo di vita del software.

L'intelligenza artificiale viene sempre più usata per analizzare i modelli di codice, identificare le vulnerabilità e contrassegnare comportamenti rischiosi su larga scala. Gli strumenti basati sull'intelligenza artificiale aiutano i team a esporre più rapidamente i problemi e a classificare in ordine di priorità le correzioni in base al rischio reale, non solo alle regole statiche.

Sicurezza a sinistra nelle pipeline DevSecOps

La sicurezza si sta spostando in precedenza nello sviluppo tramite procedure shift-left che integrano i test direttamente nelle pipeline CI/CD. Identificando le vulnerabilità durante le fasi di codifica e compilazione, i team riducono la rielaborazione, evitano ritardi di rilascio e riducono i costi di correzione.

Automazione e Machine Learning nella codifica sicura

L'automazione svolge un ruolo sempre più importante nell'applicazione di standard di codifica sicuri, nell'analisi delle dipendenze e nella convalida delle configurazioni. Machine Learning migliora l'accuratezza apprendendo dalle vulnerabilità passate, consentendo ai team di concentrarsi sui rischi più critici.

Sicurezza continua e ambienti di codifica Zero Trust

Il futuro della sicurezza del codice enfatizza la valutazione continua anziché le revisioni occasionali. Zero Trust principi si estendono allo sviluppo convalidando l'integrità del codice, applicando privilegi minimi e monitorando le applicazioni dallo sviluppo al runtime.

Soluzioni Microsoft e di sicurezza del cloud

La sicurezza del codice è essenziale per le aziende moderne che creano applicazioni native del cloud e abilitate per l'intelligenza artificiale. Nell'ambito di una strategia di sicurezza cloud più ampia, l'inserimento della sicurezza nel ciclo di vita dello sviluppo software consente alle organizzazioni di ridurre i rischi, evitare vulnerabilità costose e proteggere la fiducia man mano che si ridimensionano.

Seguendo le procedure consigliate per la codifica sicura, ad esempio la convalida degli input, l'applicazione dei privilegi minimi e l'automazione dei test di sicurezza, i team possono rilevare i problemi in anticipo e operare con maggiore sicurezza. Principi consolidati come le impostazioni predefinite sicure e la difesa avanzata forniscono una base solida per la resilienza a lungo termine.

Consolidando la sicurezza a livello di codice, le organizzazioni migliorano il comportamento di sicurezza globale del cloud, connettendo le decisioni in fase di sviluppo alla protezione in fase di distribuzione e runtime. Questo approccio integrato consente ai team di innovare più rapidamente senza aumentare i rischi, rendendo la sicurezza del codice una base fondamentale per la protezione delle applicazioni cloud moderne.

IA e soluzioni di sicurezza del cloud.

Domande frequenti

  • Una vulnerabilità del codice sorgente è una vulnerabilità nel codice dell'applicazione che gli utenti malintenzionati possono sfruttare per ottenere accesso non autorizzato, interrompere i sistemi o rubare dati. Queste vulnerabilità spesso derivano da logica non sicura, gestione degli input non corretta, dipendenze obsolete o controlli di sicurezza mancanti. Se non vengono risolte, le vulnerabilità del codice sorgente possono essere trasferite nell'ambiente di produzione, aumentando il rischio di violazioni dei dati e interruzioni operative.
  • La sicurezza del codice consente di proteggere il codice sorgente identificando e riducendo i rischi durante il ciclo di vita dello sviluppo software. Le procedure di codifica sicure, ad esempio la convalida degli input, l'applicazione dei privilegi minimi e l'uso di librerie attendibili, riducono la probabilità di introdurre vulnerabilità. I test di sicurezza automatizzati e l'analisi del codice aiutano ulteriormente i team a rilevare i problemi in anticipo, prima che il codice non sicuro raggiunga la produzione.
  • Il codice sorgente è protetto seguendo procedure di codifica sicure, convalidando gli input, usando librerie attendibili, applicando privilegi minimi e integrando test di sicurezza automatizzati nelle pipeline di sviluppo.
  • Gli attacchi di overflow del buffer si verificano in genere quando le applicazioni non riescono a convalidare correttamente le dimensioni di input. Quando un'applicazione scrive più dati in un buffer di quanti ne possa contenere in modo sicuro, gli utenti malintenzionati possono sovrascrivere la memoria ed eseguire potenzialmente malware. Queste vulnerabilità sono spesso il risultato del controllo dei limiti mancanti o della gestione della memoria non sicura nel codice dell'applicazione.
  •   Le vulnerabilità di attacco injection sono in genere causate da input utente non convalidato o non ottimizzato. Quando le applicazioni elaborano direttamente l'input, ad esempio query di database, comandi o script, senza una convalida appropriata, gli utenti malintenzionati possono inserire malware. La gestione sicura degli input e i controlli di convalida avanzati sono essenziali per prevenire gli attacchi di tipo injection.  

Segui Microsoft Security

Italiano (Italia) Privacy per l'integrità dei consumer Riferimenti societari Contatta Microsoft Privacy Gestisci i cookie Condizioni per l'utilizzo Marchi Informazioni sulle inserzioni EU Compliance DoCs