Metodologia di valutazione
Negli ultimi tempi, sia il governo che le organizzazioni private hanno assunto la sicurezza informatica come priorità strategica. I criminali informatici hanno spesso fatto del governo e delle organizzazioni private i loro obiettivi morbidi utilizzando diversi vettori di attacco. Sfortunatamente, a causa della mancanza di politiche efficienti, standard e complessità del sistema informativo, i criminali informatici hanno un gran numero di obiettivi e stanno avendo successo nello sfruttare il sistema e anche nel rubare informazioni.
Il test di penetrazione è una strategia che può essere utilizzata per mitigare i rischi degli attacchi informatici. Il successo dei test di penetrazione dipende da una metodologia di valutazione efficiente e coerente.
Abbiamo una varietà di metodologie di valutazione relative ai test di penetrazione. Il vantaggio dell'utilizzo di una metodologia è che consente ai valutatori di valutare un ambiente in modo coerente. Di seguito sono riportate alcune metodologie importanti:
Open Source Security Testing Methodology Manual (OSSTMM)
Apri Web Application Security Project (OWASP)
Istituto nazionale di standard e tecnologia (NIST)
Penetration Testing Execution Standard (PTES)
Cos'è PTES?
PTES, standard di esecuzione dei test di penetrazione, come suggerisce il nome, è una metodologia di valutazione per i test di penetrazione. Copre tutto ciò che riguarda un test di penetrazione. Abbiamo una serie di linee guida tecniche, all'interno di PTES, relative a diversi ambienti che un valutatore può incontrare. Questo è il più grande vantaggio dell'utilizzo del PTES da parte dei nuovi valutatori perché le linee guida tecniche contengono i suggerimenti per affrontare e valutare l'ambiente all'interno degli strumenti standard del settore.
Nella sezione seguente, impareremo le diverse fasi di PTES.
Sette fasi del PTES
Lo standard di esecuzione dei test di penetrazione (PTES) è costituito da sette fasi. Queste fasi coprono tutto ciò che riguarda un test di penetrazione: dalla comunicazione iniziale e il ragionamento dietro un pentest, attraverso la raccolta di informazioni e le fasi di modellazione delle minacce in cui i tester lavorano dietro le quinte. Ciò porta a una migliore comprensione dell'organizzazione testata, attraverso la ricerca sulla vulnerabilità, lo sfruttamento e lo sfruttamento successivo. Qui, l'esperienza tecnica di sicurezza dei tester è combinata in modo critico con la comprensione aziendale dell'impegno e, infine, al reporting, che cattura l'intero processo, in un modo che ha senso per il cliente e fornisce il massimo valore ad esso.
Impareremo le sette fasi del PTES nelle nostre sezioni successive:
Fase delle interazioni preliminari
Questa è la prima e molto importante fase di PTES. L'obiettivo principale di questa fase è spiegare gli strumenti e le tecniche disponibili, che aiutano in una fase di pre-coinvolgimento di successo di un penetration test. Qualsiasi errore durante l'implementazione di questa fase può avere un impatto significativo sul resto della valutazione. Questa fase comprende quanto segue:
Richiesta di valutazione
La primissima parte con cui inizia questa fase è la creazione di una richiesta di valutazione da parte dell'organizzazione. UNRequest for Proposal (RFP) ai valutatori viene fornito un documento contenente i dettagli sull'ambiente, il tipo di valutazione richiesta e le aspettative dell'organizzazione.
Fare offerte
Ora, in base al RFP documento, più società di valutazione o singole società a responsabilità limitata (LLC) faranno un'offerta e vincerà la parte, la cui offerta corrisponde al lavoro richiesto, al prezzo e ad alcuni altri parametri specifici.
Firma della lettera di fidanzamento (EL)
Ora, l'organizzazione e il partito, che ha vinto la gara, firmeranno un contratto di Engagement Letter (EL). La lettera avrà l'estensionestatement of work (SOW) e il prodotto finale.
Scoping Meeting
Una volta firmato l'EL, può iniziare la messa a punto dell'ambito. Tali riunioni aiutano un'organizzazione e il partito a mettere a punto un particolare ambito. L'obiettivo principale della riunione di scoping è discutere ciò che verrà testato.
Gestione dello scorrimento dell'ambito
Lo scope creep è qualcosa in cui il cliente può provare ad aggiungere o estendere il livello di lavoro promesso per ottenere più di quanto avrebbe promesso di pagare. Questo è il motivo per cui le modifiche allo scopo originale dovrebbero essere attentamente considerate a causa di tempo e risorse. Deve anche essere compilato in una forma documentata come e-mail, documento firmato o lettera autorizzata ecc.
Questionari
Durante le comunicazioni iniziali con il cliente, ci sono diverse domande a cui il cliente dovrà rispondere per una corretta stima dell'ambito dell'incarico. Queste domande sono progettate per fornire una migliore comprensione di ciò che il cliente sta cercando di ottenere dal test di penetrazione; perché il cliente sta cercando di eseguire un test di penetrazione nel proprio ambiente; e se desiderano o meno determinati tipi di test eseguiti durante il test di penetrazione.
Modo per condurre il test
L'ultima parte della fase di pre-impegno è decidere la procedura per condurre il test. Esistono varie strategie di test come White Box, Black Box, Gray Box, test in doppio cieco tra cui scegliere.
Di seguito sono riportati alcuni esempi di valutazioni che possono essere richieste:
- Test di penetrazione della rete
- Penetrazione delle applicazioni web
- Test di penetrazione della rete wireless
- Test di penetrazione fisica
- Ingegneria sociale
- Phishing
- Voice Over Internet Protocol (VOIP)
- Rete interna
- Rete esterna
Fase di raccolta di informazioni
La raccolta di informazioni, la seconda fase del PTES, è dove eseguiamo il rilevamento preliminare contro un obiettivo per raccogliere quante più informazioni possibili da utilizzare quando si penetra nel bersaglio durante le fasi di valutazione e sfruttamento della vulnerabilità. Aiuta le organizzazioni a determinare l'esposizione esterna da parte del team di valutazione. Possiamo dividere la raccolta di informazioni nei seguenti tre livelli:
Raccolta di informazioni di livello 1
Gli strumenti automatizzati possono ottenere questo livello di informazioni quasi interamente. Lo sforzo di raccolta delle informazioni di livello 1 dovrebbe essere appropriato per soddisfare i requisiti di conformità.
Raccolta di informazioni di livello 2
Questo livello di informazioni può essere ottenuto utilizzando strumenti automatizzati dal livello 1 insieme ad alcune analisi manuali. Questo livello richiede una buona comprensione del business, comprese informazioni quali posizione fisica, relazione commerciale, organigramma, ecc. Lo sforzo di raccolta delle informazioni di livello 2 dovrebbe essere appropriato per soddisfare i requisiti di conformità insieme ad altre esigenze come la strategia di sicurezza a lungo termine, acquisizione di produttori più piccoli, ecc.
Raccolta di informazioni di livello 3
Questo livello di raccolta di informazioni viene utilizzato nel penetration test più avanzato. Per la raccolta di informazioni di livello 3 sono necessarie tutte le informazioni del livello 1 e 2 insieme a molte analisi manuali.
Fase di modellazione delle minacce
Questa è la terza fase di PTES. Per la corretta esecuzione dei test di penetrazione è necessario un approccio di modellazione delle minacce. La modellazione delle minacce può essere utilizzata come parte di un test di penetrazione o può essere affrontata in base a una serie di fattori. Nel caso in cui utilizziamo la modellazione delle minacce come parte del test di penetrazione, le informazioni raccolte nella seconda fase verrebbero riportate alla prima fase.
I passaggi seguenti costituiscono la fase di modellazione delle minacce:
Raccogli le informazioni necessarie e pertinenti.
Necessità di identificare e classificare le risorse primarie e secondarie.
Necessità di identificare e classificare minacce e comunità di minacce.
Necessità di mappare le comunità di minacce rispetto alle risorse primarie e secondarie.
Comunità e agenti minacciati
La tabella seguente elenca le comunità e gli agenti delle minacce pertinenti insieme alla loro posizione nell'organizzazione:
Posizione | Interno | Esterno |
---|---|---|
Threat agents/communities | Dipendenti | Soci in affari |
Persone di gestione | Appaltatori | |
Amministratori (rete, sistema) | Concorrenti | |
Ingegneri | Fornitori | |
Tecnici | Stati nazionali | |
Comunità di utenti generici | Gli hacker |
Durante la valutazione del modello delle minacce, dobbiamo ricordare che la posizione delle minacce può essere interna. Basta una singola e-mail di phishing o un dipendente infastidito che sta mettendo in gioco la sicurezza dell'organizzazione trasmettendo le credenziali.
Fase di analisi delle vulnerabilità
Questa è la quarta fase del PTES in cui il valutatore identificherà gli obiettivi fattibili per ulteriori test. Nelle prime tre fasi del PTES, sono stati estratti solo i dettagli sull'organizzazione e il valutatore non ha toccato alcuna risorsa per il test. È la fase che richiede più tempo di PTES.
Le fasi seguenti costituiscono l'analisi delle vulnerabilità:
Test di vulnerabilità
Può essere definito come il processo di scoperta di difetti quali configurazione errata e progetti di applicazioni non sicure nei sistemi e nelle applicazioni di host e servizi. Il tester deve valutare adeguatamente il test e il risultato desiderato prima di condurre l'analisi delle vulnerabilità. Il test di vulnerabilità può essere dei seguenti tipi:
- Test attivi
- Test passivi
Discuteremo i due tipi in dettaglio nelle nostre sezioni successive.
Test attivi
Implica l'interazione diretta con il componente testato per le vulnerabilità della sicurezza. I componenti possono essere a basso livello come lo stack TCP su un dispositivo di rete o ad alto livello come l'interfaccia basata sul web. Il test attivo può essere eseguito nei due modi seguenti:
Test attivi automatizzati
Utilizza il software per interagire con un obiettivo, esaminare le risposte e determinare in base a queste risposte se è presente o meno una vulnerabilità nel componente. L'importanza del test attivo automatizzato rispetto al test attivo manuale può essere compreso dal fatto che se ci sono migliaia di porte TCP su un sistema e abbiamo bisogno di connetterle tutte manualmente per il test, ci vorrebbe una quantità di tempo considerevolmente enorme. Tuttavia, farlo con strumenti automatizzati può ridurre molto tempo e lavoro. La scansione delle vulnerabilità di rete, la scansione delle porte, l'acquisizione di banner e la scansione delle applicazioni web possono essere eseguite con l'aiuto di strumenti di test attivi automatizzati.
Test attivo manuale
Il test manuale efficace è più efficace rispetto al test attivo automatizzato. Il margine di errore esiste sempre con il processo o la tecnologia automatizzati. Questo è il motivo per cui si consiglia sempre di eseguire connessioni dirette manuali a ciascun protocollo o servizio disponibile su un sistema di destinazione per convalidare il risultato del test automatizzato.
Test passivi
Il test passivo non implica l'interazione diretta con il componente. Può essere implementato con l'aiuto delle seguenti due tecniche:
Analisi dei metadati
Questa tecnica prevede di esaminare i dati che descrivono il file piuttosto che i dati del file stesso. Ad esempio, il file MS Word contiene i metadati in termini di nome dell'autore, nome dell'azienda, data e ora in cui il documento è stato modificato e salvato l'ultima volta. Ci sarebbe un problema di sicurezza se un utente malintenzionato potesse ottenere l'accesso passivo ai metadati.
Monitoraggio del traffico
Può essere definita come la tecnica per connettersi a una rete interna e acquisire dati per l'analisi offline. Viene utilizzato principalmente per acquisire i file“leaking of data” su una rete commutata.
Validazione
Dopo i test di vulnerabilità, la convalida dei risultati è molto necessaria. Può essere fatto con l'aiuto delle seguenti tecniche:
Correlazione tra strumenti
Se un valutatore sta eseguendo test di vulnerabilità con più strumenti automatici, per convalidare i risultati, è assolutamente necessario avere una correlazione tra questi strumenti. I risultati possono diventare complicati se non esiste un simile tipo di correlazione tra gli strumenti. Può essere suddiviso in correlazione specifica di elementi e correlazione categoriale di elementi.
Convalida specifica del protocollo
La convalida può essere eseguita anche con l'aiuto di protocolli. VPN, Citrix, DNS, Web, server di posta possono essere utilizzati per convalidare i risultati.
Ricerca
Dopo la scoperta e la convalida della vulnerabilità in un sistema, è essenziale determinare l'accuratezza dell'identificazione del problema e ricercare la potenziale sfruttabilità della vulnerabilità nell'ambito del penetration test. La ricerca può essere svolta pubblicamente o privatamente. Durante la ricerca pubblica, è possibile utilizzare il database delle vulnerabilità e gli avvisi dei fornitori per verificare l'accuratezza di un problema segnalato. D'altra parte, durante la ricerca privata, è possibile impostare un ambiente di replica e applicare tecniche come il fuzzing o le configurazioni di test per verificare l'accuratezza di un problema segnalato.
Fase di sfruttamento
Questa è la quinta fase di PTES. Questa fase si concentra sull'ottenere l'accesso al sistema o alla risorsa aggirando le restrizioni di sicurezza. In questa fase tutto il lavoro svolto dalle fasi precedenti porta ad accedere al sistema. Ci sono alcuni termini comuni usati di seguito per ottenere l'accesso al sistema:
- Popped
- Shelled
- Cracked
- Exploited
Il sistema di login, in fase di sfruttamento, può essere effettuato con l'ausilio di codice, exploit remoto, creazione di exploit, bypassando antivirus oppure può essere semplice come logging tramite credenziali deboli. Dopo aver ottenuto l'accesso, ovvero dopo aver identificato il punto di ingresso principale, il valutatore deve concentrarsi sull'identificazione di asset target di alto valore. Se la fase di analisi delle vulnerabilità è stata completata correttamente, sarebbe stato necessario rispettare un elenco di obiettivi di alto valore. In definitiva, il vettore di attacco dovrebbe prendere in considerazione la probabilità di successo e il massimo impatto sull'organizzazione.
Fase di post sfruttamento
Questa è la sesta fase di PTES. Un valutatore intraprende le seguenti attività in questa fase:
Analisi dell'infrastruttura
In questa fase viene eseguita l'analisi dell'intera infrastruttura utilizzata durante i penetration test. Ad esempio, l'analisi della rete o della configurazione di rete può essere eseguita con l'aiuto di interfacce, routing, server DNS, voci DNS memorizzate nella cache, server proxy, ecc.
Saccheggio
Può essere definito come ottenere le informazioni da host mirati. Queste informazioni sono rilevanti per gli obiettivi definiti nella fase di pre-valutazione. Queste informazioni possono essere ottenute da programmi installati, server specifici come server di database, stampanti, ecc. Sul sistema.
Esfiltrazione di dati
Nell'ambito di questa attività, al valutatore è richiesto di eseguire la mappatura e il test di tutti i possibili percorsi di esfiltrazione in modo che sia possibile eseguire la misurazione della forza di controllo, ovvero il rilevamento e il blocco delle informazioni sensibili dall'organizzazione.
Creare persistenza
Questa attività include l'installazione di backdoor che richiedono l'autenticazione, il riavvio di backdoor quando richiesto e la creazione di account alternativi con password complesse.
Pulire
Come suggerisce il nome, questo processo copre i requisiti per la pulizia del sistema una volta completato il test di penetrazione. Questa attività include il ripristino dei valori originali delle impostazioni di sistema, dei parametri di configurazione dell'applicazione e la rimozione di tutte le backdoor installate e di qualsiasi account utente creato.
Segnalazione
Questa è la fase finale e più importante di PTES. Qui, il cliente paga sulla base del rapporto finale dopo il completamento del test di penetrazione. Il rapporto è fondamentalmente uno specchio dei risultati fatti dal valutatore sul sistema. Di seguito sono riportate le parti essenziali di un buon rapporto:
Sintesi
Questo è un rapporto che comunica al lettore gli obiettivi specifici del penetration test e i risultati di alto livello dell'esercizio di test. Il pubblico previsto può essere un membro del comitato consultivo del capo suite.
Trama
Il report deve contenere una trama, che spieghi cosa è stato fatto durante il coinvolgimento, i risultati o i punti deboli effettivi sulla sicurezza e i controlli positivi che l'organizzazione ha stabilito.
Prova di concetto / relazione tecnica
La prova di concetto o la relazione tecnica deve consistere nei dettagli tecnici del test e in tutti gli aspetti / componenti concordati come indicatori chiave di successo nell'ambito dell'esercizio pre-impegno. La sezione del rapporto tecnico descriverà in dettaglio l'ambito, le informazioni, il percorso di attacco, l'impatto e i suggerimenti di rimedio del test.