Reviewed-on: #19
ForensicPathways
Ein umfassendes Verzeichnis digitaler Forensik- und Incident-Response-Tools mit KI-gestützten Empfehlungen basierend auf der NIST SP 800-86 Methodik.
Lizenz
Dieses Projekt ist unter der BSD-3-Clause-Lizenz lizenziert.
Funktionen
Kernfunktionalität
- Umfassende Tool-Datenbank: 100+ forensische Tools kategorisiert nach Domänen, Phasen und Skill-Levels
 - NIST SP 800-86 Integration: Vier-Phasen-Methodik (Sammlung → Auswertung → Analyse → Berichterstattung)
 - Multiple Ansichtsmodi: Kachelansicht, Matrix-Übersicht und KI-gestützte Empfehlungen
 - Erweiterte Suche: Textsuche, semantische Embedding-basierte Suche und Multi-Kriterien-Filterung
 - Responsive Design: Dark/Light-Mode-Unterstützung, mobile-optimierte Benutzeroberfläche
 
KI-gestützte Analyse
- Micro-Task-Pipeline: Intelligente Tool-Auswahl durch mehrere KI-Analyseschritte
 - Semantische Suche: Vector-Embeddings für natürlichsprachige Tool-Entdeckung
 - Konfidenz-Bewertung: Transparente Vertrauensmetriken für KI-Empfehlungen
 - Audit-Trail: Vollständige Entscheidungstransparenz mit detaillierter Protokollierung
 - Rate Limiting: Intelligente Warteschlangenverwaltung und nutzerbasierte Ratenbegrenzung
 
Zusammenarbeit & Beiträge
- Tool-Beiträge: Neue Tools einreichen oder bestehende über Git-Integration bearbeiten
 - Knowledgebase: Community-beigetragene Artikel und Dokumentation
 - File-Upload-System: Nextcloud-Integration für Medien-Anhänge
 - Authentifizierung: OIDC-Integration mit konfigurierbaren Anbietern
 
Enterprise-Funktionen
- Warteschlangenverwaltung: Ratenbegrenzte KI-Verarbeitung mit Echtzeit-Status-Updates
 - Audit-Protokollierung: Umfassender forensischer Audit-Trail für KI-Entscheidungsfindung
 - Multi-Provider-Unterstützung: Konfigurierbare KI-Services (Mistral AI, Ollama, OpenAI)
 - Git-Integration: Automatisierte Issue-Erstellung für Beiträge (Gitea, GitHub, GitLab)
 
Datenmodell
Das System verwendet eine YAML-basierte Konfiguration in src/data/tools.yaml:
tools:
  - name: Tool Name
    type: software|method|concept
    description: Detaillierte Beschreibung
    skillLevel: novice|beginner|intermediate|advanced|expert
    url: https://tool-homepage.com
    domains: [incident-response, static-investigations, ...]
    phases: [data-collection, examination, analysis, reporting]
    platforms: [Windows, Linux, macOS]
    license: Lizenztyp
    tags: [gui, commandline, ...]
    related_concepts: [konzept1, konzept2]
    # Optionale Felder
    projectUrl: https://hosted-instance.com  # Für CC24-Server gehostete Tools
    knowledgebase: true                      # Hat KB-Artikel
    accessType: download|hosted|cloud
domains:
  - id: incident-response
    name: Incident Response & Breach-Untersuchung
    
phases:
  - id: data-collection
    name: Datensammlung
    description: Imaging, Akquisition, Remote-Collection-Tools
scenarios:
  - id: scenario:memory_dump
    icon: 🧠
    friendly_name: RAM-Analyse
AI Concept
Micro-Task Architecture
The AI system uses a sophisticated pipeline that breaks complex analysis into focused micro-tasks:
- Scenario Analysis: Understanding the forensic context
 - Investigation Approach: Determining optimal methodology
 - Critical Considerations: Identifying potential challenges
 - Tool Selection: Phase-specific or problem-specific recommendations
 - Background Knowledge: Relevant concepts and prerequisites
 - Final Synthesis: Integrated recommendations with confidence scoring
 
Confidence Scoring
Each recommendation includes transparent confidence metrics:
- Semantic Relevance: Vector similarity between query and tool descriptions
 - Task Suitability: AI-assessed fitness for the specific scenario
 - Uncertainty Factors: Potential limitations and considerations
 - Strength Indicators: Why the tool is well-suited
 
NIST SP 800-86 Phases
The system organizes tools according to the four-phase NIST methodology:
- Data Collection: Imaging, acquisition, and evidence preservation
 - Examination: Parsing, extraction, and initial data processing
 - Analysis: Deep investigation, correlation, and insight generation
 - Reporting: Documentation, visualization, and presentation
 
Each tool is mapped to appropriate phases, enabling workflow-based recommendations.
Deployment
Production Setup
- Build and Deploy:
 
npm run build
sudo ./deploy.sh  # Copies dist/ to /var/www/forensic-pathways
- Configuration:
 
cd /var/www/forensic-pathways
sudo cp .env.example .env
sudo nano .env  # Configure AI services, authentication, etc.
- Systemd Service (
/etc/systemd/system/forensic-pathways.service): 
[Unit]
Description=ForensicPathways
After=network.target
[Service]
Type=simple
User=www-data
WorkingDirectory=/var/www/forensic-pathways
ExecStart=/usr/bin/node server/entry.mjs
Restart=always
RestartSec=10
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
- Nginx Configuration:
 
server {
    listen 80;
    server_name forensic-pathways.yourdomain.com;
    client_max_body_size 50M; # Important for uploads
    
    location / {
        proxy_pass http://localhost:4321;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_cache_bypass $http_upgrade;
    }
}
- Enable and Start:
 
sudo systemctl enable forensic-pathways
sudo systemctl start forensic-pathways
sudo systemctl reload nginx
Environment Configuration
Key configuration in .env:
# Core Application
PUBLIC_BASE_URL=https://forensic-pathways.yourdomain.com
AUTH_SECRET=your-secure-random-secret
# AI Services (Required)
AI_ANALYZER_ENDPOINT=https://api.mistral.ai/v1/chat/completions
AI_ANALYZER_API_KEY=your-api-key
AI_ANALYZER_MODEL=mistral/mistral-small-latest
# Vector Embeddings (Recommended)
AI_EMBEDDINGS_ENABLED=true
AI_EMBEDDINGS_ENDPOINT=https://api.mistral.ai/v1/embeddings
AI_EMBEDDINGS_MODEL=mistral-embed
# Authentication (Optional)
AUTHENTICATION_NECESSARY_AI=false
OIDC_ENDPOINT=https://your-keycloak.com/auth/realms/your-realm
OIDC_CLIENT_ID=forensic-pathways
Externe Abhängigkeiten (Optionale Features)
File-Upload-System
- Nextcloud: Primärer Speicher für Beitrags-Anhänge
 - Lokaler Fallback: Automatischer Fallback zu lokalem Speicher bei Nextcloud-Ausfall
 
Authentifizierungsanbieter
- Keycloak: Empfohlener OIDC-Provider
 - Andere OIDC: Jeder OIDC-konforme Provider (Auth0, Azure AD, etc.)
 
Git-Integration
- Gitea: Primärer Git-Provider für Beiträge
 - GitHub/GitLab: Alternative Git-Provider unterstützt
 
Monitoring
- Uptime Kuma: Service-Monitoring und Gesundheitschecks (optional)
 
KI-Services
- Mistral AI: Empfohlen für Produktion (API-Schlüssel erforderlich)
 - Ollama: Lokale Deployment-Option (kein API-Schlüssel benötigt)
 - OpenAI: Alternative kommerzielle Anbieter
 
Knowledgebase-System
Artikel hinzufügen
Knowledgebase-Artikel werden in src/content/knowledgebase/ als Markdown-Dateien mit Frontmatter gespeichert:
---
title: "Tool-Konfigurationsanleitung"
description: "Schritt-für-Schritt-Setup-Anweisungen"
last_updated: 2024-01-15
author: "Ihr Name"
difficulty: intermediate
# Tool-Zuordnung (optional)
tool_name: "Autopsy"
related_tools: ["Volatility 3", "YARA"]
# Kategorisierung
categories: ["konfiguration", "setup"]
tags: ["gui", "installation", "windows"]
published: true
---
# Tool-Konfigurationsanleitung
Ihr Artikel-Inhalt hier...
## Voraussetzungen
- Systemanforderungen
- Abhängigkeiten
## Installationsschritte
1. Download von offizieller Quelle
2. Installer ausführen
3. Einstellungen konfigurieren
## Video-Demonstration
<video src="/videos/setup-tutorial.mp4" title="Setup-Tutorial" controls></video>
## Häufige Probleme
Lösungen für typische Probleme...
Video-Integration
Knowledgebase-Artikel unterstützen eingebettete Videos für praktische Demonstrationen:
<video src="/videos/demo.mp4" title="Tool-Demonstration" controls></video>
Wichtige Hinweise:
- Videos müssen manuell in 
public/videos/bereitgestellt werden (nicht im Git-Repository enthalten) - Firefox-kompatible Formate verwenden (MP4 H.264, WebM VP9)
 - Detaillierte Video-Dokumentation: siehe 
src/content/knowledgebase/README.md 
Artikel-Struktur-Richtlinien
Erforderliche Felder:
title: Klarer, beschreibender Titeldescription: Einzeilige Zusammenfassung für Auflistungenlast_updated: Artikel-Änderungsdatumpublished: Boolean-Flag für Sichtbarkeit
Optionale Felder:
tool_name: Zuordnung zu spezifischem Tool aus Datenbankauthor: Mitwirkender Name (Standard: "Anon")difficulty: Komplexitätslevel passend zu Tool-Skill-Levelscategories: Breite Klassifizierungentags: Spezifische Stichwörter für Entdeckungrelated_tools: Array verwandter Tool-Namen
Inhalt-Richtlinien:
- Standard-Markdown-Formatierung verwenden
 - Praktische Beispiele und Code-Snippets einschließen
 - Screenshots oder Diagramme bei Bedarf hinzufügen
 - Zu verwandten Tools mit 
[Tool Name](/tools/tool-slug)Format verlinken - Troubleshooting-Abschnitte für komplexe Tools einschließen
 
Automatische Verarbeitung
- Artikel werden automatisch beim Build indexiert
 - Tool-Zuordnungen erstellen bidirektionale Links
 - Suche umfasst Volltext-Inhalt und Metadaten
 - Verwandte Artikel erscheinen in Tool-Detail-Ansichten
 
Entwicklung
# Setup
npm install
cp .env.example .env
# Entwicklung
npm run dev
# Build
npm run build
# Deploy
sudo ./deploy.sh
Konfigurationsübersicht
Die .env.example-Datei enthält umfassende Konfigurationsoptionen für alle Features. Die meisten Optionen haben sinnvolle Standardwerte, wobei nur die KI-Service-Konfiguration für volle Funktionalität erforderlich ist.
Architektur
- Frontend: Astro mit TypeScript, responsive CSS
 - Backend: Node.js API-Routen mit intelligenter Ratenbegrenzung
 - KI-Pipeline: Micro-Task-Architektur mit Audit-Protokollierung
 - Daten: YAML-basierte Tool-Datenbank mit Git-basierten Beiträgen
 - Suche: Dual-Mode Text- und semantische Vector-Suche
 - Auth: OIDC-Integration mit Session-Management