Vulnerability Assessment – Alla ricerca delle vulnerabilità

La Vulnerability Assessment è la fase successiva alla raccolta di informazioni (information gathering), in quanto andiamo ad analizzare nel dettaglio le varie criticità e i relativi livelli di sicurezza della nostra analisi di penetration testing.

Iniziano con individuare cos’è nel dettaglio la Vulnerability Assessment:

La metodologia di Vulnerability Assessment and Mitigation (VAM) consiste di un processo volto a valutare l’efficacia dei sistemi di sicurezza ed a valutarne il livello di sicurezza. Lo scopo di questa ricerca è quello di trovare le falle di quello specifico sistema, per poterlo così migliorare e prevenire eventuali attacchi basati su quelle vulnerabilità. L’utilizzo del VAM si rende necessario più volte durante l’arco di un anno, in quanto la tecnologia progredisce in fretta e con essa anche gli strumenti per attaccare un sistema, che potrebbero quindi avvalersi di nuove vulnerabilità eventualmente messe in luce dal progresso tecnologico e strategico. (cit. Wikipedia)

quindi possiamo suddividere l’analisi in due tronconi fondamentali, sia in ambito network che applicativo:

  • Analizzare la criticità dei dati, ovvero ottenere nel dettaglio tutti i servizi e server facenti parte dell’analisi, al fine di avere una mappa dei sistemi;
  • Fase tecnica, ovvero ricerca delle vulnerabilità nel sistema attraverso l’applicazione di exploiet o 0day, e quanto questi possano essere applicabili;

In questo ambito, uno dei tool di maggiore spessore a scovare vulnerabilità è nessus, ma la “versione” open la preferisco, openvas, che possiamo installare con una certa facialità ( nel caso in cui non sia già presente nella nostra distro ).

Il suo utilizzo è molto semplice, colleghiamo al nostro server http://localhost:9392 inseriamo user e password ( su backbox generalmente admin/backbox ), creiamo il nostro progetto, inseriamo l’IP o Classe da esaminare ed avviamo l’analisi.

Finita l’analisi, troviamo un report ( in diversi formati ) con la quale possiamo esaminare le criticità, bug, 0day ed exploiet, ed individuare quelle critiche ed in grado di compromettere il sistema e portare a segno la nostra analisi.

Altri tool interessanti sono:

skipfish tool nato in casa google, che ci permette di fare uno scanning dell’intera URL ed individuare, attraverso l’uso di una wordlist, la maggior parte di vulnerabilità, ecco una lista di quelle maggiormente implementati:

 

  • High risk flaws (potentially leading to system compromise):
    • Server-side SQL / PHP injection (including blind vectors, numerical parameters).
    • Explicit SQL-like syntax in GET or POST parameters.
    • Server-side shell command injection (including blind vectors).
    • Server-side XML / XPath injection (including blind vectors).
    • Format string vulnerabilities.
    • Integer overflow vulnerabilities.
    • Locations accepting HTTP PUT.
  • Medium risk flaws (potentially leading to data compromise):
    • Stored and reflected XSS vectors in document body (minimal JS XSS support present).
    • Stored and reflected XSS vectors via HTTP redirects.
    • Stored and reflected XSS vectors via HTTP header splitting.
    • Directory traversal / file inclusion (including constrained vectors).
    • Assorted file POIs (server-side sources, configs, etc).
    • Attacker-supplied script and CSS inclusion vectors (stored and reflected).
    • External untrusted script and CSS inclusion vectors.
    • Mixed content problems on script and CSS resources (optional).
    • Password forms submitting from or to non-SSL pages (optional).
    • Incorrect or missing MIME types on renderables.
    • Generic MIME types on renderables.
    • Incorrect or missing charsets on renderables.
    • Conflicting MIME / charset info on renderables.
    • Bad caching directives on cookie setting responses.

come potete vedere è un tool davvero interessante e molto versatile, e vi darà molte soffistazioni 😉

Altro tool interessante e nikto molto simile a skipfish, ma con le sue peculiarità e semplicità di utilizzo, da provare semplicemente digitando:

e godetevi l’output.

Raccolte le informazioni e passati in rassegna la lista delle vulnerabilità, è arrivato il momento di passare alla fase di exploitation.

 

Curioso e con tanta voglia di sapere, fui attratto dal mondo dell'informatica, in cui mi ci buttai a capofitto. Dal 2005, ho fatto della mia passione principale, il Networking associato al mondo dei sistemi in ambiente Gnu/Linux, il mio lavoro quotidiano.

Comments are closed.