Diventa Autore per CoreTech | Scopri di più





Come gli scanner trovano le vulnerabilità

01/03/21 CoreTech Blog

Gli scanner di vulnerabilità non sono così diversi dagli scanner di virus. In entrambi i casi, l'obiettivo del software è trovare qualcosa fuori dall'ordinario nel target. Uno scanner antivirus esegue la scansione delle risorse locali e della memoria locale di un computer per trovare software potenzialmente dannoso. Uno scanner di vulnerabilità esegue la scansione di un tipo di obiettivo per trovare software potenzialmente vulnerabile. Entrambi usano tecniche simili per farlo.

Scansione basata sulla firma

Nel caso della scansione basata sulla firma, lo scanner cerca modelli riconoscibili, che sono preparati dal produttore dello scanner o presi da un database pubblico. Per esempio:

Banner

  • Uno scanner antivirus cerca una certa catena di byte presenti in un file eseguibile dannoso. Se trova quella catena di byte, presume che il file dannoso sia stato trovato.
  • Uno scanner di rete cerca una determinata risposta dal server per riconoscere la versione esatta del software utilizzato dal server. Può essere semplice come il software risponde effettivamente con le informazioni sulla versione o più complesso, ad esempio, riconoscendo un determinato comportamento tipico.

Ci sono diversi vantaggi nella scansione basata sulla firma:

  • Di solito è abbastanza veloce perché non è necessario eseguire alcuna operazione tranne il confronto di catene di byte dalla libreria dello scanner con catene di byte ricevuti dalla destinazione.
  • È meno invadente e non ha quasi effetti collaterali.
  • È molto semplice per il produttore dello scanner perché non è necessario scrivere codice personalizzato. Esistono anche database di firme di dominio pubblico, che possono essere utilizzati per creare il proprio database.

Sfortunatamente, ci sono anche alcuni importanti svantaggi in questo tipo di scansione:

  • Non è sempre molto preciso. La firma non garantisce che il risultato trovato sia dannoso.
  • Non c'è assolutamente alcuna prova che il risultato segnalato sia dannoso. Poiché lo scanner confronta solo le firme, non verifica se le sue ipotesi sono vere.
  • La maggior parte degli scanner è limitata alle firme note e non è in grado di riconoscere mutazioni (ad esempio, una firma con un byte diverso), irregolarità (ad esempio, un server configurato in modo diverso) o nuove minacce.

Scansione basata sul comportamento (scansione euristica)

L'altro modo per eseguire la scansione di contenuti dannosi è analizzare effettivamente il comportamento del target. Ciò significa che lo scanner deve comprendere il modo in cui funziona l'obiettivo, non solo confrontare una firma. Per esempio:

  • Quando uno scanner antivirus euristico trova un file potenzialmente eseguibile, può eseguire il reverse engineering su di esso per verificare esattamente cosa fa il codice (per verificare se le sue azioni sono dannose). Potrebbe anche provare a eseguire il codice in un ambiente sicuro per vedere i risultati.
  • Quando uno scanner di vulnerabilità web trova un elemento che consente l'input dell'utente, cerca di "ingannare il bersaglio" inviando dati imprevisti. Quindi analizza la risposta del target per vedere se ha avuto successo.

La scansione euristica presenta alcuni importanti vantaggi:

  • Teoricamente, è in grado di trovare qualsiasi tipo di minaccia, anche personalizzata o zero-day. Ovviamente, dipende da quanto è avanzato il software.
  • È più preciso perché controlla effettivamente se le sue ipotesi sono corrette. A volte, può persino fornire una prova.

Sfortunatamente, anche la scansione euristica presenta alcuni svantaggi:

  • Potresti trovarlo molto più dispendioso in termini di risorse rispetto alla scansione basata sulla firma. Uno scanner euristico ha bisogno di più tempo per trovare i risultati e potrebbe rallentare il target più di uno scanner basato sulla firma.
  • Costruire un buon scanner euristico è molto difficile e richiede il massimo talento. A differenza degli scanner basati sulla firma, ogni nuovo tipo di attacco deve essere programmato e simulato. Una libreria di scanner euristici non è solo un elenco di stringhe da confrontare: richiede un software personalizzato effettivo per ogni tipo di controllo.

Il meglio dei due mondi

Molti scanner professionali tentano di utilizzare entrambi i tipi di scansione, ma il tipo principale dipende molto dal tipo di scansione eseguita:

  • Gli scanner antivirus sono quasi sempre principalmente basati sulle firme. Alcuni scanner antivirus avanzati dispongono anche di una scansione basata sul comportamento, ma spesso è facoltativa (poiché tali scansioni richiedono più tempo e risorse).
  • Gli scanner di rete sono quasi sempre basati sulla firma. Questo perché gli scanner di rete si concentrano sulla ricerca di versioni software obsolete e configurazioni errate, che possono essere facilmente riconosciute utilizzando le firme.
  • Gli scanner di vulnerabilità Web sono sempre principalmente euristici, ma possono utilizzare firme laddove appropriato.

Articoli su Sicurezza

Sicurezza aziendale: da cosa è minacciata e come proteggerla?Il threat modeling per la sicurezza delle applicazioniScanner di vulnerabilità: ecco come funzionanoWeb security: 5 motivi per cui è essenziale contro i ransomwareChe cos'è DevSecOps e come dovrebbe funzionare?Test di penetrazione vs scansione delle vulnerabilitàConsiderazioni sui test di correzione delle applicazioni WebQuattro modi in cui l'analisi AppSec aiuta i tuoi professionisti DevSecOpsQuattro modi per combattere il divario di competenze di sicurezza informaticaDove i framework di cybersecurity incontrano la sicurezza webCome costruire un piano di risposta agli incidenti informaticiRendi i tuoi utenti parte della soluzione di sicurezza webSei l'unico che può proteggere le tue applicazioni webNuovo studio di settore: il 70% dei team salta i passaggi di sicurezzaConvergenza Dev-Sec: i progressi e le sfide sulla strada per garantire l'innovazioneAggiornamento FISMA: cosa sta cambiando e perché è importanteChe cos'è la sicurezza continua delle applicazioni Web?Sei l'unico che può proteggere le tue applicazioni webCos'è la sicurezza del sito Web: come proteggere il tuo sito Web dall'hackingRendi i tuoi utenti parte della soluzione di sicurezza webConvergenza Dev-Sec: la ricerca illustra i progressi per garantire l'innovazioneAggiornamento FISMA: cosa sta cambiando e perché è importanteChe cos'è la sicurezza continua delle applicazioni Web?La differenza tra XSS e CSRFNuovo studio di settore: il 70% dei team salta i passaggi di sicurezzaPrevenzione e mitigazione XSSStop ai compromessi sulla sicurezza delle applicazioni webSfatare 5 miti sulla sicurezza informaticaBasta compromessi sulla sicurezza delle applicazioni webNozioni di base sulla sicurezza web: la tua applicazione web è sicura?Che cos'è l'iniezione dell’header HTTP?Fare shift left o no?Individuazione e correzione di falle di sicurezza in software di terze partiClassi di vulnerabilità Web nel contesto delle certificazioniScripting tra siti (XSS)Che cos'è un attacco CSRFChe cos'è una SQL Injection (SQLi) e come prevenirlaAttacchi di attraversamento di directoryChe cos'è la falsificazione delle richieste lato server (SSRF)?7 migliori pratiche per la sicurezza delle applicazioni WebBlack Hat 2021: la più grande minaccia alla sicurezza informaticaÈ ben fatto? Chiedi allo sviluppatore!Scegli la soluzione di sicurezza delle applicazioni web che fa per teSicurezza fai-da-te: lo stai facendo bene?Sulla sicurezza delle applicazioni web professionali per MSSPLa cattiva comunicazione è al centro delle sfide di AppSecImpostazione e raggiungimento degli obiettivi di sicurezza delle applicazioniMetriche di sicurezza informatica per le applicazioni WebCome evitare attacchi alla supply chainPerché la maggior parte delle misure di sicurezza delle applicazioni fallisceVuoi che la tua sicurezza sia costruita su scuse?Cos'è SCA e perché ne hai bisognoLa scansione ad hoc non è sufficienteEsposizione dei dati sensibili: come si verificano le violazioniHai paura dei test di sicurezza nell'SDLC?Vantaggi di Web Asset DiscoveryStrumenti di scansione delle vulnerabilità: perché non open source?Protezione WAF - Ottieni il massimo dal tuo firewall per applicazioni webL'errore di comunicazione è al centro delle sfide di AppSecDebugger remoti come vettore di attaccoDAST è una parte essenziale di un programma completo per la sicurezza delle applicazioniCome difendersi dagli attacchi recenti su Microsoft Exchange5 principali vantaggi dei primi test di sicurezzaTecniche di attacco Denial-of-Service con avvelenamento della cacheQuali principali attacchi web possiamo aspettarci nella nuova top 10 di OWASP?Hack di SolarWindsPillole di Sicurezza | Episodio 38Pillole di Sicurezza | Episodio 37Perché gli sviluppatori evitano la sicurezza e cosa puoi fare al riguardoPillole di Sicurezza | Episodio 36Cos'è l'attacco RUDYCos'è la navigazione forzataCome gli scanner trovano le vulnerabilitàPillole di Sicurezza | Episodio 34Pillole di Sicurezza | Episodio 35Come eseguire il benchmark di uno scanner di vulnerabilità Web?Pillole di Sicurezza | Episodio 33Pillole di Sicurezza | Episodio 325 proposte di vendita comuni sulla sicurezza delle applicazioni web5 motivi per non fare affidamento sui programmi BountyPillole di Sicurezza | Episodio 315 motivi per cui la sicurezza web è importante quanto la sicurezza degli endpointPillole di Sicurezza | Episodio 305 motivi per cui la sicurezza web è importante per evitare il ransomwarePillole di Sicurezza | Episodio 293 motivi per cui DAST è il migliore per la sicurezza delle applicazioni WebPillole di Sicurezza | Episodio 28Pillole di Sicurezza | Episodio 27Pillole di Sicurezza | Episodio 24Pillole di Sicurezza | Episodio 25Pillole di Sicurezza | Episodio 21Pillole di Sicurezza | Episodio 22Pillole di Sicurezza | Episodio 20Pillole di Sicurezza | Episodio 17Il flag HttpOnly: protezione dei cookie da XSSPillole di Sicurezza | Episodio 16Il Bug Heartbleed – I vecchi Bug sono duri a morirePillole di Sicurezza | Episodio 15Pillole di Sicurezza | Episodio 14Pillole di Sicurezza | Episodio 13Pillole di Sicurezza | Episodio 12Pillole di Sicurezza | Episodio 11Pillole di Sicurezza | Episodio 10Sicurezza delle reti: gli hacker puntano CitrixCyber hacking: la Germania chiede l’intervento dell’UESicurezza informatica: Cisco rilascia aggiornamentiOcchio al cryptojacking: malware infiltrato in Docker HubSIGRed: bug di sistema in Windows Server scovato dopo 17 anniPillole di Sicurezza | Episodio 9Summit Live - Disponibili le registrazioni delle live di MonteleoneCriminalità informatica: Schmersal sventa un cyber-attaccoPillole di Sicurezza | Episodio 8Pillole di Sicurezza | Episodio 7Analisi pratica dei rischi per il SysAdmin, DevOps e Dev | Summit LivePillole di Sicurezza | Episodio 6Pillole di Sicurezza | Episodio 5Pillole di Sicurezza | Episodio 4Pillole di Sicurezza | Episodio 3Pillole di Sicurezza | Episodio 2Pillole di Sicurezza | Episodio 1Pillole di Sicurezza | Episodio 23