L'appello della Casa Bianca per la sicurezza della memoria comporta sfide, cambiamenti e costi

L'appello della Casa Bianca per la sicurezza della memoria comporta sfide, cambiamenti e costi

L'appello della Casa Bianca per la sicurezza della memoria comporta sfide, cambiamenti e costi. PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

COMMENTO

La recente pubblicazione”Torniamo ai mattoni da costruzione: A Path Toward Secure and Measurable Software” dell’Ufficio del National Cyber ​​Director (ONCD) della Casa Bianca fornisce ulteriori dettagli e indicazioni strategiche a supporto del Strategia nazionale per la sicurezza informatica pubblicata nel marzo 2023. La strategia intende trasferire una quota molto maggiore di responsabilità per la sicurezza informatica ai fornitori di software, ai fornitori di servizi e ad altre entità che sviluppano applicazioni software. Quest’ultimo rapporto fornisce una direzione più specifica, sottolineando uno spostamento aggressivo verso linguaggi di programmazione memory-safe con le pratiche di sviluppo software.

L’imperativo della sicurezza della memoria

I linguaggi di programmazione tradizionali rappresentano spesso l’anello debole nello sviluppo del software, con le vulnerabilità della sicurezza della memoria che portano a incidenti significativi. Nonostante revisioni approfondite del codice e altre misure di sicurezza, queste vulnerabilità persistono, rappresentando fino al 70% dei problemi di sicurezza in questi linguaggi. Uno spostamento verso linguaggi di programmazione sicuri per la memoria, come suggerito dalla road map della Cybersecurity and Infrastructure Security Agency (CISA), è un passo fondamentale verso lo sviluppo di software sicuro fin dalla progettazione.

Una delle sfide più scoraggianti in questo cambiamento strategico è affrontare i sistemi legacy sviluppati in C e C++. Questi sistemi legacy non solo sono numerosi ma sono spesso fondamentali per le operazioni di molte organizzazioni. Riscrivere questi sistemi in linguaggi moderni e sicuri per la memoria può essere costoso e complesso, con conseguenti tempi di inattività dei processi aziendali critici.

Inoltre, le vulnerabilità della sicurezza della memoria si osservano principalmente a livello del sistema operativo, interessando piattaforme significative come Microsoft e Linux. Questa categorizzazione dei problemi a livello di runtime, piuttosto che a livello applicativo, sottolinea la sfida più ampia della sicurezza informatica: il perseguimento di misure di sicurezza avanzate deve essere bilanciato con gli aspetti pratici e i costi di implementazione di questi cambiamenti, soprattutto per i sistemi consolidati.

Considerazioni economiche e tecniche

Molte organizzazioni devono affrontare costi enormi associati alla revisione dei sistemi più vecchi. Cambiare i protocolli di codifica non è solo una decisione tecnica ma anche strategica per garantire la sicurezza dell’infrastruttura digitale del futuro. Di conseguenza, i decisori che valutano quando intraprendere la transizione devono valutare gli impatti finanziari e operativi immediati rispetto ai benefici a lungo termine.

Fortunatamente, sono già state sviluppate innovazioni tecnologiche che possono ridurre i costi e le interruzioni della transizione verso codici più sicuri. Ad esempio, gli strumenti di analisi del codice possono analizzare applicazioni legacy e identificare in modo semi-autonomo le istanze in cui il codice C o Python viene eseguito senza un adeguato isolamento. E grazie ai recenti progressi nella tecnologia dei compilatori, anche le pratiche di codifica non sicure nei casi peggiori possono essere protette se scritte in un linguaggio più vecchio. Questi sviluppi dovrebbero ridurre in modo significativo gli ostacoli all’adozione di pratiche di codifica sicure per le organizzazioni di qualsiasi dimensione.

Uno sforzo collaborativo verso un futuro sicuro

I politici e i fornitori devono collaborare strettamente per bilanciare il miglioramento della sicurezza con il mantenimento dei servizi software essenziali. L’adozione di linguaggi di programmazione memory-safe, come raccomandato dall’ONCD, è un passo cruciale in questo viaggio ed è parte integrante del progresso della nostra sicurezza informatica collettiva. 

Diversi leader del settore hanno già effettuato investimenti significativi in ​​linguaggi memory-safe. Esempi inclusi: 

  • Linguaggio di programmazione Rust di Mozilla: Con la sua enfasi sulla sicurezza della memoria, Rust offre una solida alternativa ai linguaggi di programmazione tradizionali che unisce sicurezza e prestazioni.

  • L'investimento di Microsoft in Rust: Riconoscendo che i linguaggi più vecchi hanno dei limiti, Microsoft ha abbracciato Rust e lo ha utilizzato in diversi nuovi progetti in cui la sicurezza della memoria era un problema.

  • Gli sforzi di Google per la sicurezza della memoria: Google ha investito notevoli risorse nell'individuazione e nella mitigazione delle vulnerabilità della sicurezza della memoria e ha richiesto l'utilizzo di linguaggi sicuri per la memoria nei nuovi sviluppi. La settimana scorsa, Google ha pubblicato un nuovo rapporto di ricerca, "Secure by Design: Google's Perspective on Memory Safety", sostenendo una strategia sicura fin dalla progettazione. Il rapporto si concentra sull’adozione di linguaggi con robuste funzionalità di sicurezza della memoria e riconosce i limiti dell’evoluzione del C++ per soddisfare questi standard.

Andare avanti: passi pratici per soddisfare le raccomandazioni ONCD

Il percorso delineato nell’ultimo rapporto ONCD è impegnativo, ma ricco di opportunità. Richiede passi concreti da parte di tutti gli attori all’interno degli ecosistemi di sviluppo software e sicurezza informatica, tra cui:

  • Istruzione e formazione: Le organizzazioni devono impegnarsi a insegnare ai propri team linguaggi sicuri per la memoria e pratiche di sviluppo sicure, garantendo che gli sviluppatori possano apportare le modifiche necessarie.

  • Piani di transizione graduali: Le organizzazioni dovrebbero creare piani per la transizione dei sistemi legacy verso linguaggi gestibili e sicuri per la memoria. Dovrebbero affrontare prima le aree più critiche e gradualmente avviare il progetto per ridurre al minimo le interruzioni operative.

  • Sfruttare gli strumenti di automazione: Le organizzazioni dovrebbero utilizzare strumenti e compilatori di analisi del codice moderni che individuino e risolvano automaticamente pratiche di codice non sicure riducendo al contempo il carico dei processi manuali.

  • Politica e governance: Le organizzazioni devono sviluppare costrutti di governance espliciti che garantiscano la sicurezza della memoria e proteggano le pratiche di sviluppo durante l'intero ciclo di vita dello sviluppo del software.

  • Comunità e collaborazione: È importante sottolineare che le organizzazioni dovrebbero raggiungere l’esterno delle proprie mura e la più ampia comunità tecnologica in forum, partnership e progetti open source per condividere le conoscenze, le sfide e le soluzioni sulla sicurezza della memoria che derivano da questo viaggio.

Miglioramento sicurezza nelle applicazioni che guidano l’economia digitale è un’impresa nobile e complessa ma necessaria che richiede una collaborazione continua tra il settore pubblico e quello privato. L'ultimo rapporto dell'ONCD rappresenta un solido passo successivo nell'articolazione della strategia; tuttavia, è necessaria più volontà per realizzare la visione. La transizione verso linguaggi di codifica memory-safe per nuove applicazioni e l'aggiornamento del codice legacy rappresentano sfide enormi. Tuttavia, si stanno facendo progressi grazie ai recenti progressi nell'analisi del software e nelle tecnologie dei compilatori e all'impegno dimostrato da molti leader tecnologici globali.

Timestamp:

Di più da Lettura oscura