Utenti Home       Utenti Aziendali       Chi Siamo       Contratto EULA.

Dettaglio news

Quick Heal sceglie l'Apprendimento automatico per migliorare l'individuazione delle minacce avanzate
- LUNEDÌ 5 FEBBRAIO 2018



Nel mondo di oggi, in rapida evoluzione, il panorama delle minacce informatiche sta diventando sempre più complesso e i sistemi di individuazioni basati sulle firme deimalware stessi non sono più sufficienti a proteggere gli endpoint. Tutte le principali soluzioni di sicurezza sono realizzate con modelli di sicurezza a più livelli per proteggere gli endpoint dalle minacce più avanzate di oggi. Anche il rilevamento basato sull'apprendimento automatico sta diventando una componente inevitabile di questi modelli di sicurezza multi-layered. In questo post, discuteremo di come Quick Heal sta incorporando l'apprendimento automatico (ML) nei suoi prodotti per proteggere gli endpoint.

Quick Heal e l'Intelligenza Artificiale
L'uso del ML (machine learning) o dell'AI (intelligenza artificiale) è già stato adottato nell'industria della sicurezza. Noi di Quick Heal utilizziamo il ML per diversi casi d'uso: uno di questi è uno dei livelli iniziali della nostra difesa multilivello. L'obiettivo principale di questo livello è determinare la sospettosità di un determinato file. Se un file viene rilevato come sospetto,verrà esaminato dai livelli successivi. Questo filtro riduce il carico sugli altri livelli di sicurezza.

In questo articolo illustreremo come usiamo l'analisi statica dei file PE usando ML per filtrare il traffico inviato ai livelli di sicurezza successivi.

Una Panoramica sull'Apprendimento Automatico
Nell'apprendimento automatico, cerchiamo di dare ai computer la possibilità di apprendere dai dati anziché programmarli esplicitamente. Nella gestione delle minacce possiamo utilizzare i vantaggi dell'apprendimento automatico per creare un modello che sia formato dai dati noti su file puliti o dannosi e che possa apprendere automaticamente come affinare la modalità di individuazione dei file sconosciuti, ma potenzialmente pericolosi. Il requisito chiave per la costruzione di modelli basati sull'Apprendimento Automatico è disporre di dati utili per la formazione, che devono essere categorizzati con precisione, pena l'ottenimento di falsi positivi, risultati e previsioni potenzialmente fuorvianti.

Il processo inizia con l'organizzazione di un set, raccogliendo un gran numero di campioni puliti e dannosi e etichettandoli. Estraiamo le caratteristiche da questi campioni (per i nostri modelli abbiamo estratto le caratteristiche dalle intestazioni PE di tutti i campioni raccolti). Quindi il modello viene formato fornendo tali matrici di caratteristiche - come mostrato nello schema a blocchi sottostante.
L' insieme delle caratteristiche di un file sconosciuto viene fornito al modello, il quale restituisce un punteggio di affidabilità di quel campione: il modello così suggerirà se il file in esame sia più simile a un set pulito o malevolo.

Come avviene la selezione delle caratteristiche?
Una caratteristica è una proprietà misurabile specifica o propria delle cose osservate. Ad esempio, se vogliamo classificare cani e gatti possiamo prendere caratteristiche come "tipo di pelliccia", "ama la compagnia degli altri o ama stare da solo", "abbaia o no", "numero di zampe", "molto forte", "artigli ", ecc.

La selezione delle caratteristiche è uno dei passaggi più importanti nella formazione di qualsiasi modello di Apprendimento Automatico. Come mostrato nell'esempio precedente, se selezioniamo "numero di zampe" come caratteristica sulla quale basare l'apprendimento automatico, non avremo un buon livello di apprendimento: non sarà ad esempio possibile distinguere cani e gatti, poiché hanno lo stesso numero di zampe. Al contrario caratteristiche come "abbaia o no", oppure  "prontezza degli artigli" sono degli ottimi classificatori.

Alla stessa maniera, abbiamo bisogno di avere set di caratteristiche efficaci per differenziare correttamente i file dannosi da quelli puliti. Iniziamo quindi con la derivazione degli attributi dell'intestazione del file PE, che richiede un minor numero di calcoli. Abbiamo alcune caratteristiche booleane come "EntryPoint present in First Section", "Resource present" o "Section has a special character in its name" e  alcuni elementi basati su valori o calcoli come "NumberOfSections", "File TimeDateStamp", ecc. Alcune di queste funzionalità sono talmente forti che spesso possono essere utilizzate come separatore per campioni dannosi e benigni. Cercheremo di spiegarlo seguendo due esempi. Come mostrato nel seguente grafico, nella maggior parte dei casi, per i file puliti, la sezione del punto di ingresso è la sezione 0, ma per i file dannosi potrebbe variare.


Allo stesso modo, per un indice di "First empty section" di un file, otteniamo il seguente grafico.

Ridimensionamento delle funzionalità
I dati che forniamo al nostro modello devono essere adattati correttamente. Ad esempio, il valore dell'attributo come Address_OF_EntryPoint = 307584 avrà un valore molto elevato se confrontato con il valore di un attributo come No_Of_Sections = 5. Un'enorme differenza può causare una scarsa formazione del nostro modello. Utilizziamo il ridimensionamento min_max per ridimensionare i dati, in questo modo portiamo tutte le funzionalità allo stesso intervallo, in questo caso, da 0 a 1.

Riduzione della dimensionalità
Il passo successivo è la riduzione della dimensionalità. Nei dati, molte volte ci sono gruppi di caratteristiche che sono correlate l'una con l'altra, cioè se una caratteristica cambia, anche le altre cambiano in una certa misura. La rimozione o la combinazione di tali funzionalità consente di risparmiare spazio e tempo e migliora le prestazioni dei modelli di apprendimento automatico. Questo processo di riduzione del numero di funzioni indesiderate o ridondanti è noto come riduzione della dimensionalità. Ciò garantisce che i modelli vengano addestrati e testati più velocemente senza compromettere la precisione. 

Formazione
Il prossimo passo riguarda la formazione del modello. Durante la formazione, dobbiamo concentrarci sui seguenti parametri:
  • Dimensione del modello: il modello generato da qualsiasi algoritmo dovrebbe avere una dimensione ottimale e l'aggiornamento dovrebbe richiedere il minimo sforzo.
  • Tempo di formazione: tempo e risorse utilizzati da un algoritmo durante la formazione dovrebbero essere minimi (anche se non è un requisito primario).
  • Tempo di previsione: la funzione di previsione deve essere il più veloce possibile.
  • Sovradattamento: alcuni algoritmi funzionano molto bene su piccoli set di dati. Ma, man mano che questi crescono, i risultati tendono a calare, ciò è definito sovradattamento.
Abbiamo provato alcuni algoritmi; la regressione logistica ha funzionato bene su piccoli set di dati, ma tende a sovradattarsi e l'accuratezza si riduce man mano che aumentiamo il set di formazione. 

Quindi abbiamo provato Random Forest Classifier. La precisione qui è buona ma la dimensione del modello che viene generata è esagerata, in quanto è una "foresta" di più "alberi decisionali". Inoltre, la funzione di predizione richiede tempo in quanto gli alberi devono essere  presi in esame. Quindi ci siamo "trasferiti" a SVM (Support Vector Machine)

Support vector machine
Support vector machine (SVM) è un algoritmo di apprendimento automatico supervisionato che può essere utilizzato sia per le sfide di classificazione che di regressione. Tuttavia, è utilizzato principalmente per risolvere problemi di classificazione. In questo algoritmo tracciamo ogni elemento di dati come un punto nello spazio n-dimensionale (dove n è un conteggio delle caratteristiche selezionate) con il valore di ciascuna caratteristica impostato come il valore di una particolare coordinata. Quindi, eseguiamo una classificazione trovando l'iperpiano che differenzia correttamente le due classi.

Possono esserci molti iperpiani che classificano i dati, ma i target di SVM individuano un iperpiano che ha la maggiore distanza dal campione più vicino su entrambi i lati del piano.

Ad esempio, qui SVM sceglierà il piano C, tra A e B.

Conclusione
L'apprendimento automatico può essere efficacemente utilizzato dall'industria antivirus e i casi d'uso sono enormi. Quick Heal si impegna a portare le ultime ricerche in ambito di ML per riformare la sicurezza degli endpoint. A Quick Heal, pratichiamo il ML in varie fasi e il case study sopra è uno di questi. In futuro, condivideremo commenti su altri casi di studio.


Leggi tutte le news     |     Leggi tutti gli update
Ultime news

VENERDÌ 16 FEBBRAIO 2018
Quick Heal: report annuale 2018 sulle minacce informatiche. Ransomware e Exploit.
Il report annuale fornisce una panoramica dei rischi informatici più pericolosi e diffusi del 2017, per home user e aziende. Si divide in due sezioni, una per Windows e u...

leggi tutte le news

Premi e Certificazioni

La qualità dei prodotti Quick Heal vanta innumerevoli premi e certificazioni a testimonianza della sempre crescente importanza del marchi a livello mondiale nel settore Antivirus e sicurezza informatica

Continua a leggere »

Chi siamo
Panoramica
La nostra storia
Premi & Certificazioni
Scheda riepilogativa
Clienti
Dicono di noi
Trova un rivenditore
Manuali e documentazione
Chiedi aiuto
Contatti
Update
Rivenditori
Diventa rivenditore
Strumenti di supporto
Link rapidi
Rinnova ora
File di installazione
Versioni di prova
Supporto
Contratto EULA.
Download Upgrade


S-MART è un marchio di proprietà netWork Sas
P.IVA: 05345670482

© 2018 nwk - Privacy Policy - Login