it-swarm.dev

Qual è la differenza tra un test di penetrazione e una valutazione di vulnerabilità?

Qual è la differenza tra un test di penetrazione e una valutazione di vulnerabilità?

Perché dovresti scegliere l'uno rispetto all'altro?

Quali risultati ti aspetti di ricevere e come valuteresti la loro qualità?

30
Sim

Sono sicuro di aver pubblicato una risposta in precedenza, ma il mio google-fu deve essere debole questa mattina. Dal mio post sul blog sulla tassonomia della penetrazione, abbiamo un elenco di tipi di test che sta ottenendo l'accettazione. Inoltre, lavorando con Standard di esecuzione dei test di penetrazione speriamo di sviluppare ulteriormente questo. Questo elenco dovrebbe aiutare a spiegare come scegliere l'uno rispetto all'altro.

I risultati finali sono quasi un problema separato e dovrebbero essere definiti dalla necessità e dal pubblico (ad es. Per un organo di governance non ti aspetteresti gli stessi dettagli che forniresti a un team di riparazione tecnica, ma vorresti includere informazioni sui rischi aziendali) . Esiste anche un flusso di rapporti nello sviluppo di PTES per provare a codificare quest'area:

Discovery

Lo scopo di questa fase è identificare i sistemi nell'ambito e i servizi in uso. Non ha lo scopo di rilevare le vulnerabilità, ma il rilevamento della versione può evidenziare versioni obsolete di software/firmware e quindi indicare potenziali vulnerabilità.

Scansione vulnerabilità

A seguito della fase di scoperta, vengono individuati problemi di sicurezza noti utilizzando strumenti automatizzati per abbinare le condizioni a vulnerabilità note. Il livello di rischio segnalato viene impostato automaticamente dallo strumento senza verifica o interpretazione manuale da parte del fornitore del test. Questo può essere integrato con una scansione basata sulle credenziali che cerca di rimuovere alcuni falsi positivi comuni usando le credenziali fornite per autenticarsi con un servizio (come gli account Windows locali).

Valutazione della vulnerabilità

Questo utilizza la scansione di individuazione e vulnerabilità per identificare le vulnerabilità di sicurezza e mette i risultati nel contesto dell'ambiente sotto test. Un esempio potrebbe essere la rimozione di falsi positivi comuni dal report e la determinazione dei livelli di rischio che dovrebbero essere applicati a ciascun report per migliorare la comprensione e il contesto aziendale.

Valutazione della sicurezza

Si basa sulla valutazione delle vulnerabilità aggiungendo la verifica manuale per confermare l'esposizione, ma non include lo sfruttamento delle vulnerabilità per ottenere un ulteriore accesso. La verifica potrebbe essere sotto forma di accesso autorizzato a un sistema per confermare le impostazioni del sistema e coinvolgere l'esame di registri, risposte di sistema, messaggi di errore, codici, ecc. Una valutazione della sicurezza sta cercando di ottenere un'ampia copertura dei sistemi sotto test ma non la profondità di esposizione che una vulnerabilità specifica potrebbe comportare.

Test di penetrazione

Il test di penetrazione simula un attacco da parte di un malintenzionato. Basandosi sulle fasi precedenti e comporta lo sfruttamento delle vulnerabilità rilevate per ottenere un ulteriore accesso. L'uso di questo approccio consentirà di comprendere la capacità di un utente malintenzionato di ottenere l'accesso a informazioni riservate, influire sull'integrità dei dati o sulla disponibilità di un servizio e il relativo impatto. Ogni test viene affrontato utilizzando una metodologia coerente e completa in modo da consentire al tester di utilizzare le proprie capacità di problem solving, l'output da una gamma di strumenti e la propria conoscenza della rete e dei sistemi per trovare vulnerabilità che potrebbero/non potrebbero essere identificate da strumenti automatizzati. Questo approccio esamina la profondità dell'attacco rispetto all'approccio di valutazione della sicurezza che esamina la copertura più ampia.

Audit di sicurezza

Guidato da una funzione di audit/rischio per esaminare un controllo specifico o un problema di conformità. Caratterizzato da un ambito ristretto, questo tipo di impegno potrebbe avvalersi di uno qualsiasi dei precedenti approcci discussi (valutazione della vulnerabilità, valutazione della sicurezza, test di penetrazione).

Revisione della sicurezza

Verifica che gli standard di sicurezza interni o del settore siano stati applicati ai componenti di sistema o al prodotto. Questo viene in genere completato mediante gap gap e utilizza revisioni di build/codice o rivedendo documenti di progettazione e diagrammi di architettura. Questa attività non utilizza nessuno degli approcci precedenti (valutazione della vulnerabilità, valutazione della sicurezza, test di penetrazione, audit di sicurezza)

27
Rory Alsop

Oltre alle risposte già fornite, analizzerò il motivo per cui è possibile scegliere uno sopra l'altro. Le valutazioni di vulnerabilità sono più utili se non si è sicuri della propria posizione di sicurezza attuale e si vuole farsi un'idea di dove potrebbero trovarsi i problemi.

Vale la pena notare che, come tutte le attività di sicurezza, le valutazioni della vulnerabilità non sono tutte uguali. Per alcuni fornitori potrebbe concentrarsi esclusivamente sull'output degli strumenti, mentre altri faranno più lavoro manuale per verificare ed estendere tali risultati.

Se questo è il tuo obiettivo, mi concentrerei sul tipo di approccio di "valutazione della sicurezza" menzionato nella risposta di @ RoryAlsop.

Un test di penetrazione è, in genere, progettato per replicare le azioni di un utente malintenzionato nel tentativo di compromettere la sicurezza di un sistema o di un'organizzazione. Quindi, questo è probabilmente più appropriato per le organizzazioni che sono fiduciose sui controlli di sicurezza in atto per un determinato sistema e vogliono dimostrare o confutare la loro efficacia.

Tuttavia, ci sono problemi con questo approccio, a seconda di chi sono i tuoi aggressori. Se stai cercando di progettare controlli che possano difendersi da abili aggressori mirati (ad esempio, criminalità organizzata), è molto difficile utilizzare in modo efficace un test di penetrazione per controllarli, poiché non includerà alcune tecniche che gli aggressori possono utilizzare.

Alcuni esempi di aree che i test di penetrazione avranno difficoltà a coprire a causa di problemi legali potrebbero essere, ad esempio, il targeting dei PC di casa del personale per la compilazione delle strutture di accesso remoto, l'attacco a partner di terze parti che potrebbero avere accesso ai sistemi di destinazione a fini di supporto o l'acquisto di botnet che potrebbero avere zombi già presenti nell'ambiente di destinazione.

Quindi vale la pena essere consapevoli dei limiti di entrambi i tipi di test, ma una regola empirica generale è che VA e le valutazioni di sicurezza sono buone quando non si è sicuri della propria sicurezza e penetrazione i test sono buoni per dimostrarlo una volta che lo sai.

11
Rory McCune

Per la maggior parte delle persone, sono uguali. Ecco perché gli sforzi come PTES falliranno. Non puoi cambiare le persone che non vogliono cambiare.

La domanda corretta è: "Qual è la differenza tra test di penetrazione e hacking etico?".

La risposta a questa domanda è che i test di penetrazione hanno in mente un premio specifico, senza limiti di tempo e di solito un lungo elenco di regole di ingaggio (quelle di breve elenco chiedono che nessuno sia fisicamente danneggiato o minacciato). L'hacking etico è un'attività time-box in cui vengono scoperti il ​​maggior numero possibile di difetti, in genere utilizzando solo metodi non fisici.

"Valutazioni", "audit" e "test" sono in genere parole intercambiabili nel campo della sicurezza delle informazioni. Le parole "vulnerabilità", "minaccia" e alcune altre sono generalmente fraintese e male interpretate. Professionisti con 20 anni di esperienza, lo stesso background e le stesse certificazioni discuteranno in genere di questi termini di base. È meglio ignorare ciò che qualcuno "dice" o "pensa" è la risposta giusta - e invece andare con il tuo istinto e buon senso quando applichi il termine in una conversazione con i non iniziati.

5
atdre

Il problema con questa domanda è che non esiste una definizione rigorosa/seguita per ciò che significa "test di penetrazione" nel settore. Alcune persone brillanti di tutta la comunità si sono riunite per risolvere quel problema, formando il " Penetration Testing Execution Standard ."

Tenta di definire ogni fase di un test di penetrazione al fine di stabilire un'aspettativa ragionevole sulla quale i dirigenti aziendali e i Penetration Test possono basare le loro interazioni.

Le fasi che elencano sono

  1. Interazioni pre-coinvolgimento
  2. Raccolta di informazioni
  3. Modellazione delle minacce
  4. Analisi vulnerabilità
  5. Exploitation
  6. Post Exploitation
  7. Reporting

Ecco una definizione annacquata di ciascuno. Per avere un'immagine chiara, dovresti leggere le pagine wiki collegate.

Le interazioni pre-coinvolgimento comportano la definizione dell'ambito e delle regole di ingaggio, insieme a molti aspetti orientati al business.

Intelligence Gathering è la fase di ricognizione in cui l'attaccante impara il più possibile sull'obiettivo (aspetti sia umani che tecnici) da utilizzare durante l'analisi e lo sfruttamento delle vulnerabilità .

La modellazione delle minacce comporta l'identificazione di risorse e minacce, la loro categorizzazione e infine l'associazione.

Analisi delle vulnerabilità "è il processo di scoperta di difetti nei sistemi e nelle applicazioni che possono essere sfruttati da un utente malintenzionato." Le persone spesso credono erroneamente che questo e lo sfruttamento siano tutto ciò che riguarda i test di penetrazione.

Exploitation "si concentra esclusivamente sulla creazione dell'accesso a un sistema o una risorsa ignorando le restrizioni di sicurezza."

Post-Exploitation è la determinazione del valore delle macchine compromesse e il mantenimento del controllo per un uso successivo. In questa fase puoi raccogliere informazioni che ti consentono di andare più in profondità (le ovvie credenziali).

Rapporti "[comunica] gli obiettivi, i metodi e i risultati dei test condotti a vari pubblici."

Se stanno riuscendo nella loro missione o meno è in discussione, ma credo che questo sia un buon posto per sviluppare un inizio per una comprensione approfondita.

Esiste anche " Linee guida tecniche PTES " che ripercorre tattiche e strumenti che potrebbero essere utilizzati durante un test di penetrazione.

5
chao-mu

Non voglio scrivere qualcosa a lungo per questo, ma eccone uno divertente che la maggior parte dei tester della penna condivide:

  • Ho un client che ha ricevuto scansioni PCI ASV per anni (ovvero una valutazione di vulnerabilità esterna senza che siano state rilevate vulnerabilità gravi, alte o critiche). Una scansione "pulita" secondo PCI.
  • E negli ultimi anni tutti i loro database interni possono essere esfiltrati, non rilevati, tramite test di penna specializzati (per non parlare anche di attacchi lato client, ingegneria sociale, test di penna fisici, phishing)

Il test con la penna, almeno nell'angolo in cui mi trovo, ha lo scopo di simulare un attacco da parte di un avversario motivato. Le valutazioni di vulnerabilità sono in genere qualcosa di molto meno.

4
Tate Hansen

L'analisi delle vulnerabilità è il processo di identificazione delle vulnerabilità su una rete, mentre un Penetration Test si concentra sull'ottenere effettivamente l'accesso non autorizzato ai sistemi testati e sull'utilizzo di tale accesso alla rete o ai dati, come indicato dal client. Un'analisi di vulnerabilità fornisce una panoramica dei difetti che esistono sul sistema mentre un Test di penetrazione continua per fornire un'analisi di impatto dei difetti identifica il possibile impatto del difetto sulla rete sottostante, sul sistema operativo, sul database ecc. L'analisi della vulnerabilità è maggiore di un processo passivo. In Vulnerability Analysis si utilizzano strumenti software che analizzano sia il traffico di rete che i sistemi per identificare eventuali esposizioni che aumentano la vulnerabilità agli attacchi. Il Penetration Test è una pratica attiva in cui gli hacker etici sono impiegati per simulare un attacco e testare la resistenza della rete e dei sistemi.

Ho scritto un post completo su questo. Leggi qui: http://www.ivizsecurity.com/blog/penetration-testing/difference-vulnerability-penetration-testing/

4
RudraK