Qual è un risultato soddisfacente della valutazione del test di penetrazione?

49

Vorrei chiederti quale dovrebbe essere il risultato soddisfacente del lavoro di test delle penne?

La mia preoccupazione principale è che il test delle penne è difficile e non sempre porterà a shell o radici remote. Tuttavia, è molto più facile elencare potenziali vulnerabilità.

Ad esempio, se c'è la versione 4 di PHP del 2007, posso elencarla come vettore potenziale ma potrei non riuscire a sfruttarla. Lo sfruttamento di successo è un requisito per il lavoro di test delle penne? La scansione di vulnerabilità potrebbe essere un buon risultato del lavoro anche se è incluso uno sfruttamento di successo (ma rappresenta meno dell'1% di tutti i possibili problemi).

    
posta Aria 08.11.2016 - 12:04
fonte

7 risposte

75

Come qualcuno che contrae pen-tester più di quanto io rappresenti un pen-tester, quello che sto cercando è che hai fatto di più che eseguire Nessus / ZAP / Burp - Posso farlo da solo (anche se mi aspetto che tu fallo anche tu). Mi aspetto che tu guardi i flussi di dati nell'app / sito web e cerchi quei thread liberi che indicano che c'è un errore logico che potrebbe essere sfruttabile. Mi aspetto che tu sia in grado di dirmi cosa puoi spigolare dall'esterno, che puoi dirmi cose che causano preoccupazione che non è stato possibile trovare con una scansione.

Sto cercando indicazioni che hai guardato, ad esempio, schermate di reimpostazione della password e considerato se il flusso è sfruttabile. Voglio vedere che hai considerato se le informazioni privilegiate sono disponibili per gli utenti non privilegiati (cioè, l'app usa solo il css per nasconderlo o qualcosa di simile).

Idealmente, ho fatto le cose facili prima che io ti contragga: ho fatto la scansione, ho fatto le patch e ho raccolto tutti i frutti a basso impatto. Assumo un pen-tester per le cose difficili.

Davvero, se non gestisci un exploit, voglio vedere che hai portato le tue unghie graffiate all'esterno cercando una crepa.

    
risposta data 08.11.2016 - 17:50
fonte
28

Is successful exploitation a requirement for pen-testing job?

Seguendo una definizione rigorosa di test di penetrazione, devi effettivamente attaccare il sistema di destinazione e tenere traccia dei tuoi tentativi riusciti e falliti. Non è sufficiente concludere che un server dovrebbe essere vulnerabile perché gli strumenti per le impronte digitali hanno rivelato una versione obsoleta del software. Stai prendendo esplicitamente la prospettiva di un aggressore e devi dimostrare come il sistema può essere penetrato.

Il il foglio SANS Penetration Testing rende seguente distinzione (anche se le definizioni variano):

Pen-Testing vs. Vulnerability Assessment

[There] is often some confusion between penetration testing and vulnerability assessment. The two terms are related but penetration testing has more of an emphasis on gaining as much access as possible while vulnerability testing places the emphasis on identifying areas that are vulnerable to a computer attack. [...] A vulnerability assessor will stop just before compromising a system, whereas a penetration tester will go as far as they can within the scope of the contract.

Detto questo, il tuo cliente medio probabilmente non è consapevole di questa distinzione e forse non vuole davvero che tu spenda troppo tempo andando "il più lontano possibile". Potrebbe essere più importante per loro ricevere istruzioni chiare su cosa esattamente deve essere risolto piuttosto che ottenere un elenco di tutte le shell di root. Dovrai scoprire in anticipo cosa vogliono effettivamente ottenere permettendoti di testare il sistema. Il tuo cliente dovrebbe essere consapevole che un test di penetrazione non è uguale a una valutazione di sicurezza completa.

    
risposta data 08.11.2016 - 18:12
fonte
1

Penso che dipenda da ciò che hai il compito di trovare e da quale sia lo scopo del lavoro. Alcuni test di penna che ho fatto hanno voluto vedere solo le scoperte teoriche, altri mi hanno chiesto di intervenire e creare un po 'di devastazione. I test con le penne sono difficili solo per coloro che non lo apprezzano veramente. Diventa creativo, divertiti un po '... ma resta nel campo di applicazione. ;)

    
risposta data 08.11.2016 - 19:11
fonte
1

Consentitemi di metterlo in questo modo: a meno che lo sviluppatore dell'applicazione in prova non sia un esperto di sicurezza, allora mi aspetto assolutamente di trovare almeno qualche exploit. Sarei molto infelice se non hai trovato nulla, perché nella mia esperienza il tuo sviluppatore medio non ha una conoscenza abbastanza approfondita dei problemi di sicurezza per essere in grado di evitare tutti i buchi possibili andare.

Si noti che avrei sollevato la restrizione "sicurezza per oscurità" per il test. Cioè, si otterrebbe l'accesso alla macchina (shell, ecc.) O persino al codice sorgente per acquisire conoscenze sull'applicazione. Ovviamente la tua penetrazione deve funzionare senza quella, proprio come quella di un vero aggressore.

    
risposta data 09.11.2016 - 13:46
fonte
1

È davvero difficile definire la qualità del pentest eseguito e qualsiasi cosa può essere un risultato soddisfacente. Dipende davvero dal sistema. Se il pentest viene eseguito su un sistema o un sito web relativamente semplice, è molto probabile che non ci saranno risultati ad alto rischio.

Inoltre, anche se sono molto abili, potrebbero non avere abbastanza tempo per sfruttare il sistema e mostrare una prova di concetto. Devono dare la priorità al pentest per coprire tutte le aree incluse nel contratto.

Supponiamo che pentester scopra un'iniezione SQL o un software vulnerabile (basato sul numero di versione). È sicuramente utile provare a sfruttare e mostrare la vulnerabilità per un cliente, ma potrebbe essere molto difficile sfruttarlo e spesso non avrebbe senso passare la maggior parte del tempo di pentest previsto per produrre una prova di concetto per una singola vulnerabilità .

Pentestore che mostra che una versione specifica del software è vulnerabile in base a CVE, o pentester che mostra l'output dell'errore SQL in base all'input dell'utente dovrebbe essere una ragione sufficiente per un client per correggere e correggere i loro sistemi.

    
risposta data 10.11.2016 - 12:56
fonte
1

Questa è una buona domanda poiché penso che molti posti si avvicinino al pen-test in modo non corretto. Questo è diventato ancora peggiore perché il livello esecutivo di molti le organizzazioni tendono a credere che la penna sia un proiettile d'argento - se ne hai uno pen test e i risultati mostrano che non vi è stata alcuna penetrazione di successo sistema, quindi la tua sicurezza è OK e possiamo tutti spuntare quella casella. Dall'altra mano, se il test non riesce, il team di sicurezza non sta facendo il suo lavoro. Questo semplicemente non è il caso.

Un pen-test è solo uno strumento che può essere utilizzato per valutare l'efficacia di i tuoi controlli di sicurezza. Non ti dice che tutti i tuoi sistemi sono sicuri e il livello di sicurezza che puoi inserire in quel test dipende molto sia le capacità del tester della penna sia quanto bene hai specificato e pianificato il test. La cosa peggiore che puoi fare è semplicemente chiamare un po 'di sicurezza compagnia e dire "Ciao, voglio un pen-test, quando puoi farlo". Prima di impegnarsi a pen tester, è necessario avere una chiara idea di cosa ti aspetti dal pen-test, quali sono le tue priorità e quali informazioni desideri nella relazione finale. tu voglio anche avvicinarmi a più di un fornitore. Quello che stai cercando è qualcuno che è in grado di dimostrare di avere le giuste abilità, chi può capire le tue esigenze e chi è in grado di fornirti un risultato che può aiutarti a migliorare la tua posizione di sicurezza. Un pen test non dovrebbe essere pensato come un 'test' nel senso di un passaggio o di un fallimento. Essenzialmente, è necessario avere una chiara comprensione prima del test di quali sono i voti e al completamento del test, avere sufficienti dettagli e informazioni per aiutare ti concentri su come ottenere un voto migliore nel prossimo test.

Uno degli aspetti più difficili del test della penna è la qualità della penna il test è molto variabile a seconda del soggetto che esegue il test della penna. io ho cambiato società di sicurezza principalmente perché un dipendente della prima azienda ha cambiato i datori di lavoro e quell'individuo era qualcuno che sapevamo fare bene test di penna per l'organizzazione (di solito perché erano di talento e bravi a il loro lavoro e perché hanno capito la nostra attività).

Coinvolgere un tester per penne è di per sé un'abilità. Otterrai meglio ogni volta lo fai purché ti avvicini al compito con obiettivi chiari. Conoscendo il tuo l'attuale posizione di sicurezza è solo una parte dell'equazione. Devi avere un chiara idea di quale sia il tuo stato target finale. Cosa vuoi dal pen-test è una maggiore chiarezza sulla tua posizione attuale e informazioni sufficienti per aiutarti a sviluppare piani per spostare l'organizzazione allo stato desiderato.

Un buon test penna fornisce dettagli su ciò che è stato fatto, su ciò che è riuscito e cosa è fallito. Non dovrebbe essere solo un elenco di possibili vulnerabilità o sistemi che non sono al livello di patch più recente o esempi di "cattive pratiche". Tutto di che può essere ottenuto con semplici valutazioni di vulnerabilità. Dovrebbe fornire tutti i dettagli su come l'ambiente è stato penetrato e suggerimenti su cosa i controlli potrebbero essere implementati per prevenire o ridurre la probabilità di ripetizione occorrenze o l'impatto di questi eventi. Il rapporto sul test della penna dovrebbe fornire dettagli sufficienti che è possibile valutare se un mancato accesso perché i controlli sono adeguati o perché non c'è stato tempo sufficiente assegnato o perché l'ambito era troppo limitato ecc. Per molti aspetti, cosa tu stanno cercando una partnership con il pen tester su cui stanno lavorando per migliorare la tua sicurezza.

    
risposta data 10.11.2016 - 22:48
fonte
0

Un risultato soddisfacente di un pen-test è quando il cliente e / o il pubblico di destinazione del reporting comprende i messaggi e intraprende azioni appropriate sulla base della scienza delle decisioni. Fare riferimento a Come misurare qualsiasi cosa nel rischio di sicurezza informatica per ulteriori informazioni sulla scienza delle decisioni in relazione a un test di penetrazione positiva.

    
risposta data 11.11.2016 - 03:29
fonte

Leggi altre domande sui tag