Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Bearbeiter: Andre Lutz & Michael Lubitz Betreuer: Cedric Mössner

Ähnliche Präsentationen


Präsentation zum Thema: "Bearbeiter: Andre Lutz & Michael Lubitz Betreuer: Cedric Mössner"—  Präsentation transkript:

1 Bearbeiter: Andre Lutz & Michael Lubitz Betreuer: Cedric Mössner
Praktikumspräsentation zu Web-Anwendungen und Serviceorientierte Architekturen (WASA) im Projektteam Pen_iCC Bearbeiter: Andre Lutz & Michael Lubitz Betreuer: Cedric Mössner :49

2 Inhaltsübersicht Anforderungsanalyse
Anforderungsanalyse - Feature Spezifizierung Design – Kontext Map Design – Web-API Schnittstelle Design – Microservice Architektur Implementierung/Demo Andre Lutz - Pen_iCC

3 Anforderungsanalyse Vision
Benutzerschnittstelle für ein neuronales Netz das Sicherheitslücken findet Businessziele Einfache Verwaltung des neuronalen Netzes Visualisierung der Resultate Capabilities Erzeugen und verwalten von Payloads Reinforced Payloads Seq2Seq Payloads Starten und verwalten von Angriffen Abrufen von Auswertungen (1) Vor der Entwicklung sollten die Vision und das Ziel des Projektes klar sein. (1.1) Die Vision des Projektes ist die Bereitstellung einer Benutzerschnittstelle für Penetration Tester, damit diese effektiv ein neuronales Netz verwalten können. Dieses Netz ist für die Generierung von schädlichen Eingaben und die Evaluierung, ob ein Angriff mit den Daten erfolgreich war, zuständig. (2) Beschreiben den Nutzen, den das Unternehmen aus dem System zieht. (2.1) Ein Businessziel ist die intuitive und einfache Verwaltung des Neuronalen Netzes, welches für die Erzeugung von schädlichen Eingaben und die anschließende Evaluierung zuständig ist. (2.2) Wenn ein Angriff erfolgreich durchgeführt wurde, dann soll dieses Resultat im Code angezeigt werden. Dazu gehört das die Wahrscheinlichkeit für den erfolgreichen Angriff anhand einer definierten Farbskala dargestellt wird. (3) Beschreiben die benötigten Funktionalitäten um die Businessziele auf nicht-technische Weise zu erreichen. ( ) Zu den Capabilities gehört die Erzeugung und die Verwaltung von Reinforced Payloads und Seq2Seq Payloads. Ein Payload ist dabei das Modell des neuronalen Netzes. Das Reinforced Payload wird dabei anhand von Erfolg und Misserfolg bei Angriffen erzeugt und das Seq2Seq Payload anhand von Trainingsdaten. (3.2) Weiterhin wird die Fähigkeit (Capability) benötigt Angriffe zu verwalten und zu starten. Zu der Verwaltung gehört das ausgewählt werden kann, was angegriffen werden soll. Weiterhin sollen die Ergebnisse später abrufbar sein. (3.3) Wenn ein Angriff erfolgreich durchgeführt wurde, wird dazu ein Bericht erstellt. Der Nutzer soll die Möglichkeit haben diesen abrufen zu können. Penetration Tester: Personen, die ein System im Auftrag des Unternehmens angreifen und eventuelle Sicherheitsrisiken aufdecken sollen Andre Lutz - Pen_iCC

4 Anforderungsanalyse - Feature Spezifizierung
Erzeugen von neuralen Payloads Pretraining Eingabeauswahl Ergebnisspeicherung Ergebnisdarstellung (1) Sind die Funktionen, die die Software besitzen soll. Das Kern-Feature ist „Erzeugen von neuralen Payloads (1.1) Dieses Feature sorgt für die Erstellung von Modellen, die von dem neuronalen Evaluator genutzt werden um eine Web-Anwendung anzugreifen. (1.2) Dies Feature sorgt dafür das das neuronale Netz vortrainiert wird damit genauere Resultate geliefert werden (1.3) Dieses Feature sorgt dafür das Eingabefelder ausgewählt werden können, die später vom neuronalen Evaluator angegriffen werden. (1.4) Dieses Feature sorgt dafür das die Resultate eines Angriffs auf dem Server oder optional als PDF-Datei auf dem Client abgespeichert werden können. (1.5) Dieses Feature sorgt dafür, falls ein erfolgreicher Angriff durchgeführt wurde, dass die Codezeilen, die den Angriff ermöglichten mit einer Angriffswahrscheinlichkeit hervorgehoben werden. Andre Lutz - Pen_iCC

5 Design – Kontext Map (Seq2Seq) Dieser Bounded Kontext ist für die Durchführung eines Sequence-to-Sequence-Trainings. Dabei wird mithilfe von Gewichten ein Zusammenhang in Sequenzen hergestellt. Das Resultat ist das Seq2Seq Model. (ModelSeq2Seq) Das Modelergebnis des Seq2Seq Trainings. (Reinforced) Dieser Bounded Kontext ist für die Durchführung eines Reinforced-Trainings. Bei wird mittels Bestrafung und Belohnung im aktiven Angriff gegen eine Website das Modell trainiert. (ModelReinforced) Das Modelergebnis des Reinforced-Trainings. (NeuralEvaluator) Dieser Bounded Kontext verwendet die erzeugten Modelle und führt Angriffe aus. Dabei wird überprüft oft ein Angriff erfolgreich oder nicht war. (Ergebnis) Enthält die angreifbaren Codezeilen, die Wahrscheinlichkeit für einen erfolgreichen Angriff und die gehörigen schädlichen Eingaben. (Datenspeicherung) Dieser Bounded Kontext ist für die Speicherung und Verwaltung von Ergebnissen zuständig. Das Ergebnis ist. (PdfExport) Dieser Bounded Kontext erzeugt aus einem gegeben Ergebnis eine Pdf-Datei Andre Lutz - Pen_iCC

6 Design – Web-API Schnittstelle
Schnittstellendefinition mit Swagger (1) Die API Definition wurde mit Swagger vorgenommen. Swagger ist ein bekanntes Werkzeug um Web-APIs zu spezifizieren und zu testen. Das Web-API-Tool Swagger unterstützt den OpenAPI Standard. Abgleitet aus der Domänenlogik, das Teil der Masterarbeit ist, wurde die Web-API spezifiziert. Michael Lubitz - Pen_iCC

7 Design – Microservice Architektur
Frontend: Aufteilung der View in unterschiedliche Microservices Hauptanwendung verbindet die Views (1) Microservices sind unabhängig deploybare Module. Die Architektur des Softwaresystems setzt sich aus mehreren Microservices zusammen die über REST-Schnittstellen miteinander kommunizieren. Für die Kommunikation werden die HTTP Methoden GET und POST verwendet. (1.1) Damit das Frontend keinen Monolith bildet, wird dieses auch in mehrere Microservices unterteilt. Dies ermöglicht das die Views unabhängig voneinander deployt werden können, was zum Beispiel zu einer guten Skalierbarkeit führt und bei dem Ausfall eines View-Microservices dafür sorgt, dass die anderen weiterhin funktionsfähig bleiben. Des Weiteren können die Teams technisch und fachlich unabhängig voneinander arbeiten. (1.2) Die Startseite (Hauptanwendung) benutzt AngularJS, um die verschiedenen Views zusammenzuführen. Michael Lubitz - Pen_iCC

8 Implementierung/Demo
Frontend: Angriff starten (1) Der Screenshot zeigt die Startseite, die man sieht, wenn man die Anwendung im Browser aufruft. Sie bietet dem Benutzer die Möglichkeit ein Angriffsziel einzugeben ("Enter target …"), um anschließend einen Angriff auf dieses Ziel zu starten (Button "Start").  Michael Lubitz - Pen_iCC

9 Implementierung/Demo
Frontend: Payloads auswählen (1) Über den Button "Choose Payloads" lassen sich die Payloads für einen Angriff auswählen. Dazu kann der Benutzer zwischen einer Default Menge an Payloads oder einzelnen Payloads wählen. Michael Lubitz - Pen_iCC


Herunterladen ppt "Bearbeiter: Andre Lutz & Michael Lubitz Betreuer: Cedric Mössner"

Ähnliche Präsentationen


Google-Anzeigen