Penetration testing is an authorized simulation of a cyber-attack performed by an attacker against technological infrastructures or information systems to evaluate their security. Penetration testing is a very demanding activity especially in complex Microsoft Active Directory environments consisting of many entities, such as users, computers, and groups interacting together. This thesis work focuses on two of the steps involved in penetration testing, namely information gathering and threat modeling. These phases are crucial for collecting information about the technological infrastructure, analyzing the attack surface, and identifying the vulnerabilities that could be exploited to compromise the target system. The objective of this thesis work is to design and develop a suite of tools for the enumeration and the modeling of Active Directory forests from domain-joined Microsoft Windows machines and non-domain joined machines running Linux or macOS operating systems. In addition, to facilitate the identification of critical issues that could be exploited to compromise an Active Directory environment, a graph-based approach is proposed and scores are assigned to the nodes of the graph and to their relationships. Finally, a simulated environment based on the random generation of graph models was developed and used in testing.

Un approccio basato su grafi per l'enumerazione e il threat modeling di un ambiente Active Directory. Il penetration testing è un’attività che consiste nella simulazione autorizzata di un attacco informatico eseguito da un attaccante contro le infrastrutture tecnologiche o i sistemi informativi per valutare il loro livello di sicurezza. Il penetration testing è una attività molto impegnativa specialmente in ambienti Microsoft Active Directory complessi composti da molte entità, come utenti, computer e gruppi che interagiscono fra di loro. Questo lavoro di tesi si focalizza su due delle fasi del penetration testing, ovvero information gathering e threat modeling. Tali fasi sono fondamentali per raccogliere informazioni sull’infrastruttura tecnologica, analizzare la superficie di attacco e identificare le vulnerabilità che potrebbero essere sfruttate per compromettere il sistema bersaglio. L’obiettivo di questo lavoro di tesi è quello di progettare e sviluppare un insieme di strumenti per l’enumerazione e la modellizzazione delle foreste Active Directory a partire da computer Microsoft Windows associati ad un dominio oppure da computer non associati ad un dominio che eseguono Linux o macOS come sistemi operativi. In aggiunta, viene proposto un approccio basato sui grafi e sull’assegnazione di punteggi ai nodi del grafo e alle loro relazioni, al fine di facilitare l’identificazione delle criticità che potrebbero essere utilizzate per compromettere un ambiente Active Directory. Infine, è stato sviluppato e usato nei test un ambiente di simulazione per la generazione casuale di modelli basati sui grafi.

A graph-based approach for enumeration and threat modeling of an Active Directory environment

CAROLO, NICOLAS
2019/2020

Abstract

Penetration testing is an authorized simulation of a cyber-attack performed by an attacker against technological infrastructures or information systems to evaluate their security. Penetration testing is a very demanding activity especially in complex Microsoft Active Directory environments consisting of many entities, such as users, computers, and groups interacting together. This thesis work focuses on two of the steps involved in penetration testing, namely information gathering and threat modeling. These phases are crucial for collecting information about the technological infrastructure, analyzing the attack surface, and identifying the vulnerabilities that could be exploited to compromise the target system. The objective of this thesis work is to design and develop a suite of tools for the enumeration and the modeling of Active Directory forests from domain-joined Microsoft Windows machines and non-domain joined machines running Linux or macOS operating systems. In addition, to facilitate the identification of critical issues that could be exploited to compromise an Active Directory environment, a graph-based approach is proposed and scores are assigned to the nodes of the graph and to their relationships. Finally, a simulated environment based on the random generation of graph models was developed and used in testing.
2019
A graph-based approach for enumeration and threat modeling of an Active Directory environment
Un approccio basato su grafi per l'enumerazione e il threat modeling di un ambiente Active Directory. Il penetration testing è un’attività che consiste nella simulazione autorizzata di un attacco informatico eseguito da un attaccante contro le infrastrutture tecnologiche o i sistemi informativi per valutare il loro livello di sicurezza. Il penetration testing è una attività molto impegnativa specialmente in ambienti Microsoft Active Directory complessi composti da molte entità, come utenti, computer e gruppi che interagiscono fra di loro. Questo lavoro di tesi si focalizza su due delle fasi del penetration testing, ovvero information gathering e threat modeling. Tali fasi sono fondamentali per raccogliere informazioni sull’infrastruttura tecnologica, analizzare la superficie di attacco e identificare le vulnerabilità che potrebbero essere sfruttate per compromettere il sistema bersaglio. L’obiettivo di questo lavoro di tesi è quello di progettare e sviluppare un insieme di strumenti per l’enumerazione e la modellizzazione delle foreste Active Directory a partire da computer Microsoft Windows associati ad un dominio oppure da computer non associati ad un dominio che eseguono Linux o macOS come sistemi operativi. In aggiunta, viene proposto un approccio basato sui grafi e sull’assegnazione di punteggi ai nodi del grafo e alle loro relazioni, al fine di facilitare l’identificazione delle criticità che potrebbero essere utilizzate per compromettere un ambiente Active Directory. Infine, è stato sviluppato e usato nei test un ambiente di simulazione per la generazione casuale di modelli basati sui grafi.
File in questo prodotto:
Non ci sono file associati a questo prodotto.

È consentito all'utente scaricare e condividere i documenti disponibili a testo pieno in UNITESI UNIPV nel rispetto della licenza Creative Commons del tipo CC BY NC ND.
Per contatti: unitesi@unipv.it

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14239/12434