
Entwicklerorientierte Wissensdatenbank zu Sicherheitslücken in Anwendungen mit Beispielen für unsicheren vs. sicheren Code, Präventionshinweisen und OWASP/CWE-Zuordnungen über Sprachen und Frameworks hinweg.
VulnVault ist eine praxisnahe, entwicklerorientierte Wissensdatenbank zu häufigen und kritischen Sicherheitslücken in Anwendungen, die den gesamten Lebenszyklus von Code über Build und Infrastruktur bis hin zum Deployment abdeckt.
Sie bietet klare Erklärungen, realistische Beispiele für unsicheren vs. sicheren Code und umsetzbare Anleitungen über mehrere Programmiersprachen und Frameworks hinweg, um Teams dabei zu helfen, Anwendungen standardmäßig sicher zu entwickeln.
🎯 Ziel: Die Anwendungssicherheitslage der Organisation verbessern, indem sicheres Programmieren verständlich, zugänglich und wiederholbar gemacht wird.
Hier abrufbar – https://viralmaniar.github.io/Vulnvault/site/vulnvault.html
Die meisten Sicherheitsrichtlinien sind entweder:
VulnVault schließt diese Lücke, indem es:
Dieses Repo ist für die Nutzung durch folgende Zielgruppen konzipiert:
VulnVault ist nach Schwachstellenkategorie organisiert, nicht nach Tool oder Standard.
Jede Schwachstelle enthält in der Regel:
Die Beispiele verwenden realistische Anwendungsmuster, keine konstruierten Codeschnipsel.
Die aktuelle Abdeckung umfasst (und wird erweitert):
Jedes Beispiel stellt ❌ unsichere und ✅ sichere Implementierungen direkt gegenüber.
String query = "SELECT * FROM users WHERE username = '" + username + "'";
Warum das wichtig ist: Nicht vertrauenswürdige Eingaben werden direkt in die Abfrage eingefügt, wodurch Angreifer die SQL-Logik manipulieren können.
String query = "SELECT * FROM users WHERE username = ?";
PreparedStatement ps = connection.prepareStatement(query);
ps.setString(1, username);
ResultSet rs = ps.executeQuery();
📚 Lernen & Nachschlagen Nutze es als Handbuch für sicheres Programmieren während der Entwicklung.
🔍 Code-Reviews Verlinke relevante VulnVault-Seiten direkt in PR-Kommentaren.
🧪 Sicherheitstests Validiere, ob Befunde aus SAST, DAST oder Pentests ausnutzbar sind.
🎓 Schulung & Onboarding Nutze die Beispiele, um neue Mitarbeitende und Junior-Entwickler weiterzubilden.
🛡 Ermöglichung von AppSec-Programmen Richte die Anleitungen an internen Standards, Threat Models und der Risikobereitschaft aus.
Beiträge sind willkommen und erwünscht. Du kannst beitragen durch:
Leitprinzipien für Beiträge:
VulnVault konzentriert sich bewusst auf:
Dies ist kein Schwachstellen-Scanner – es ist ein Asset zur Ermöglichung von Sicherheit.
Die Beispiele in diesem Repository dienen ausschließlich Bildungszwecken. Stelle unsichere Beispiele nicht auf Produktionssystemen bereit.
Dieses Projekt ist unter der MIT-Lizenz lizenziert. Siehe die LICENSE-Datei für Details.
Inspiriert von realen Sicherheitsüberprüfungen, Penetrationstests und Lehren aus dem Aufbau und der Absicherung von Produktionssystemen.
🔐 Baue sichere Software. Von Grund auf.