
Analisi WhiteBox di CMS
CoMisSion è uno strumento per analizzare rapidamente una configurazione CMS. Lo strumento:
🔥 Attenzione: CoMisSion non cerca vulnerabilità analizzando il codice sorgente. Le vulnerabilità sono raccolte da database pubblici come wpvulndb. Trovare nuove vulnerabilità non è lo scopo di questo strumento.
Un report completo può essere generato nei seguenti formati:
Lo strumento è stato testato su Linux e Windows. Per evitare inquinamento dell'output, si consiglia di impostare l'opzione --no-color su Windows.
./commision.py -c wordpress -d /cms_dir -o report.xlsx -t XLSX
Il tool necessita almeno di python3.6.
git clone https://github.com/Intrinsec/comission
pip install -r requirements.txt
usage: comission.py [-h] -d DIR -c CMS [-o FILE] [-t TYPE] [--skip-core]
[--skip-plugins] [--skip-themes] [--no-color] [-f CONF]
[--log LOGFILE] [--wp-content WP_CONTENT]
[--plugins-dir PLUGINS_DIR] [--themes-dir THEMES_DIR]
[--major VERSION_MAJOR] [-v VERSION]
[--wpvulndb-token WPVULNDB_TOKEN] [--debug]
CoMisSion analyse a CMS and plugins used.
optional arguments:
-h, --help show this help message and exit
-d DIR, --dir DIR CMS root directory
-c CMS, --cms CMS CMS type (drupal, wordpress)
-o FILE, --output FILE
Path to output file
-t TYPE, --type TYPE Type of output (CSV, XLSX, JSON, STDOUT). Default to
XLSX.
--skip-core Set this to skip core analysis
--skip-plugins Set this to skip plugins analysis
--skip-themes Set this to skip themes analysis
--no-color Do not use colors in the output.
-f CONF, --file CONF Configuration file. See example.conf.
--log LOGFILE Log output in given file.
--wp-content WP_CONTENT
Set this to force the wp-content directory location.
--plugins-dir PLUGINS_DIR
Set this to force the plugins directory location.
--themes-dir THEMES_DIR
Set this to force the themes directory location.
--major VERSION_MAJOR
Specify the core major version (eg. 7, 8) when using
--skip-core arg. Works only for Drupal.
-v VERSION, --version VERSION
Specify the core full version (eg. 5.5).
--wpvulndb-token WPVULNDB_TOKEN
Set a token to request wpvulndb API.
--debug Print debug message to help identify errors.
🔥 Per ottenere vulnerabilità per WordPress, devi impostare l'argomento --wpvulndb_token. Puoi ottenere un token con un account su wpvulndb.
Puoi fornire un file di configurazione. Vedi example.conf come riferimento.
Non stiamo ancora pubblicando immagini ufficiali. Per utilizzare lo strumento con docker, puoi costruire un'immagine. Nella cartella del progetto, costruisci con:
docker build -t isec/comission .
Quindi eseguilo con :
docker run -it --rm -v /TARGET_PATH/:/cms_path/ -v /OUTPUT_DIR/:/output/ isec/comission -d /cms_path/ -c drupal -o /output/test_docker.xlsx -t XLSX
Fai attenzione a cambiare i percorsi "TARGET_PATH" e "OUTPUT_DIR" per adattarli alle tue cartelle.
I test unitari sono disponibili nella cartella tests. Prima di lanciare i test, dovresti creare una directory test-data-set contenente le sottodirectory drupal e wordpress, e un file test.conf contenente almeno un valore per wpvulndb_token.
Paul Mars (Intrinsec)
Basato su un'idea di Etienne Boursier (Intrinsec)
Questo strumento è distribuito sotto licenza GPLv3. Ma fai attenzione, lo strumento utilizza l'API wpvulndb per raccogliere informazioni sul core e sui plugin di WordPress.