Here's an extended version of the README.md file with detailed explanations:
# Security Testing Tool for Websites
## Overview
This project is a comprehensive security testing tool for websites, designed to automate vulnerability testing including SQL injection, cross-site scripting (XSS), server-side template injection (SSTI), and server-side request forgery (SSRF). It scrapes a given website, identifies forms, and tests for potential security issues. By automating these tests, the tool helps identify and address potential security vulnerabilities that could be exploited by malicious actors.
## Features
- **Automated Website Scraping:** The tool navigates through a given website, extracting and analyzing pages to identify forms and links.
- **Form Detection and Analysis:** Detects forms on web pages and analyzes them for potential vulnerabilities.
- **Vulnerability Testing:** Tests forms and web pages for various types of security vulnerabilities, including:
- **SQL Injection:** Checks for the presence of SQL injection vulnerabilities in form fields.
- **XSS (Cross-Site Scripting):** Evaluates form fields for potential XSS vulnerabilities by submitting a payload and checking the response.
- **SSTI (Server-Side Template Injection):** Analyzes templates to check for potential server-side template injection vulnerabilities.
- **SSRF (Server-Side Request Forgery):** Checks for server-side request forgery by submitting a payload and examining the response.
## Installation
To install the required dependencies for this project, you can use the following command:
```bash
pip install -r requirements.txt
This command will install all the necessary packages listed in the requirements.txt
file.
-
Clone the repository:
git clone https://github.com/therealslimshady0/Homewrecker.git
-
Navigate to the project directory:
cd Homewrecker
-
Run the following command:
python homewrecker.py -u <website_url>
Replace
<website_url>
with the base URL of the website you want to test.
- homewrecker.py: The main script responsible for scraping websites and testing vulnerabilities.
- requirements.txt: A list of Python packages required for the project.
- README.md: This file provides an overview and guide for the project.
- LICENSE: The project's licensing information.
When testing for security vulnerabilities, the tool checks each identified form field for potential issues using automated payloads. It provides detailed output for each vulnerability detected, including:
- XSS (Cross-Site Scripting): The tool sends a payload to each identified form field and checks if the script tag returns in the response.
- SSTI (Server-Side Template Injection): The tool sends a payload to the server-side template and checks if it returns a value that suggests a potential vulnerability.
- SSRF (Server-Side Request Forgery): The tool sends a payload to the server and analyzes the response to detect potential SSRF vulnerabilities.
- SQL Injection: The tool sends test data and examines the response to detect SQL injection issues.
This project is licensed under the MIT License. See the LICENSE file for more details.