
Kit d'outils de reconnaissance, tests, énumération et eXploitation globale de VPN
🚩 Ceci est le dépôt public de vortex, pour la dernière version et les mises à jour, veuillez envisager de nous soutenir via https://porchetta.industries/
Boîte à outils globale de reconnaissance, test, énumération et exploitation de VPN
Si vous souhaitez sponsoriser ce projet et avoir les dernières mises à jour sur vortex, les derniers correctifs, les dernières fonctionnalités, veuillez nous soutenir sur https://porchetta.industries/
Venez traîner sur Discord !
Un framework Python très simple, inspiré de [SprayingToolkit][1], qui tente d'automatiser la plupart du processus nécessaire pour détecter, énumérer et attaquer les endpoints O365 et VPN courants (comme Cisco, Citrix, Fortinet, Pulse, etc...).
Rendre la phase de spray VPN beaucoup plus rapide et plus facile. De plus, grâce à sa flexibilité, cet outil peut être ajouté assez facilement à un workflow OSINT existant.
Vortex fournit principalement une assistance pour effectuer les tâches suivantes :
Installez les prérequis avec pip3 comme suit :``` sudo -H pip3 install -r requirements.txt
### Installation avec Virtualenv
Sinon, vous pouvez installer les prérequis en utilisant un environnement virtuel :
###### Sur Windows```
virtualenv venv
venv\Scripts\activate
pip install -r requirements.txt
python3 -m virtualenv venv source venv/bin/activate pip install -r requirements.txt
## Usage
L'utilisation de l'outil est assez simple, mais il y a un flux de travail à respecter. L'outil
utilise une base de données SQLite pour stocker les informations sur l'attaque en cours.
### Espace de travail
L'espace de travail représente le fichier de base de données utilisé par l'outil. Le nom ne doit être qu'un
simple nom pour étiqueter l'attaque, le projet ou la cible en cours.
À chaque espace de travail est attribuée une base de données SQLite. Lorsque vous spécifiez un nom d'espace de travail,
par exemple :```
python manage.py -w workspace1
Ce que vous dites réellement, c'est : "Je veux opérer sur le fichier workspace1.db".
Pour fonctionner correctement, Vortex doit initialiser la base de données avec les schémas appropriés. Pour ce faire, il suffit d'exécuter la commande :``` python manage.py -w workspace1 db -c init
Si un utilisateur essaie de sauter cette phase, Vortex se contentera d'afficher à l'écran la commande correcte à lancer en premier.```
[-] Workspace not initialized. Please initialise it using:
python manage.py -w workspace1 db -c init
Au lieu de cela, lors de l'exécution de la même commande sur une base de données existante et initialisée, Vortex demandera une confirmation avant d'écraser le fichier de base de données :``` [-] The DB file exists and it was initialised, overwrite? [y|n] $> y
### Actions et commandes
Vortex fonctionne avec un argument positionnel, l'Action', et d'autres valeurs clés.
Le plus important d'entre eux est l'argument commande (`-c cmd`). En combinaison avec la valeur de l'action, la commande définit ce que Vortex doit faire.
Il est possible de voir la liste des actions prises en charge depuis l'Aide :```
python manage.py -h
Vortex: VPN Overall Reconnaissance, Enumeration and eXploitation
positional arguments:
{db,domain,import,office,profile,search,tor,validate,vpn}
Action to execute
optional arguments:
-h, --help show this help message and exit
-w WORKSPACE, --workspace WORKSPACE
Workspace to use
-c COMMAND, --command COMMAND
Command for the action
-D DOMAIN, --domain DOMAIN
Domain under attack
-C COMPANY, --company COMPANY
Company under attack
-l LOCATION, --location LOCATION
Location of the company under attack (IE, UK, US, ...)
-u URL, --url URL VPN Endpoint Origin (schema://domain:port)
-t ENDPOINT_TYPE, --endpoint-type ENDPOINT_TYPE
Target Endpoint Type
-U USER, --user USER User name
-E EMAIL, --email EMAIL
User email
-N NAME, --name NAME User full name
-R ROLE, --role ROLE User job
-s SQL, --sql SQL SQL statement
-O EXPORT_FILE, --export-file EXPORT_FILE
Export file
-Q QUOTES, --quotes QUOTES
Produce an Excel safe CSV
-nh, --no-headers Remove CSV headers
-k KEYWORDS, --keywords KEYWORDS
Search keywords
-P PASSWORDS_FILE, --passwords-file PASSWORDS_FILE
Password file for spraying
-L, --leaks Use leaks for spraying
-I IMPORT_FILE, --import-file IMPORT_FILE
Import file
Comme on peut le voir dans l'aide, la liste des commandes supportées par action n'est spécifiée nulle part. Cela est dû au fait qu'il n'est pas nécessaire de spécifier une commande directement. En effet, si une commande n'est pas spécifiée, Vortex demandera à l'utilisateur de sélectionner l'une des commandes disponibles pour l'action spécifiée.``` python manage.py -w workspace1 db
,d#####F^ ,yy############yy ^9#######, ,######" y###################by ^9######, ######^ y#####F"" ^"9######y "######] d#####^ ,#####" by klezVirus ^9#####, ^######, ,#####] ,####F yy#######y, ^9####b ^###### [##### ####F ,###F""'"9####, 9####] 9##### #####F [#### ,##F^ yy "###b 9####, ^#####] #####] [###] ### dF""#b ^###] ^####] #####] 9####b [#### 9##, 9bd [#] [##b ##### [##### [##### ####, 9##y, ,y##^ d##F ##### [####] #####b ^####y ^"#####" d###^ ,####] d##### [#####, ^####by ,d###^ d####^ #####F 9#####y "#####byyyyyyd####F^ d####F [#####9 9#####b, ""############"^ ,d####F ,###### ^######b, ""'""'"^ ,d#####F d#####F
[*] Select a command: 0 : init 1 : sql 2 : add-endpoint 3 : add-user 4 : drop-user 5 : truncate-table 6 : export $>
La même chose s'applique pour les arguments nécessaires à une routine spécifique. Si un argument est difficile à saisir en cours d'exécution, Vortex rappellera gentiment à l'utilisateur que le paramètre est requis. Sinon, Vortex guidera l'utilisateur pour sélectionner ou saisir les arguments nécessaires.
Par exemple, si un utilisateur souhaite exporter une table spécifique ou même une colonne, la seule chose nécessaire serait de lancer la commande d'exportation, comme on peut le voir dans l'image ci-dessous :

Ce type de comportement rend Vortex très facile à utiliser.
### General Workflow
Vortex a été conçu pour adhérer à un flux de travail opérationnel spécifique, résumé dans le schéma ci-dessous :

### Operations
#### Collect users