intro presentation structure, first dreaft. For the German presentation

pull/37/head
Thorsten Sick 2 years ago
parent 64364d217e
commit 7950a6ea9a

@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#
# You can set these variables from the command line, and also
# from the environment for the first two.
SPHINXOPTS ?=
SPHINXBUILD ?= sphinx-build
SOURCEDIR = .
BUILDDIR = _build
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

@ -0,0 +1,77 @@
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Path setup --------------------------------------------------------------
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
# import os
# import sys
# sys.path.insert(0, os.path.abspath('.'))
# -- Project information -----------------------------------------------------
project = 'PurpleDome Intro'
copyright = '2022, Thorsten Sick'
author = 'Thorsten Sick'
# -- General configuration ---------------------------------------------------
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
]
# Reveal JS
extensions += [
"sphinx_revealjs",
]
# Graphviz
extensions += [
"sphinx.ext.graphviz"
]
# -- GraphViz configuration ----------------------------------
graphviz_output_format = 'svg'
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = 'de'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'alabaster'
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']

@ -0,0 +1,125 @@
================
PurpleDome intro
================
.. This toctree is only to link examples.
.. toctree::
:glob:
:hidden:
Was ist das Problem
===================
Komplexe Malware greift in mehreren Schritten an. Die letzten können ohne Malware Dateien auskommen.
Betrifft es mich ?
------------------
* Wenn man ein Unternehmens Netzwerk unterhält: Ja
* Nach einer ersten Infektion und automatischer Systemübersicht kann ein Malware Operator dazugerufen werden
.. Ab dem Schritt ist es dann file less
Schützt mich AV ?
=================
Moderne AV Software hat nicht nur Dateierkennung, sondern auch Verhaltenserkennung
Manchmal ist die beworben. Aber eine Minimalvariante sollte eigentlich immer dabei sein.
Das wäre verantwortlich für den AV Schutz
Funktioniert das gut ?
----------------------
Die Verhaltens-Komponente ist recht komplex zu entwickeln
* Verschiedene OS Versionen
* Performance
* Stabilität
* Sehr viele verschiedenen Verhalten denkbar
Ist das blöd, wenn file-less zunimmt ?
--------------------------------------
* Mit Dateien zu hantieren ist einfacher
* QA und Development ist ohne Malware Dateien komplizierter
PurpleDome macht File-less Angriff handhabbarer
===============================================
Wir brauchen das...
* Zum Entwickeln der Sensoren
* Zum Entwickeln der Logik
* Zum Testen der Sensoren
Purple Dome: Wie funktioniert es ?
==================================
Purple Dome ist eine vollautomatisierte Simulations Umgebung, in der man die File-less Angriffe nachvollziehen kann.
Aufsetzen der Ziele
-------------------
Virtuelle Maschinen mit dem Ziel OS werden aufgesetzt. So können wir unsere Sensoren mit verschiedenen OS Versionen testen.
Aufsetzen des Angreifers
------------------------
Aktuell nutzen wir Kali Linux. Dort haben wir:
* Metasploit
* Caldera
* Command line tools (nmap...)
Aufsetzen der Sensoren
----------------------
Sensoren werden automatisch auf den Zielen installiert. Ab jetzt wird aufgezeichnet
Durchführen der Angriffe
------------------------
Welche Angriffe durchgeführt werden bestimmt das Skript
Sammeln der Sensor Daten
------------------------
Daten aller Sensoren werden gesammelt. Zusammen mit einem Log der Angriffe.
Erstellen einer Beschreibung
----------------------------
Zur einfachen Übersicht wird ein lesbares Dokument des Angriffs als PDF erstellt
Wem bringt PurpleDome sonst noch was ?
======================================
Schulungen
----------
Wir planen Schulungsprogramme basierend auf PD. Wird gerade evaluiert von einer Hochschule
Trainings
---------
Blue vs Red Team trainings und erzeugen von Übungsdaten
CTF
---
Capture the Flags können auf PurpleDome basieren
Wo kann ich PurpleDome kaufen ?
===============================
Gar nicht. Ist kostenlos und Open Source
https://github.com/avast/PurpleDome

@ -0,0 +1,35 @@
@ECHO OFF
pushd %~dp0
REM Command file for Sphinx documentation
if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set SOURCEDIR=.
set BUILDDIR=_build
if "%1" == "" goto help
%SPHINXBUILD% >NUL 2>NUL
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.http://sphinx-doc.org/
exit /b 1
)
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
goto end
:help
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
:end
popd

@ -18,6 +18,7 @@ sphinx-argparse==0.2.5
sphinxcontrib-autoyaml==0.6.1
sphinx-pyreverse==0.0.13
sphinxcontrib.asciinema==0.3.2
sphinx-revealjs
# sphinx-pydantic # This one has issues that must be fixed upstream first
# Mypy stuff

Loading…
Cancel
Save