Skip to content

Commit 150bc88

Browse files
committed
added readme and correct cli naming
1 parent 3b4d7b1 commit 150bc88

File tree

4 files changed

+79
-37
lines changed

4 files changed

+79
-37
lines changed

LICENCE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 aymane aallaoui
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 42 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,53 @@
1-
GoHTTPSecScanner
1+
# GoHTTPScanner
2+
23
An advanced HTTP security vulnerability scanner that detects a wide range of web application vulnerabilities.
3-
Features
44

5-
Comprehensive Vulnerability Detection: Identifies HTTP smuggling, XSS, SQL injection, and many other vulnerabilities
6-
Modular Architecture: Easy to extend with new vulnerability checks
7-
Concurrent Scanning: Fast multi-threaded testing
8-
Multiple Output Formats: Results in text, JSON, or YAML
9-
Detailed Remediation: Provides actionable fixes for discovered vulnerabilities
10-
Production-Ready: Robust error handling and retry mechanisms
11-
Installation
12-
From Source
5+
## Features
6+
7+
- **Comprehensive Vulnerability Detection:** Identifies HTTP smuggling, XSS, SQL injection, and many other vulnerabilities.
8+
- **Modular Architecture:** Easy to extend with new vulnerability checks.
9+
- **Concurrent Scanning:** Fast multi-threaded testing.
10+
- **Multiple Output Formats:** Results in text, JSON, or YAML.
11+
- **Detailed Remediation:** Provides actionable fixes for discovered vulnerabilities.
12+
- **Production-Ready:** Robust error handling and retry mechanisms.
13+
14+
## Installation
1315

14-
# Clone the repository
16+
### From Source
1517

18+
```sh
1619
git clone https://github.com/aymaneallaoui/go-http-scanner.git
1720
cd go-http-scanner
1821

19-
# Build the project
20-
2122
go build -o httpscan
2223

23-
# Make it available system-wide (optional)
24-
2524
sudo mv httpscan /usr/local/bin/
26-
Using Go Install
27-
Quick Start
25+
```
2826

29-
go install github.com/aymaneallaoui/go-http-scanner@latest
27+
## Supported modules
3028

31-
Available Modules
32-
ModuleDescriptionHeaderSecurityChecks for missing or insecure HTTP security headersHttpSmugglingDetects HTTP request smuggling vulnerabilitiesSSLTLSSecurityChecks for SSL/TLS security issues like outdated protocols and weak ciphersContentSecurityChecks for content security issues like MIME type confusionHTTPMethodsChecks for support of dangerous HTTP methodsServerInfoLeakageChecks for server information leakageXSSVulnerabilityChecks for Cross-Site Scripting vulnerabilitiesSQLInjectionChecks for SQL injection vulnerabilitiesDirectoryTraversalChecks for directory traversal vulnerabilitiesHostHeaderAttackChecks for host header attack vulnerabilitiesCORSMisconfigurationChecks for CORS misconfigurationsCacheAttackChecks for web cache poisoning vulnerabilitiesWebCacheDeceptionChecks for web cache deception vulnerabilitiesOpenRedirectChecks for open redirect vulnerabilitiesClickjackingChecks for clickjacking vulnerabilitiesCookieSecurityChecks for cookie security issues
29+
| Module | Description | Severity |
30+
| ------------------------ | ---------------------------------------------------------------------------- | -------- |
31+
| **HeaderSecurity** | Checks for missing or insecure HTTP security headers. | Medium |
32+
| **HttpSmuggling** | Detects HTTP request smuggling vulnerabilities. | High |
33+
| **SSLTLSSecurity** | Checks for SSL/TLS security issues like outdated protocols and weak ciphers. | High |
34+
| **ContentSecurity** | Checks for content security issues like MIME type confusion. | Medium |
35+
| **HTTPMethods** | Checks for support of dangerous HTTP methods. | Medium |
36+
| **ServerInfoLeakage** | Checks for server information leakage. | Low |
37+
| **XSSVulnerability** | Checks for Cross-Site Scripting vulnerabilities. | High |
38+
| **SQLInjection** | Checks for SQL injection vulnerabilities. | High |
39+
| **DirectoryTraversal** | Checks for directory traversal vulnerabilities. | High |
40+
| **HostHeaderAttack** | Checks for host header attack vulnerabilities. | Medium |
41+
| **CORSMisconfiguration** | Checks for CORS misconfigurations. | Medium |
42+
| **CacheAttack** | Checks for web cache poisoning vulnerabilities. | Medium |
43+
| **WebCacheDeception** | Checks for web cache deception vulnerabilities. | Medium |
44+
| **OpenRedirect** | Checks for open redirect vulnerabilities. | Medium |
45+
| **Clickjacking** | Checks for clickjacking vulnerabilities. | Medium |
46+
| **CookieSecurity** | Checks for cookie security issues. | Medium |
3347

34-
# Example configuration file (configs/default.yaml)
48+
## Example Configuration File (configs/default.yaml)
3549

50+
```yaml
3651
timeout: 10
3752
max_retries: 3
3853
concurrency: 5
@@ -41,9 +56,9 @@ skip_ssl_verify: false
4156
output_format: text
4257
log_level: info
4358
enabled_modules:
44-
45-
- HeaderSecurity
46-
- HttpSmuggling
47-
- SSLTLSSecurity
48-
disabled_modules:
49-
- ServerInfoLeakage
59+
- HeaderSecurity
60+
- HttpSmuggling
61+
- SSLTLSSecurity
62+
disabled_modules:
63+
- ServerInfoLeakage
64+
```

cmd/root.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ var (
1717
var RootCmd = &cobra.Command{
1818
Use: "gohttpscanner",
1919
Short: "An advanced HTTP security vulnerability scanner",
20-
Long: `GoHTTPSecScanner is an advanced HTTP security vulnerability scanner that
20+
Long: `GoHTTPScanner is an advanced HTTP security vulnerability scanner that
2121
detects a wide range of web application vulnerabilities including HTTP smuggling,
2222
XSS, SQL injection, and many other vulnerabilities.`,
2323
PersistentPreRun: func(cmd *cobra.Command, args []string) {

cmd/scan.go

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -129,16 +129,22 @@ func parseCommaSeparatedList(input string) []string {
129129
}
130130

131131
func printBanner() {
132+
red := "\033[31m"
133+
reset := "\033[0m"
134+
132135
banner := `
133-
_____ ___ _ _ _____ _____ ___ ____ ____
134-
/ ____/ | | | |_ _|_ _|__ \ / __ \ / __ \
135-
| | / /| | |_| | | | | | ) | | | | ______| | | |___ ___ __ _ _ __ _ __ ___ _ __
136-
| | / /_| | _ | | | | | / /| | | | |______| | | / __|/ __/ _' | '_ \| '_ \ / _ \ '__|
137-
| |__\___ | | | |_| |_ _| |_ / /_| |__| | | |__| \__ \ (_| (_| | | | | | | | __/ |
138-
\____/ |_|_| |_|_____|_____|____|\____/ \____/|___/\___\__,_|_| |_|_| |_|\___|_|
136+
137+
/$$$$$$ /$$ /$$ /$$$$$$$$ /$$$$$$$$ /$$$$$$$ /$$$$$$
138+
/$$__ $$ | $$ | $$|__ $$__/|__ $$__/| $$__ $$ /$$__ $$
139+
| $$ \__/ /$$$$$$ | $$ | $$ | $$ | $$ | $$ \ $$| $$ \__/ /$$$$$$$ /$$$$$$ /$$$$$$$ /$$$$$$$ /$$$$$$ /$$$$$$
140+
| $$ /$$$$ /$$__ $$| $$$$$$$$ | $$ | $$ | $$$$$$$/| $$$$$$ /$$_____/ |____ $$| $$__ $$| $$__ $$ /$$__ $$ /$$__ $$
141+
| $$|_ $$| $$ \ $$| $$__ $$ | $$ | $$ | $$____/ \____ $$| $$ /$$$$$$$| $$ \ $$| $$ \ $$| $$$$$$$$| $$ \__/
142+
| $$ \ $$| $$ | $$| $$ | $$ | $$ | $$ | $$ /$$ \ $$| $$ /$$__ $$| $$ | $$| $$ | $$| $$_____/| $$
143+
| $$$$$$/| $$$$$$/| $$ | $$ | $$ | $$ | $$ | $$$$$$/| $$$$$$$| $$$$$$$| $$ | $$| $$ | $$| $$$$$$$| $$
144+
\______/ \______/ |__/ |__/ |__/ |__/ |__/ \______/ \_______/ \_______/|__/ |__/|__/ |__/ \_______/|__/
139145
140146
`
141-
fmt.Println(banner)
142-
fmt.Printf("GoHTTPSecScanner v%s - Advanced HTTP Security Vulnerability Scanner\n", version)
143-
fmt.Println("==========================================================")
147+
fmt.Println(red + banner + reset)
148+
fmt.Printf("%sGoHTTPScanner v%s - Advanced HTTP Security Vulnerability Scanner%s\n", red, version, reset)
149+
fmt.Println(red + "==========================================================" + reset)
144150
}

0 commit comments

Comments
 (0)