Revealing security vulnerabilities in web applications with comprehensive scanning and analysis
The Vulnerability Scanner is a Django-based application designed to conduct extensive vulnerability tests on specified websites. By identifying potential weaknesses like Cross-Site Scripting (XSS), SQL Injection, CSRF token issues, and more, it aids developers and security experts in strengthening their site's security.
Why this project?
Security vulnerabilities in web applications can lead to data breaches, financial loss, and reputational damage. This tool helps identify these weaknesses early, offering actionable insights to prevent attacks and improve overall security.
- Cross-Site Scripting (XSS) Detection: Identifies scripts injected into web pages to prevent unauthorized access.
- SQL Injection Detection: Finds points where SQL statements may be manipulated.
- JavaScript Injection: Tests for vulnerabilities where JavaScript can be maliciously injected.
- Remote Code Execution: Identifies potential points where remote code execution is possible.
- CSRF Token Validation: Ensures tokens are valid and up to date.
- Authentication Check: Detects weak or improperly configured authentication setups.
- Comprehensive Site Safety Score: Summarizes findings to provide an overall security score.
These instructions will get you a copy of the project up and running on your local machine for development and testing.
- Python 3.7+
- Django 3.x or higher
- Familiarity with web security basics
-
Clone the repository
git clone https://github.com/AyeshaAshfaq12/Vulnerability_Scanner.git cd Vulnerability_Scanner
-
Install dependencies
pip install -r requirements.txt
-
Start the development server
python manage.py runserver
- Open the application in your browser at
http://127.0.0.1:8000/
. - Enter the URL of the website to be tested in the provided field.
- Initiate the scan to analyze the site.
- Review the results, which include vulnerabilities identified, suggested mitigations, and the overall security score.
- Add more vulnerability tests, such as Directory Traversal and Local File Inclusion.
- Include a scheduling feature for regular, automated scans.
- Provide integration options with popular CI/CD pipelines for continuous security.
We welcome contributions! Please follow these steps to get started:
- Fork the project.
- Create a feature branch (git checkout -b feature/NewFeature).
- Commit your changes (git commit -m 'Add NewFeature').
- Push to the branch (git push origin feature/NewFeature).
- Open a Pull Request.
Distributed under the MIT License. See LICENSE
for more information.