Che cos'è un test di penetrazione?
Un test di penetrazione o un pentest differisce dalla scansione delle vulnerabilità e dalle valutazioni di vulnerabilità.
Cos'è una scansione delle vulnerabilità?
Una scansione di vulnerabilità utilizza la scansione automatica per eseguire l'identificazione delle vulnerabilità ampiezza . Ciò significa che la scansione tenta di identificare le vulnerabilità attraverso configurazioni errate, ad esempio lasciando disponibile l'interfaccia di Tomcat Manager, le applicazioni Web con vulnerabilità XSS o SQL injection e vari problemi relativi alle applicazioni Web e di rete. Esistono numerosi prodotti sul mercato. Alcuni sono gratuiti, altri no.
Questa è spesso la prima parte di un programma di sicurezza delle informazioni aziendali per identificare, quantificare e classificare i rischi. Non va più in profondità dell'identificazione di potenziali vulnerabilità. Spetta a un essere umano confermare se i problemi sono reali o meno.
Che cos'è una valutazione della vulnerabilità?
Spesso una valutazione umana viene eseguita manualmente da un essere umano. Questo è il test di ampiezza . Come la scansione fatta sopra, non va più in profondità dell'identificazione delle vulnerabilità. La differenza è che un umano sta cercando problemi piuttosto che uno scanner. Questo è un vantaggio così come un cono. Il vantaggio è che un essere umano è in grado di determinare complessi flussi di applicazioni logiche e di cercare problemi che uno strumento di scansione non può cercare, sia perché non ha le firme giuste, sia per ragioni di sicurezza, come un servizio incapace di gestire un strumento di scansione. Non è un test di penetrazione.
Che cos'è un test di penetrazione allora?
Un test di penetrazione è un test depth-first . Comprende valutazioni di vulnerabilità, ma va più in profondità. Il penttor, l'umano che esegue l'ingaggio, non solo identifica i problemi, ma li sfrutta per andare il più profondamente possibile. Ad esempio, questo non solo confermerebbe che l'iniezione SQL è presente, ma lo sta sfruttando per rubare dati, eseguire comandi maligni del server o per modificare i dati.
A causa di questo processo intensivo che richiede abilità umane, solo parti del coinvolgimento possono essere automatizzate. Un umano è molto richiesto per eseguire il fidanzamento.
Quindi posso ottenere hardware o software per fare un pentest?
No. Esistono strumenti per automatizzare la scansione, ma non per automatizzare i test di penetrazione nella sua interezza. Kali Linux e simili distribuzioni forniscono strumenti che sono necessari (ad esempio masscan
o nmap
) e strumenti che sono utili (ad esempio metasploit
), ma l'elemento umano sottostante è necessario per dare un senso all'output dello strumento, esplorare le applicazioni e reti e sfruttare le vulnerabilità.