Scansione intelligente. Gestione delle vulnerabilità Software vulnerabile

Un altro modo di considerare questo problema è che le aziende devono reagire rapidamente quando un’applicazione presenta una vulnerabilità. Ciò richiede che il reparto IT sia in grado di tracciare in modo definitivo applicazioni installate, componenti e patch utilizzando l'automazione e strumenti standard. È in corso uno sforzo da parte del settore per standardizzare i tag software (19770-2), che sono file XML installati con un'applicazione, un componente e/o una patch che identificano il software installato software e, nel caso di un componente o di una patch, di quale applicazione fanno parte. I tag contengono informazioni sull'autorità dell'editore, informazioni sulla versione, un elenco di file con nome file, hash e dimensioni sicuri del file, che possono essere utilizzati per confermare che l'applicazione installata è sul sistema e che file binari non sono stati modificati da terzi. Questi tag sono firmati digitalmente dall'editore.

Quando viene nota una vulnerabilità, i dipartimenti IT possono utilizzare il proprio software di gestione delle risorse per identificare immediatamente i sistemi con software vulnerabile e possono adottare misure per aggiornare i sistemi. I tag possono far parte di una patch o di un aggiornamento che può essere utilizzato per verificare che la patch sia stata installata. In questo modo, i dipartimenti IT possono utilizzare risorse come il NIST National Vulnerability Database come mezzo per gestire i propri strumenti di gestione delle risorse in modo che una volta che una vulnerabilità viene inviata a NVD da un'azienda, l'IT possa immediatamente confrontare le nuove vulnerabilità con le proprie.

Esiste un gruppo di aziende che lavora attraverso un'organizzazione no-profit IEEE/ISTO chiamata TagVault.org (www.tagvault.org) con il governo degli Stati Uniti su un'implementazione standard della ISO 19770-2 che consentirà questo livello di automazione. Ad un certo punto, questi tag corrispondenti a questa implementazione saranno probabilmente obbligatori per il software venduto al governo degli Stati Uniti nei prossimi due anni.

Quindi, in fin dei conti, è buona norma non pubblicare informazioni su quali app e versioni specifiche del software stai utilizzando, ma questo può essere difficile, come affermato in precedenza. Vuoi assicurarti di disporre di un inventario software accurato e aggiornato, che venga regolarmente confrontato con un elenco di vulnerabilità note come NVID di NVD e che l'IT possa intraprendere azioni immediate per porre rimedio alla minaccia con il rilevamento più recente, le intrusioni, la scansione antivirus e altre tecniche di blocco dell'ambiente renderanno come minimo molto difficile la compromissione del tuo ambiente e, se/quando ciò accade, non verrà rilevato per un lungo periodo di tempo.

Attualmente sviluppato gran numero strumenti progettati per automatizzare la ricerca delle vulnerabilità dei programmi. Questo articolo ne discuterà alcuni.

Introduzione

L'analisi statica del codice è un'analisi software che viene eseguita sul codice sorgente dei programmi e viene implementata senza eseguire effettivamente il programma in studio.

Il software contiene spesso varie vulnerabilità dovute a errori nel codice del programma. Errori commessi durante lo sviluppo dei programmi, in alcune situazioni, portano al fallimento del programma e, di conseguenza, al normale funzionamento del programma viene interrotto: ciò spesso comporta modifiche e danni ai dati, arresto del programma o addirittura del sistema. La maggior parte delle vulnerabilità sono associate all'elaborazione errata dei dati ricevuti dall'esterno o alla loro verifica non sufficientemente rigorosa.

Per identificare le vulnerabilità vengono utilizzati vari strumenti, ad esempio gli analizzatori statici codice sorgente programmi, una panoramica dei quali è fornita in questo articolo.

Classificazione delle vulnerabilità della sicurezza

Quando viene violato il requisito affinché un programma funzioni correttamente su tutti i possibili dati di input, diventa possibile la comparsa delle cosiddette vulnerabilità della sicurezza. Le vulnerabilità della sicurezza possono significare che un programma può essere utilizzato per superare i limiti di sicurezza di un intero sistema.

Classificazione delle vulnerabilità della sicurezza in base agli errori del software:

  • Overflow del buffer. Questa vulnerabilità si verifica a causa della mancanza di controllo sull'array fuori dai limiti della memoria durante l'esecuzione del programma. Quando un pacchetto di dati troppo grande supera il buffer di dimensione limitata, il contenuto delle posizioni di memoria estranee viene sovrascritto, causando l'arresto anomalo e l'uscita del programma. In base alla posizione del buffer nella memoria del processo si distinguono buffer overflow nello stack (stack buffer overflow), nell'heap (heap buffer overflow) e nell'area dati statica (bss buffer overflow).
  • Vulnerabilità dell'input contaminato. Le vulnerabilità dell'input rovinato possono verificarsi quando l'input dell'utente viene passato senza controllo sufficiente all'interprete di un linguaggio esterno (solitamente una shell Unix o un linguaggio SQL). In questo caso, l'utente può specificare i dati di input in modo tale che l'interprete lanciato esegua un comando completamente diverso da quello previsto dagli autori del programma vulnerabile.
  • Vulnerabilità della stringa di formato. Questo tipo Le vulnerabilità della sicurezza sono una sottoclasse della vulnerabilità "input contaminato". Si verifica a causa di un controllo insufficiente dei parametri quando si utilizzano le funzioni di formato I/O printf, fprintf, scanf, ecc. della libreria standard C. Queste funzioni accettano come uno dei loro parametri una stringa di caratteri che specifica il formato di input o output degli argomenti successivi della funzione. Se l'utente può specificare il tipo di formattazione, questa vulnerabilità potrebbe derivare da un uso non riuscito delle funzioni di formattazione delle stringhe.
  • Vulnerabilità derivanti da errori di sincronizzazione (race conditions). I problemi legati al multitasking portano a situazioni chiamate "race conditions": un programma che non è progettato per funzionare in un ambiente multitasking può credere, ad esempio, che i file che utilizza non possano essere modificati da un altro programma. Di conseguenza, un utente malintenzionato che sostituisce tempestivamente il contenuto di questi file di lavoro può forzare il programma a eseguire determinate azioni.

Naturalmente, oltre a quelle elencate, esistono altre classi di vulnerabilità della sicurezza.

Revisione degli analizzatori esistenti

I seguenti strumenti vengono utilizzati per rilevare le vulnerabilità della sicurezza nei programmi:

  • Debugger dinamici. Strumenti che consentono di eseguire il debug di un programma durante la sua esecuzione.
  • Analizzatori statici (debugger statici). Strumenti che utilizzano le informazioni accumulate durante l'analisi statica di un programma.

Gli analizzatori statici indicano i punti del programma in cui potrebbe essere localizzato un errore. Questi pezzi di codice sospetti possono contenere un errore o essere completamente innocui.

Questo articolo fornisce una panoramica di diversi analizzatori statici esistenti. Diamo uno sguardo più da vicino a ciascuno di essi.

La gestione delle vulnerabilità è l'identificazione, la valutazione, la classificazione e la selezione di una soluzione per affrontare le vulnerabilità. Il fondamento della gestione delle vulnerabilità sono gli archivi di informazioni sulle vulnerabilità, uno dei quali è il sistema di gestione delle vulnerabilità “Monitoraggio successivo”.

La nostra soluzione controlla la comparsa delle informazioni sulle vulnerabilità in sistemi operativi(basati su Windows, Linux/Unix), software per ufficio e applicativi, software per apparecchiature, strumenti per la sicurezza delle informazioni.

Origini dei dati

Il database del sistema di gestione delle vulnerabilità del software di monitoraggio della prospettiva viene aggiornato automaticamente dalle seguenti fonti:

  • Banca dati delle minacce alla sicurezza delle informazioni (BDU BI) FSTEC della Russia.
  • Database nazionale delle vulnerabilità (NVD) NIST.
  • Bugzilla con Cappello Rosso.
  • Tracciatore di bug di sicurezza Debian.
  • Lista di posta CentOS.

Utilizziamo anche un metodo automatizzato per aggiornare il nostro database delle vulnerabilità. Abbiamo sviluppato un web crawler e un parser di dati non strutturati che ogni giorno analizza più di cento diverse fonti straniere e russe attraverso una serie di parole chiave- gruppi nei social network, blog, microblog, media dedicati a tecnologie dell'informazione e garantire la sicurezza delle informazioni. Se questi strumenti trovano qualcosa che corrisponde ai criteri di ricerca, l'analista controlla manualmente le informazioni e le inserisce nel database delle vulnerabilità.

Monitoraggio delle vulnerabilità del software

Utilizzando il sistema di gestione delle vulnerabilità, gli sviluppatori possono monitorare la presenza e lo stato delle vulnerabilità rilevate nei componenti di terze parti del loro software.

Ad esempio, nel modello Secure Software Developer Life Cycle (SSDLC) di Hewlett Packard Enterprise, il controllo delle librerie di terze parti è centrale.

Il nostro sistema monitora la presenza di vulnerabilità in versioni/build parallele dello stesso prodotto software.

Funziona così:

1. Lo sviluppatore ci fornisce un elenco di librerie e componenti di terze parti utilizzati nel prodotto.

2. Controlliamo quotidianamente:

B. se sono apparsi metodi per eliminare le vulnerabilità scoperte in precedenza.

3. Informiamo lo sviluppatore se lo stato o il punteggio della vulnerabilità è cambiato, in conformità con il modello di ruolo specificato. Ciò significa che diversi team di sviluppo della stessa azienda riceveranno avvisi e vedranno lo stato delle vulnerabilità solo per il prodotto su cui stanno lavorando.

La frequenza degli avvisi del sistema di gestione delle vulnerabilità è configurabile, ma se viene rilevata una vulnerabilità con un punteggio CVSS superiore a 7,5, gli sviluppatori riceveranno un avviso immediato.

Integrazione con ViPNet TIAS

Il sistema software e hardware ViPNet Threat Intelligence Analytics System rileva automaticamente gli attacchi informatici e identifica gli incidenti in base agli eventi ricevuti da varie fonti sicurezza delle informazioni. La principale fonte di eventi per ViPNet TIAS è ViPNet IDS, che analizza il traffico di rete in entrata e in uscita utilizzando la base di regole decisionali AM Rules sviluppata da Perspective Monitoring. Alcune firme vengono scritte per rilevare lo sfruttamento delle vulnerabilità.

Se ViPNet TIAS rileva un incidente di sicurezza delle informazioni in cui è stata sfruttata una vulnerabilità, tutte le informazioni relative alla vulnerabilità, compresi i metodi per eliminare o compensare l'impatto negativo, vengono automaticamente inserite nella scheda incidente dal sistema di gestione.

Il sistema di gestione degli incidenti aiuta anche nelle indagini sugli incidenti legati alla sicurezza delle informazioni, fornendo agli analisti informazioni sugli indicatori di compromissione e sui potenziali nodi dell'infrastruttura informativa interessati dall'incidente.

Monitoraggio della presenza di vulnerabilità nei sistemi informativi

Un altro scenario per l'utilizzo di un sistema di gestione delle vulnerabilità è la scansione su richiesta.

Il cliente genera autonomamente, utilizzando strumenti integrati o uno script da noi sviluppato, un elenco di ciò che è installato sul nodo (workstation, server, DBMS, pacchetto software di sicurezza delle informazioni, apparecchiature di rete) software e componenti di sistema e applicativi, trasmette tale elenco al sistema di controllo e riceve un report sulle vulnerabilità rilevate e notifiche periodiche sul loro stato.

Differenze tra il sistema e gli scanner di vulnerabilità comuni:

  • Non richiede l'installazione di agenti di monitoraggio sui nodi.
  • Non crea un carico sulla rete, poiché l'architettura della soluzione stessa non fornisce agenti e server di scansione.
  • Non crea un carico sull'attrezzatura, poiché viene creata la lista dei componenti comandi del sistema o uno script open source leggero.
  • Elimina la possibilità di fuga di informazioni. Il “monitoraggio futuro” non può apprendere in modo affidabile nulla sulla posizione fisica e logica o sullo scopo funzionale di un nodo nel sistema informativo. L’unica informazione che esce dal perimetro controllato del cliente è un file txt con l’elenco dei componenti software. Il contenuto di questo file viene controllato dal cliente stesso e caricato nel sistema di controllo.
  • Affinché il sistema funzioni, non abbiamo bisogno di account sui nodi controllati. Le informazioni vengono raccolte dall'amministratore del sito per proprio conto.
  • Scambio sicuro di informazioni tramite ViPNet VPN, IPsec o https.

Il collegamento al servizio di gestione delle vulnerabilità Perspective Monitoring aiuta il cliente a soddisfare il requisito ANZ.1 “Identificazione e analisi delle vulnerabilità sistema informativo e pronta eliminazione delle vulnerabilità recentemente identificate” degli ordini n. 17 e 21 della FSTEC russa. La nostra azienda è licenziataria della FSTEC russa per le attività relative alla protezione tecnica delle informazioni riservate.

Prezzo

Costo minimo: 25.000 rubli all'anno per 50 nodi collegati al sistema se esiste un contratto valido per la connessione a

All'avvio scansione intelligente Avast controllerà il tuo PC per i seguenti tipi di problemi e poi suggerirà le soluzioni per loro.

  • Virus: file contenenti codice dannoso che può influire sulla sicurezza e sulle prestazioni del PC.
  • Software vulnerabile: programmi che richiedono aggiornamento e che possono essere utilizzati dagli aggressori per ottenere l'accesso al sistema.
  • Estensioni del browser con una cattiva reputazione: estensioni del browser che di solito vengono installate a tua insaputa e influiscono sulle prestazioni del sistema.
  • Password deboli: password utilizzate per accedere a più di una account online e possono essere facilmente hackerati o compromessi.
  • Minacce di rete: vulnerabilità nella tua rete che potrebbero consentire attacchi al tuo dispositivi di rete e un router.
  • Problemi di prestazioni: oggetti ( file non necessari e applicazioni, problemi legati alle impostazioni) che potrebbero interferire con il funzionamento del PC.
  • Antivirus in conflitto: programmi antivirus installati sul PC con Avast. Disponibilità di diversi programmi antivirus rallenta il PC e riduce l'efficacia della protezione antivirus.

Nota. Alcuni problemi rilevati da Smart Scan potrebbero richiedere una licenza separata per essere risolti. Il rilevamento di tipi di problemi non necessari può essere disabilitato in .

Risoluzione dei problemi rilevati

Un segno di spunta verde accanto all'area di scansione indica che non sono stati rilevati problemi in quell'area. Una croce rossa indica che la scansione ha identificato uno o più problemi correlati.

Per visualizzare dettagli specifici sui problemi rilevati, fare clic su Risolvi tutto. Smart Scan mostra i dettagli di ciascun problema e offre la possibilità di risolverlo immediatamente facendo clic sull'elemento Decidere oppure farlo in un secondo momento facendo clic Salta questo passaggio.

Nota. I registri della scansione antivirus possono essere visualizzati nella cronologia delle scansioni, a cui è possibile accedere selezionando Protezione antivirus.

Gestisci le impostazioni di scansione intelligente

Per modificare le impostazioni di Smart Scan, selezionare Impostazioni Generali Smart Scan e specifica per quale dei seguenti tipi di problemi desideri eseguire la scansione intelligente.

  • Virus
  • Software obsoleto
  • Componenti aggiuntivi del browser
  • Minacce di rete
  • Problemi di compatibilità
  • Problemi di prestazioni
  • Password deboli

Per impostazione predefinita, tutti i tipi di problemi sono abilitati. Per interrompere la verifica di un problema specifico durante l'esecuzione di una scansione intelligente, fare clic sul dispositivo di scorrimento Incluso accanto al tipo di problema in modo che cambi lo stato in Spento.

Clic Impostazioni accanto all'iscrizione Scansione antivirus per modificare le impostazioni di scansione.