Seminar / Training
Dieses Entwicklerseminar behandelt die Kern-Erweiterungspunkte von Turbinia. Ausgehend von einer fachlichen Anforderung entstehen eigene Evidence-Typen, Jobs und Tasks einschließlich Vor- und Nachverarbeitung, Ergebnisobjekten, Registrierung, Tests, Paketierung und kontrollierter Bereitstellung.
Inhaltsübersicht
- Zielsetzung
- Zielgruppe
- Voraussetzungen
- Seminarinhalte
- Praxisübungen
- Methodik
Zielsetzung
- Erweiterungsanforderungen sauber zwischen Task, Job, Evidence und Analysator aufteilen
- Eigene Evidence-Typen mit belastbaren Metadaten und Prozessoren entwickeln
- Jobs und Tasks mit klarer Auswahl-, Ausführungs- und Ergebnislogik implementieren
- Erweiterungen automatisiert testen, dokumentieren und releasefähig bereitstellen
Zielgruppe
Erfahrene Python-Entwickler, DFIR-Engineering-Teams, Plattformentwickler und technische Architekturverantwortliche für individuelle Turbinia-Erweiterungen.
Voraussetzungen
Sehr gute Python-Kenntnisse, Git, automatisierte Tests, Linux und Container. Die Seminare „Architektur und Grundlagen“ sowie „Beweismittel, Evidence-Typen und Verarbeitungspipelines“ oder vergleichbare Kenntnisse werden vorausgesetzt.
Seminarinhalte
- Schritt 1: Erweiterungsschnitt festlegen
Fachliche Anforderung, Eingabe, Verarbeitung, Ergebnis und Folgeprozess werden analysiert; Zuständigkeiten von Evidence, Job und Task werden eindeutig getrennt.
- Schritt 2: Entwicklungsprojekt aufsetzen
Branching, virtuelle Umgebung, Abhängigkeiten, Konfiguration, Testdaten, Linting und Testausführung werden reproduzierbar vorbereitet.
- Schritt 3: Evidence-Typ modellieren
Attribute, Pfade, Herkunft, Kopierbarkeit, Cloud-Eigenschaften, Darstellung und Serialisierung werden als stabiles Datenmodell umgesetzt.
- Schritt 4: Pre- und Post-Processor entwickeln
Bereitstellung, Mounting, Kopieren, Upload, Integritätsprüfung und Cleanup werden als klar testbare Schritte implementiert.
- Schritt 5: Task-Klasse implementieren
Eingabeprüfung, Arbeitsverzeichnis, Werkzeugaufruf, Logging, Fehlerpfade, Ergebnisobjekt und erzeugte Evidence werden in der Task-Laufzeit sauber behandelt.
- Schritt 6: Job-Logik entwickeln
Unterstützte Evidence, Task-Erzeugung, Konfigurationsübernahme, Priorität, Abhängigkeiten und Ausschlussbedingungen werden im Job definiert.
- Schritt 7: Ergebnisse und Befunde strukturieren
Status, Summary, Report, Warnungen, Dateiverweise und weiterverarbeitbare Evidence werden konsistent und maschinenlesbar ausgegeben.
- Schritt 8: Konfiguration und Recipes anbinden
Globale und taskspezifische Parameter werden validiert, mit sicheren Standardwerten versehen und in Recipes nachvollziehbar nutzbar gemacht.
- Schritt 9: Registrierung und Discovery prüfen
Neue Typen, Jobs und Tasks werden so registriert, dass Server, Worker und Client sie konsistent erkennen.
- Schritt 10: Unit-Tests schreiben
Evidence-Serialisierung, Prozessoren, Jobauswahl, Task-Erfolg, erwartete Fehler und erzeugte Evidence werden isoliert geprüft.
- Schritt 11: Integrationstests durchführen
Ein vollständiger Request wird mit Referenzdaten über Queue und Worker ausgeführt; Status, Logs, Ausgaben und Folge-Tasks werden kontrolliert.
- Schritt 12: Container- und Abhängigkeitsstrategie festlegen
Externe Werkzeuge werden nativ oder containerisiert angebunden; Versionen, Ressourcen, Mounts und Sicherheitsgrenzen werden dokumentiert.
- Schritt 13: Release vorbereiten
Versionierung, Changelog, Kompatibilität, Migration bestehender Konfiguration, Rollback und Betriebsübergabe werden in einen Freigabeprozess eingebunden.
- Schritt 14: Wartbarkeit absichern
Code-Review, Dokumentation, Telemetrie, Deprecation, Eigentümerschaft und Testdatenpflege werden für den gesamten Lebenszyklus geregelt.
Praxisübungen
- Eigenen Evidence-Typ mit Serialisierung und Validierung implementieren
- Job und Task für einen kleinen forensischen Verarbeitungsschritt entwickeln
- Erzeugte Evidence in einen Folge-Job übergeben und Pipeline-Verhalten prüfen
- Unit- und Integrationstests einschließlich Fehlerfällen erstellen
- Releasepaket mit Changelog, Rollback und Betriebscheckliste vorbereiten
Methodik
Ein durchgängiges Entwicklungsprojekt wird in vier Tagesetappen aufgebaut. Architekturentscheidungen, Code-Reviews, automatisierte Tests und Betriebsübergabe sind gleichwertige Bestandteile des Seminars.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 4 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 2.396 zzgl. MwSt. Inhaus: € 6.800 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Erfahrene Python-Entwickler, DFIR-Engineering, Plattformentwicklung, technische Architektur |
| Voraussetzungen: | Sehr gute Python-, Git-, Test-, Linux- und Containerkenntnisse sowie fundierte Turbinia-Architekturkenntnisse |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
