
Kvasir: Verwaltung von Penetrationstest-Daten
Willkommen bei Kvasir! In diesen Verzeichnissen finden Sie die grundlegenden Werkzeuge für ein effektives Datenmanagement während eines Penetrationstests.
Penetrationstests können im Datenmanagement zum Albtraum werden, weil im Allgemeinen große Mengen an Informationen anfallen. Schwachstellenscanner liefern viele tatsächliche und potenzielle Schwachstellen zur Überprüfung. Portscanner können für nur wenige Hosts Tausende von Ports zurückgeben. Wie einfach ist es, all diese Daten mit Ihren Kollegen zu teilen?
Genau dabei hilft Ihnen Kvasir. Hier ist, was Sie für den Einstieg benötigen:
Kvasir ist eine web2py-Anwendung und kann für jeden Kunden oder Auftrag installiert werden. Dieses Design hält Daten getrennt und verhindert, dass Sie versehentlich andere Kunden angreifen oder deren Daten prüfen.
Dieses Tool wurde in erster Linie für das Security Posture Assessment (SPA)-Team von Cisco Systems Advanced Services entwickelt. Auch wenn nicht jede Methodik direkt übereinstimmen mag, ist Kvasir etwas, das geformt und an fast jedes Arbeitsszenario angepasst werden kann. Pull Requests über Github sind ausdrücklich erwünscht!
Die aktuelle Dokumentation wird im Kvasir-Github-Wiki gepflegt (https://github.com/KvasirSecurity/Kvasir/wiki)
Kvasir wurde in erster Linie für kurze, kundenorientierte Einsätze entwickelt. Für jeden Kunden würde ein Verzeichnis 'application' verwendet, was eine viel stärkere Datentrennung ermöglicht.
Nehmen wir zum Beispiel zwei Kunden an, Foo Widgets und Bar Napkins.
Die Daten für jeden Kunden werden unter /opt/data/$CUSTOMERNAME gespeichert.
Installieren Sie Kvasir im Verzeichnis jedes Kunden:
Verknüpfen Sie Kvasir nun symbolisch mit dem web2py-Anwendungsverzeichnis:
Erstellen Sie eindeutige Datenbanken:
Kopieren Sie die Datei kvasir.yaml.sample in kvasir.yaml und ändern Sie die Standardwerte:
Sie können loslegen!
Das web2py-Scheduler-Aufgabensystem wird für langlaufende Aufgaben verwendet, wie das Starten von Terminals, das Verarbeiten von XML-Reportdateien usw. Der Scheduler kann mit dem Haupt-web2py-Prozess laufen oder in einem separaten Terminal gestartet werden.
Zum Starten als Teil des web2py-Webserverprozesses:
cd $WEB2PY_HOME
python web2py.py -a <recycle> -X -K foowidgets,barnapkins
Zum Starten als eigener Prozess:
cd $WEB2PY_HOME
python web2py.py -K foowidgets,barnapkins
Zusätzliche Worker können durch Wiederholen des Anwendungsnamens gestartet werden:
cd $WEB2PY_HOME
python web2py.py -K foowidgets,foowidgets,barnapkins,barnapkins
Standardmäßig ist die Protokollierungsebene der Scheduler-Aufgaben DEBUG. Das kann auf einem Terminal sehr unruhig werden. Um dies zu ändern, kopieren Sie die Datei logging.conf in das web2py- Hauptverzeichnis. Passen Sie sie nach Belieben an.
cd $WEB2PY_HOME
cp applications/$APPNAME/logging.conf .