Merge pull request 'Traduction du modèle de rapport de bug' (#1) from mes-modifs into master
Reviewed-on: #1
This commit is contained in:
53
.github/ISSUE_TEMPLATE/bug_report.md
vendored
53
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@ -1,42 +1,41 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
name: Rapport de bug
|
||||
about: Créez un rapport pour nous aider à nous améliorer
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
**Décrivez le bug**
|
||||
Une description claire et concise de ce qu'est le bug.
|
||||
|
||||
**Affected module**
|
||||
Which one is the module that is not working as expected, e.g. Nessus, Qualys WAS, Qualys VM, OpenVAS, ELK, Jira...).
|
||||
**Module affecté**
|
||||
Lequel des modules ne fonctionne pas comme prévu, par exemple, Nessus, Qualys WAS, Qualys VM, OpenVAS, ELK, Jira...
|
||||
|
||||
**VulnWhisperer debug trail**
|
||||
If applicable, paste the VulnWhisperer debug trail of the execution for further detail (execute with '-d' flag).
|
||||
**Trace de débogage de VulnWhisperer**
|
||||
Si possible, veuillez joindre la trace de débogage de l'exécution pour une enquête plus approfondie (exécuter avec l'option `-d`).
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
**Pour reproduire**
|
||||
Étapes pour reproduire le comportement :
|
||||
1. Allez à '...'
|
||||
2. Cliquez sur '....'
|
||||
3. Voir l'erreur
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
**Comportement attendu**
|
||||
Une description claire et concise de ce à quoi vous vous attendiez.
|
||||
|
||||
**Screenshots**
|
||||
If applicable, add screenshots to help explain your problem.
|
||||
**Captures d'écran**
|
||||
Si applicable, ajoutez des captures d'écran pour aider à expliquer votre problème.
|
||||
|
||||
**System in which VulnWhisperer runs (please complete the following information):**
|
||||
- OS: [e.g. Ubuntu Server]
|
||||
- Version: [e.g. 18.04.2 LTS]
|
||||
- VulnWhisperer Version: [e.g. 1.7.1]
|
||||
**Système sur lequel VulnWhisperer s'exécute (veuillez compléter les informations suivantes) :**
|
||||
- OS : [ex. Ubuntu Server]
|
||||
- Version : [ex. 18.04.2 LTS]
|
||||
- Version de VulnWhisperer : [ex. 1.7.1]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
**Contexte additionnel**
|
||||
Ajoutez tout autre contexte sur le problème ici.
|
||||
|
||||
## Important Note
|
||||
As VulnWhisperer relies on ELK for the data aggregation, it is expected that you already have an ELK instance or the knowledge to deploy one.
|
||||
In order to speed up deployment, we provide an updated and tested docker-compose file which deploys all the needed infrastructure and we will support its deployment, but we will not be giving support to ELK instances.
|
||||
**Note importante**
|
||||
Comme VulnWhisperer s'appuie sur ELK pour l'agrégation de données, il est attendu que vous ayez déjà une instance ELK ou les connaissances pour en déployer une.
|
||||
Pour accélérer le déploiement, nous fournissons un fichier docker-compose à jour et testé qui déploie toute l'infrastructure nécessaire et nous supporterons son déploiement, mais nous ne donnerons pas de support pour les instances ELK.
|
187
README.md
187
README.md
@ -1,21 +1,15 @@
|
||||
<p align="center"><img src="https://github.com/austin-taylor/vulnwhisperer/blob/master/docs/source/vuln_whisperer_logo_s.png" width="400px"></p>
|
||||
<p align="center"> <i>Create <u><b>actionable data</b></u> from your vulnerability scans </i> </p>
|
||||
<p align="center"><img src="https://git.gudita.com/Cyberdefense/VulnWhisperer/raw/branch/master/docs/source/vuln_whisperer_logo_s.png" width="400px"></p>
|
||||
<p align="center"> <i>Créez des <u><b>données exploitables</b></u> à partir de vos scans de vulnérabilités</i> </p>
|
||||
|
||||
<p align="center" style="width:400px"><img src="https://github.com/austin-taylor/vulnwhisperer/blob/master/docs/source/vulnWhispererWebApplications.png" style="width:400px"></p>
|
||||
<p align="center" style="width:400px"><img src="https://git.gudita.com/Cyberdefense/VulnWhisperer/raw/branch/master/docs/source/vulnWhispererWebApplications.png" style="width:400px"></p>
|
||||
|
||||
|
||||
VulnWhisperer is a vulnerability management tool and report aggregator. VulnWhisperer will pull all the reports from the different Vulnerability scanners and create a file with a unique filename for each one, using that data later to sync with Jira and feed Logstash. Jira does a closed cycle full Sync with the data provided by the Scanners, while Logstash indexes and tags all of the information inside the report (see logstash files at /resources/elk6/pipeline/). Data is then shipped to ElasticSearch to be indexed, and ends up in a visual and searchable format in Kibana with already defined dashboards.
|
||||
VulnWhisperer est un outil de gestion des vulnérabilités et un agrégateur de rapports. VulnWhisperer récupère tous les rapports des différents scanners de vulnérabilités et crée un fichier avec un nom unique pour chacun, utilisant ensuite ces données pour se synchroniser avec Jira et alimenter Logstash. Jira effectue une synchronisation complète en cycle fermé avec les données fournies par les scanners, tandis que Logstash indexe et étiquette toutes les informations contenues dans le rapport (voir les fichiers logstash dans `/resources/elk6/pipeline/`). Les données sont ensuite envoyées à ElasticSearch pour être indexées, et finissent dans un format visuel et consultable dans Kibana avec des tableaux de bord déjà définis.
|
||||
|
||||
VulnWhisperer is an open-source community funded project. VulnWhisperer currently works but is due for a documentation overhaul and code review. This is on the roadmap for the next month or two (February or March of 2022 - hopefully). Please note, crowd funding is an option. If you would like help getting VulnWhisperer up and running, are interested in new features, or are looking for paid support (for those of you that require commercial support contracts to implement open-source solutions), please reach out to **info@hasecuritysolutions.com**.
|
||||
VulnWhisperer est un projet open-source financé par la communauté. VulnWhisperer est actuellement fonctionnel mais nécessite une refonte de la documentation et une revue de code. Si vous souhaitez de l'aide, si vous êtes intéressé par de nouvelles fonctionnalités, ou si vous recherchez un support payant, veuillez nous contacter à **info@sahelcyber.com**.
|
||||
|
||||
[](https://travis-ci.org/HASecuritySolutions/VulnWhisperer)
|
||||
[](https://github.com/HASecuritySolutions/VulnWhisperer/blob/master/LICENSE)
|
||||
[](https://twitter.com/VulnWhisperer)
|
||||
|
||||
Currently Supports
|
||||
-----------------
|
||||
|
||||
### Vulnerability Frameworks
|
||||
### Scanners de Vulnérabilités Supportés
|
||||
|
||||
- [X] [Nessus (**v6**/**v7**/**v8**)](https://www.tenable.com/products/nessus/nessus-professional)
|
||||
- [X] [Qualys Web Applications](https://www.qualys.com/apps/web-app-scanning/)
|
||||
@ -28,144 +22,117 @@ Currently Supports
|
||||
- [ ] [NMAP](https://nmap.org/)
|
||||
- [ ] [Burp Suite](https://portswigger.net/burp)
|
||||
- [ ] [OWASP ZAP](https://www.zaproxy.org/)
|
||||
- [ ] More to come
|
||||
- [ ] Et d'autres à venir
|
||||
|
||||
### Reporting Frameworks
|
||||
### Plateformes de Reporting Supportées
|
||||
|
||||
- [X] [Elastic Stack (**v6**/**v7**)](https://www.elastic.co/elk-stack)
|
||||
- [ ] [OpenSearch - Being considered for next update](https://opensearch.org/)
|
||||
- [ ] [OpenSearch - Envisagé pour la prochaine mise à jour](https://opensearch.org/)
|
||||
- [X] [Jira](https://www.atlassian.com/software/jira)
|
||||
- [ ] [Splunk](https://www.splunk.com/)
|
||||
|
||||
Getting Started
|
||||
===============
|
||||
## Démarrage
|
||||
|
||||
1) Follow the [install requirements](#installreq)
|
||||
2) Fill out the section you want to process in <a href="https://github.com/HASecuritySolutions/VulnWhisperer/blob/master/configs/frameworks_example.ini">frameworks_example.ini file</a>
|
||||
3) [JIRA] If using Jira, fill Jira config in the config file mentioned above.
|
||||
3) [ELK] Modify the IP settings in the <a href="https://github.com/HASecuritySolutions/VulnWhisperer/tree/master/resources/elk6/pipeline">Logstash files to accommodate your environment</a> and import them to your logstash conf directory (default is /etc/logstash/conf.d/)
|
||||
4) [ELK] Import the <a href="https://github.com/HASecuritySolutions/VulnWhisperer/blob/master/resources/elk6/kibana.json">Kibana visualizations</a>
|
||||
5) [Run Vulnwhisperer](#run)
|
||||
1) Suivez les [prérequis d'installation](#installreq)
|
||||
2) Remplissez la section que vous souhaitez traiter dans le fichier <a href="https://git.gudita.com/Cyberdefense/VulnWhisperer/src/branch/master/configs/frameworks_example.ini">frameworks_example.ini</a>
|
||||
3) [JIRA] Si vous utilisez Jira, remplissez la configuration Jira dans le fichier de configuration mentionné ci-dessus.
|
||||
3) [ELK] Modifiez les paramètres IP dans les <a href="https://git.gudita.com/Cyberdefense/VulnWhisperer/src/branch/master/resources/elk6/pipeline">fichiers Logstash pour correspondre à votre environnement</a> et importez-les dans votre répertoire de configuration logstash (par défaut `/etc/logstash/conf.d/`)
|
||||
4) [ELK] Importez les <a href="https://git.gudita.com/Cyberdefense/VulnWhisperer/src/branch/master/resources/elk6/kibana.json">visualisations Kibana</a>
|
||||
5) [Exécutez Vulnwhisperer](#run)
|
||||
|
||||
Need assistance or just want to chat? Join our [slack channel](https://join.slack.com/t/vulnwhisperer/shared_invite/enQtNDQ5MzE4OTIyODU0LWQxZTcxYTY0MWUwYzA4MTlmMWZlYWY2Y2ZmM2EzNDFmNWVlOTM4MzNjYzI0YzdkMDA0YmQyYWRhZGI2NGUxNGI)
|
||||
> **Note importante concernant les liens du Wiki :** La migration de Gitea ne transfère pas toujours le Wiki d'un projet GitHub (qui est techniquement un dépôt séparé). Si les liens vers le Wiki (comme le guide de déploiement ELK) ne fonctionnent pas, vous devrez peut-être recréer ces pages manuellement dans l'onglet "Wiki" de votre dépôt sur Gitea.
|
||||
|
||||
Requirements
|
||||
-------------
|
||||
####
|
||||
Besoin d'aide ou juste envie de discuter ? Rejoignez notre [canal Slack](https://join.slack.com/t/vulnwhisperer/shared_invite/enQtNDQ5MzE4OTIyODU0LWQxZTcxYTY0MWUwYzA4MTlmMWZlYWY2Y2ZmM2EzNDFmNWVlOTM4MzNjYzI0YzdkMDA0YmQyYWRhZGI2NGUxNGI)
|
||||
|
||||
## Prérequis
|
||||
* Python 2.7
|
||||
* Vulnerability Scanner
|
||||
* Reporting System: Jira / ElasticStack 6.6
|
||||
* Un Scanner de Vulnérabilités
|
||||
* Un Système de Reporting : Jira / ElasticStack 6.6
|
||||
|
||||
<a id="installreq">Install Requirements-VulnWhisperer(may require sudo)</a>
|
||||
--------------------
|
||||
**Install OS packages requirement dependencies** (Debian-based distros, CentOS don't need it)
|
||||
<a id="installreq"></a>
|
||||
## Prérequis d'Installation - VulnWhisperer (peut nécessiter sudo)
|
||||
**Installez les dépendances des paquets du système d'exploitation** (pour les distributions basées sur Debian, CentOS n'en a pas besoin)
|
||||
```shell
|
||||
|
||||
sudo apt-get install zlib1g-dev libxml2-dev libxslt1-dev
|
||||
```
|
||||
|
||||
**(Optional) Use a python virtualenv to not mess with host python libraries**
|
||||
```shell
|
||||
virtualenv venv (will create the python 2.7 virtualenv)
|
||||
source venv/bin/activate (start the virtualenv, now pip will run there and should install libraries without sudo)
|
||||
(Optionnel) Utilisez un environnement virtuel python pour ne pas perturber les bibliothèques python de l'hôte
|
||||
|
||||
deactivate (for quitting the virtualenv once you are done)
|
||||
```
|
||||
virtualenv venv # créera l'environnement virtuel python 2.7
|
||||
|
||||
**Install python libraries requirements**
|
||||
source venv/bin/activate # démarre l'environnement, pip s'exécutera ici et devrait installer les bibliothèques sans sudo
|
||||
|
||||
```python
|
||||
pip install -r /path/to/VulnWhisperer/requirements.txt
|
||||
cd /path/to/VulnWhisperer
|
||||
deactivate # pour quitter l'environnement virtuel une fois que vous avez terminé
|
||||
|
||||
Installez les dépendances des bibliothèques python
|
||||
|
||||
pip install -r /chemin/vers/VulnWhisperer/requirements.txt
|
||||
cd /chemin/vers/VulnWhisperer
|
||||
python setup.py install
|
||||
```
|
||||
|
||||
**(Optional) If using a proxy, add proxy URL as environment variable to PATH**
|
||||
```shell
|
||||
export HTTP_PROXY=http://example.com:8080
|
||||
export HTTPS_PROXY=http://example.com:8080
|
||||
```
|
||||
(Optionnel) Si vous utilisez un proxy, ajoutez l'URL du proxy comme variable d'environnement au PATH
|
||||
|
||||
Now you're ready to pull down scans. (see <a href="#run">run section</a>)
|
||||
export HTTP_PROXY=[http://exemple.com:8080](http://exemple.com:8080)
|
||||
export HTTPS_PROXY=[http://exemple.com:8080](http://exemple.com:8080)
|
||||
|
||||
Vous êtes maintenant prêt à télécharger les scans.
|
||||
|
||||
Configuration
|
||||
-----
|
||||
Il y a quelques étapes de configuration pour mettre en place VulnWhisperer :
|
||||
|
||||
There are a few configuration steps to setting up VulnWhisperer:
|
||||
* Configure Ini file
|
||||
* Setup Logstash File
|
||||
* Import ElasticSearch Templates
|
||||
* Import Kibana Dashboards
|
||||
Configurer le fichier Ini
|
||||
|
||||
<a href="https://github.com/austin-taylor/VulnWhisperer/blob/master/configs/frameworks_example.ini">frameworks_example.ini file</a>
|
||||
<p align="left" style="width:200px"><img src="https://github.com/austin-taylor/vulnwhisperer/blob/master/docs/source/config_example.png" style="width:200px"></p>
|
||||
Configurer le fichier Logstash
|
||||
|
||||
Importer les modèles ElasticSearch
|
||||
|
||||
<a id="run">Run</a>
|
||||
-----
|
||||
To run, fill out the configuration file with your vulnerability scanner settings. Then you can execute from the command line.
|
||||
```python
|
||||
(optional flag: -F -> provides "Fancy" log colouring, good for comprehension when manually executing VulnWhisperer)
|
||||
Importer les tableaux de bord Kibana
|
||||
|
||||
Exécution
|
||||
Pour exécuter, remplissez le fichier de configuration avec les paramètres de votre scanner de vulnérabilités. Ensuite, vous pouvez l'exécuter depuis la ligne de commande.
|
||||
|
||||
# (optionnel : -F -> fournit une coloration "Fantaisie" des logs, utile pour la compréhension lors de l'exécution manuelle de VulnWhisperer)
|
||||
vuln_whisperer -c configs/frameworks_example.ini -s nessus
|
||||
or
|
||||
# ou
|
||||
vuln_whisperer -c configs/frameworks_example.ini -s qualys
|
||||
|
||||
```
|
||||
If no section is specified (e.g. -s nessus), vulnwhisperer will check on the config file for the modules that have the property `enabled=true` and run them sequentially.
|
||||
|
||||
<p align="center" style="width:300px"><img src="https://github.com/austin-taylor/vulnwhisperer/blob/master/docs/source/running_vuln_whisperer.png" style="width:400px"></p>
|
||||
Next you'll need to import the visualizations into Kibana and setup your logstash config. You can either follow the sample setup instructions [here](https://github.com/HASecuritySolutions/VulnWhisperer/wiki/Sample-Guide-ELK-Deployment) or go for the `docker-compose` solution we offer.
|
||||
|
||||
Si aucune section n'est spécifiée (ex. -s nessus), vulnwhisperer vérifiera dans le fichier de configuration les modules ayant la propriété enabled=true et les exécutera séquentiellement.
|
||||
|
||||
Docker-compose
|
||||
-----
|
||||
ELK is a whole world by itself, and for newcomers to the platform, it requires basic Linux skills and usually a bit of troubleshooting until it is deployed and working as expected. As we are not able to provide support for each users ELK problems, we put together a docker-compose which includes:
|
||||
ELK est un monde en soi, et pour les nouveaux venus sur la plateforme, cela nécessite des compétences de base sous Linux et généralement un peu de dépannage jusqu'à ce qu'il soit déployé et fonctionne comme prévu. Comme nous ne sommes pas en mesure de fournir un support pour les problèmes ELK de chaque utilisateur, nous avons mis en place un docker-compose qui inclut :
|
||||
|
||||
- VulnWhisperer
|
||||
- Logstash 6.6
|
||||
- ElasticSearch 6.6
|
||||
- Kibana 6.6
|
||||
VulnWhisperer
|
||||
|
||||
The docker-compose just requires specifying the paths where the VulnWhisperer data will be saved, and where the config files reside. If ran directly after `git clone`, with just adding the Scanner config to the VulnWhisperer config file ([/resources/elk6/vulnwhisperer.ini](https://github.com/HASecuritySolutions/VulnWhisperer/blob/master/resources/elk6/vulnwhisperer.ini)), it will work out of the box.
|
||||
Logstash 6.6
|
||||
|
||||
It also takes care to load the Kibana Dashboards and Visualizations automatically through the API, which needs to be done manually otherwise at Kibana's startup.
|
||||
ElasticSearch 6.6
|
||||
|
||||
For more info about the docker-compose, check on the [docker-compose wiki](https://github.com/HASecuritySolutions/VulnWhisperer/wiki/docker-compose-Instructions) or the [FAQ](https://github.com/HASecuritySolutions/VulnWhisperer/wiki).
|
||||
Kibana 6.6
|
||||
|
||||
Getting Started
|
||||
===============
|
||||
Le docker-compose nécessite simplement de spécifier les chemins où les données de VulnWhisperer seront sauvegardées, et où se trouvent les fichiers de configuration. S'il est exécuté directement après un git clone, en ajoutant simplement la configuration du scanner au fichier de configuration de VulnWhisperer (/resources/elk6/vulnwhisperer.ini), il fonctionnera immédiatement.
|
||||
|
||||
Our current Roadmap is as follows:
|
||||
- [ ] Create a Vulnerability Standard
|
||||
- [ ] Map every scanner results to the standard
|
||||
- [ ] Create Scanner module guidelines for easy integration of new scanners (consistency will allow #14)
|
||||
- [ ] Refactor the code to reuse functions and enable full compatibility among modules
|
||||
- [ ] Change Nessus CSV to JSON (Consistency and Fix #82)
|
||||
- [ ] Adapt single Logstash to standard and Kibana Dashboards
|
||||
- [ ] Implement Detectify Scanner
|
||||
- [ ] Implement Splunk Reporting/Dashboards
|
||||
Il se charge également de charger automatiquement les tableaux de bord et les visualisations Kibana via l'API, ce qui doit être fait manuellement autrement au démarrage de Kibana.
|
||||
|
||||
On top of this, we try to focus on fixing bugs as soon as possible, which might delay the development. We also very welcome PR's, and once we have the new standard implemented, it will be very easy to add compatibility with new scanners.
|
||||
Pour plus d'informations sur le docker-compose, consultez le wiki docker-compose ou la FAQ.
|
||||
|
||||
The Vulnerability Standard will initially be a new simple one level JSON with all the information that matches from the different scanners having standardized variable names, while maintaining the rest of the variables as they are. In the future, once everything is implemented, we will evaluate moving to an existing standard like ECS or AWS Vulnerability Schema; we prioritize functionality over perfection.
|
||||
Feuille de route
|
||||
Notre feuille de route actuelle est la suivante :
|
||||
|
||||
Video Walkthrough -- Featured on ElasticWebinar
|
||||
----------------------------------------------
|
||||
<a href="http://www.youtube.com/watch?feature=player_embedded&v=zrEuTtRUfNw?start=30
|
||||
" target="_blank"><img src="https://github.com/austin-taylor/vulnwhisperer/blob/master/docs/source/elastic_webinar.png"
|
||||
alt="Elastic presentation on VulnWhisperer" border="10" /></a>
|
||||
[ ] Créer un standard de vulnérabilité
|
||||
|
||||
Authors
|
||||
------
|
||||
- [Austin Taylor (@HuntOperator)](https://github.com/austin-taylor)
|
||||
- [Justin Henderson (@smapper)](https://github.com/SMAPPER)
|
||||
[ ] Mapper les résultats de chaque scanner au standard
|
||||
|
||||
Contributors
|
||||
------------
|
||||
- [Quim Montal (@qmontal)](https://github.com/qmontal)
|
||||
- [@pemontto](https://github.com/pemontto)
|
||||
- [@cybergoof](https://github.com/cybergoof)
|
||||
[ ] Créer des directives de module de scanner pour une intégration facile de nouveaux scanners
|
||||
|
||||
AS SEEN ON TV
|
||||
-------------
|
||||
<p align="center" style="width:400px"><a href="https://twitter.com/MalwareJake/status/935654519471353856"><img src="https://github.com/austin-taylor/vulnwhisperer/blob/master/docs/source/as_seen_on_tv.png" style="width:400px"></a></p>
|
||||
[ ] Refactoriser le code pour réutiliser les fonctions et permettre une compatibilité totale entre les modules
|
||||
|
||||
[ ] Changer Nessus CSV en JSON
|
||||
|
||||
[ ] Adapter le Logstash unique au standard et aux tableaux de bord Kibana
|
||||
|
||||
[ ] Implémenter le scanner Detectify
|
||||
|
||||
[ ] Implémenter le reporting/tableaux de bord Splunk
|
||||
|
||||
En plus de cela, nous essayons de nous concentrer sur la correction des bugs dès que possible, ce qui peut retarder le développement. Nous accueillons également très volontiers les PR (Pull Requests), et une fois que nous aurons implémenté le nouveau standard, il sera très facile d'ajouter la compatibilité avec de nouveaux scanners.
|
||||
|
||||
Le standard de vulnérabilité sera initialement un nouveau JSON simple à un niveau avec toutes les informations correspondantes des différents scanners ayant des noms de variables standardisés, tout en conservant le reste des variables telles quelles.
|
||||
|
Reference in New Issue
Block a user