GithubHelp home page GithubHelp logo

cybersec-bank's Introduction

Benutzungshinweise

Kompilieren

Der folgende Befehl kompiliert Server und Client, und legt die generierten *.class-Dateien jeweils in einem Unterordner namens binaries ab.

$ ./compile.sh binaries

Datenbank und Konfigurationsdatei erzeugen

Mit dem Befehl

$ ./compile.sh binaries /home/its/db.json /home/its/mitm.txt /home/its/clientconfig.json /home/its/credentials.txt

werden vier für das Projekt relevante Dateien erzeugt:

  • db.json: Server-Datenbank. In dieser liegen Accountdaten für die Gruppe und die Angriffsziele.
  • mitm.txt: Man-in-the-Middle-Passwort. Wird vom Praktikumsserver benötigt, um Szenario 1 simulieren zu können.
  • clientconfig.json: Client-Konfiguration. In dieser Datei legt der Server aktuell nur eine Versionsnummer ab; die erzeugte Datei wird dem Client beigelegt. Die Versionsnummer (hardcoded in Database.generate()) hilft dem Nutzer dabei, die korrekte Implementierung zu identifizieren, und darf gern im Laufe des Projekts verändert werden. Sie hat darüber hinaus keine besondere technische Bedeutung.
  • credentials.txt: Relevante Accountdaten. In dieser Datei finden die angreifenden Gruppen die für die einzelnen Angriffsszenarien benötigten Nutzernamen und Passwörter. Auch diese Datei wird dem Client beigelegt.

Es lohnt sich jeweils, für diese Dateien absolute Pfade zu benutzen (hier beispielsweise /home/its/), da diese sonst im binaries-Ordner des Servers landen.

Server starten

Der Server wird mit dem Befehl

$ ./server.sh binaries /home/its/db.json localhost 12300

gestartet. Dies lädt die Server-Datenbank /home/its/db.json und öffnet anschließend auf dem lokalen Rechner den Port 12300 für eingehende Client-Verbindungen.

Für eine IPv6-Adresse statt eines Hostnamens sähe das folgendermaßen aus:

$ ./server.sh binaries /home/its/db.json ::1 12300

Auch dies öffnet den Port 12300 auf dem lokalen Rechner.

Das Skript nimmt außerdem einige optionale Parameter an; diese sind jedoch ausschließlich für die Einbettung in die Praktikumsumgebung relevant, und sollten beim lokalen Testen weggelassen werden.

Client starten

Der folgende Befehl startet den Client:

$ ./client.sh binaries /home/its/clientconfig.json localhost 12300 /home/its/devicecodes/

Der Client lädt die angegebene Konfigurationsdatei und gibt die enthaltene Versionsnummer aus; anschließend baut er eine Verbindung mit dem Server unter localhost, Port 12300 auf. Bei der Registrierung des Clients beim Server wird ein Gerätecode erzeugt; dieser wird im Ordner /home/its/devicecodes/ abgelegt.

cybersec-bank's People

Contributors

derteufelqwe avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.