Xploit0 is a powerful security tool designed to scan and analyze all dependencies present in your repository, ensuring your digital infrastructure stays safe and secure. It helps organizations identify vulnerabilities, track CVEs (Common Vulnerabilities and Exposures), and predict potential security risks using advanced machine learning models. Xploit0 is ideal for keeping your systems protected by continuously evaluating your software’s dependencies.
Start by creating a virtual environment named xenv to isolate your project’s dependencies:
python -m venv xenvOR
python3 -m venv xenvActivate the virtual environment:
- On Windows:
.\xenv\Scripts\activate- On macOS/Linux:
source xenv/bin/activateOnce the virtual environment is activated, install all the necessary dependencies from the requirements.txt file:
pip install -r requirements.txtTo start the security analysis, run the run.py script. This script will perform the following steps in sequence:
- Dependency Scanning: Runs
depscan.pyto scan all dependencies in your project. - CVE Data Fetching: Fetches CVE data using
cvefetch.py. - CVE Data Processing: Processes the fetched CVE data with
cvedata.py. - Data Preprocessing: Prepares the data using
preproscsv.py. - Model Training: Trains a machine learning model to predict vulnerabilities with
modeltrain.py. - Vulnerability Prediction: Runs the trained model to predict potential vulnerabilities with
predict.py.
To run the analysis, use the following command:
python run.pyOR
python3 run.pyEach script will execute in order, and the output will be saved in logs for later review.
Once the analysis is complete, run the following command to launch the Streamlit dashboard, which provides detailed insights into the vulnerabilities detected during the analysis:
streamlit run dashboard.pyThe dashboard will open in your browser at:
The interactive dashboard will display:
- Detected vulnerabilities
- CVE data
- Model predictions
- And much more!!
After running the analysis, you can find additional information in the following directories:
- Logs: Detailed logs of each script execution (with timestamps and status) will be saved in the
logsdirectory. - Reports: A comprehensive analysis report will be generated and saved in the
analysis_resultsdirectory.
To stop the analysis or the dashboard, simply terminate the process using CTRL+C in the terminal.
