
Python-basierter Web-Sicherheitsscanner, der HTTP-Header, SSL/TLS, DNS-Einträge und häufige Fehlkonfigurationen analysiert, um einen bewerteten Sicherheitsbericht mit umsetzbaren Empfehlungen zu erstellen.
EasyScan ist ein Python-Skript, das die Sicherheit einer bestimmten Website durch die Überprüfung ihrer HTTP-Header, DNS-Einträge und anderer Konfigurationen analysiert. Das Skript erstellt einen Sicherheitsbericht mit einer Punktzahl, einer Note und Empfehlungen zur Behebung potenzieller Schwachstellen.
Das Skript deckt die folgenden Testfälle ab:
Referrer-Policy-Header und Meta-Tag./admin, /wp-admin, /phpmyadmin, /cpanel)./images, /uploads, /files usw.) auf offengelegte Verzeichnislisten.Set-Cookie-Header auf Secure-, HttpOnly-, SameSite-Attribute und __Secure-/__Host-Präfixe.Server-, X-Powered-By-, X-AspNet-Version-Header.Access-Control-Allow-Origin-Einstellungen und Konflikte bei Wildcard und Credentials.Content-Type-Header.robots.txt auf potenziell sensible nicht erlaubte Pfade.OPTIONS-Anfragen, um gefährliche Verben (TRACE, DELETE, PUT, CONNECT) zu erkennen..git/config, .env, .htaccess, backup.sql, wp-config.php.bak und mehr.<script>- und <link>-Tags auf fehlende integrity-Attribute.http://-Ressourcen-URLs, die auf HTTPS-Seiten geladen werden.X-Frame-Options als auch CSP-frame-ancestors auf Clickjacking-Schutz.Host-Header in Weiterleitungen oder im Antworttext reflektiert wird.url, next, redirect, return usw.) auf Open-Redirect-Schwachstellen.EasyScan benötigt Python 3.6+ und die folgenden Bibliotheken:
requestsbeautifulsoup4dnspythoncertifiSie können diese Abhängigkeiten mit der bereitgestellten requirements.txt-Datei installieren:
pip install -r requirements.txt
So verwenden Sie das EasyScan-Skript:
easyscan.py.pip install -r requirements.txt
python3 easyscan.py [url]
Basis-Scan:
python3 easyscan.py example.com
Scan mit JSON-Ausgabe, die in einer Datei gespeichert wird:
python3 easyscan.py example.com --json --output report.json
Scan mit längerem Timeout und ausführlicher Protokollierung:
python3 easyscan.py https://example.com --timeout 20 --verbose
Verwenden Sie das Flag --json, um eine strukturierte JSON-Ausgabe zu erhalten, die für die Integration mit anderen Tools nützlich ist:
python3 easyscan.py example.com --json
Der JSON-Bericht enthält ein score-Objekt mit der Gesamtpunktzahl (0-100), einer Buchstabennote (A-F), Schweregradzählungen und allen Ergebnissen.
================================================================================================================================================================
SECURITY REPORT
================================================================================================================================================================
Header Status Severity Recommendation
================================================================================================================================================================
[CRI] SSL/TLS Missing Critical The site is not using HTTPS. Implement SSL/TLS to encrypt data in transit.
[HI] Clickjacking No Protection High Set 'X-Frame-Options: DENY' or CSP 'frame-ancestors' directive to prevent clickjacking.
[HI] Public Admin Page (/admin) Accessible High Restrict access to /admin to specific IP addresses and/or enable authentication.
[MED] Content-Security-Policy Missing Medium Implement a Content Security Policy (CSP) to prevent XSS and code injection attacks.
[MED] Strict-Transport-Security Missing Medium Implement Strict Transport Security (HSTS) to enforce secure connections.
[MED] Permissions-Policy Missing Medium Set a 'Permissions-Policy' header to restrict browser features (camera, microphone, geolocation).
[LOW] SPF Record Missing Low Add an SPF record to your domain's DNS settings to help prevent email spoofing.
[INF] Meta Referrer Missing Low Add a 'referrer' META tag with 'no-referrer' to prevent leaking referrer information.
============================================================
SECURITY SCORE: 55/100 (Grade: C)
============================================================
Total Issues : 8
Critical : 1
High : 2
Medium : 4
Low : 1
Info : 0
============================================================
Beachten Sie, dass das Skript möglicherweise nicht alle möglichen Sicherheitsszenarien abdeckt, und es wird empfohlen, eine gründliche Sicherheitsbewertung Ihrer Website durchzuführen.
EasyScan ist auch verfügbar unter https://easyscan.onrender.com/
Wenn Sie Fragen haben oder ein vollständiges Sicherheitsaudit benötigen, wenden Sie sich bitte auf Twitter an @0xdevrel.
| Flag | Beschreibung |
|---|
url | Positionsargument. Die zu scannende URL (z. B. example.com oder https://example.com). |
--json | Ausgabe der Ergebnisse als JSON auf stdout. |
--output DATEI / -o DATEI | Speichert den Bericht in einer bestimmten Datei. |
--timeout SEK / -t SEK | Legt das Anforderungs-Timeout in Sekunden fest (Standard: 10). |
--verbose / -v | Aktiviert Debug-Level-Logging-Ausgabe. |