
Strelka Web-UI für Dateiübermittlung und -analyse
[Releases][release] | [Pull Requests][pr] | [Issues][issues]
[![GitHub release][img-version-badge]][repo] [![Build Status][img-actions-badge]][actions-ci] [![Pull Requests][img-pr-badge]][pr] [![Slack][img-slack-badge]][slack] [![License][img-license-badge]][license]
Die Strelka Web UI ist ein browser- und API-basiertes Frontend zur Dateieinreichung für den Strelka Enterprise File Scanner. Sie ermöglicht es Benutzern, Dateien an einen Strelka-Cluster zu übermitteln und historische Antwortresultate einfach zu überprüfen. Die Strelka Web UI unterstützt LDAP-Authentifizierung und API-Zugriff und bietet damit eine sichere und flexible Möglichkeit, mit dem Strelka-Scanner zu interagieren. Dieses Dokument enthält Details zur Einrichtung und Verwendung der Strelka Web UI sowie zu ihren Funktionen und verwandten Projekten.
Die Dateieinreichungs-UI bietet die folgenden Funktionen:
Standardmäßig ist die Strelka UI für eine minimale "Quickstart"-Bereitstellung konfiguriert, die es Benutzern ermöglicht, das System zu testen. Diese Bereitstellung zielt auf eine lokale Strelka-Instanz ab und startet eine lokale Datenbank. Benutzer können mit beliebigem Benutzernamen / Passwort auf dieses System zugreifen. Weitere Informationen zum Ansprechen einer entfernten Strelka-Instanz, Datenbank oder zur Verwendung von LDAP zur Authentifizierung finden Sie im Abschnitt Zusätzliche Einrichtung:
Start or ensure Strelka cluster is ready and accessible.
See https://github.com/target/strelka for more information.
# Terminal 1
# From the ./strelka-ui directory
$ docker-compose -f docker-compose.yml up
1) Open A Browser
2) Navigate to 0.0.0.0:8080
3) Login with:
- Username: strelka
- Password: strelka
Dieser Abschnitt enthält Details dazu, wie Sie eine entfernte Strelka-Instanz, eine entfernte Datenbank zur Speicherung und einen LDAP-Server zur Authentifizierung für eine sicherere Nutzung ansprechen können. Um diese zu aktivieren, können Sie Umgebungsvariablen verwenden, um die Standardwerte zu überschreiben.
Die Backend-Konfiguration erfolgt über Umgebungsvariablen und kann statisch in ./app/config/config.py festgelegt werden.
Bei lokaler Ausführung gilt folgende Rangfolge der Konfiguration: System environment -> .env -> ./app/config/config.py.
Bei Ausführung in Docker gilt folgende Rangfolge der Konfiguration: Docker environment -> System environment -> ./app/config/config.py.
Bitte beachten Sie ./app/example.env für die Einrichtung der Umgebungsvariablen.
Im Folgenden werden die Konfigurationselemente in ./app/config/config.py beschrieben.
| Field Name | Value | Required |
|---|---|---|
| STRELKA_HOST | Strelka hostname (e.g., 0.0.0.0) | Yes |
| STRELKA_PORT | Strelka port number (e.g., 57314) | Yes |
| STRELKA_CERT | Path to certificate for Strelka, if needed (e.g., /path/to/cert.pem) | No |
| CA_CERT_PATH | Path to CA certificates for LDAP, if needed (e.g., /path/to/ca_certs) | No |
| VIRUSTOTAL_API_KEY | API Key for VirusTotal Hash Lookup | Yes |
| VIRUSTOTAL_API_LIMIT | Limit how many files should be scanned by VirusTotal (Default: 30) | Yes |
| LDAP_URL | URL to LDAP server (e.g., ldaps://ldap.example.com:636) | No |
| LDAP_SEARCH_BASE | Search base for LDAP queries (e.g., DC=example,DC=com) | No |
| LDAP_USERNAME_ORGANIZATION | Username organization for LDAP queries (e.g., org//) | No |
| LDAP_ATTRIBUTE_ACCOUNT_NAME_FIELD | LDAP attribute for account name (e.g., sAMAccountName) | No |
| LDAP_ATTRIBUTE_FIRST_NAME_FIELD | LDAP attribute for first name (e.g., givenName) | No |
| LDAP_ATTRIBUTE_LAST_NAME_FIELD | LDAP attribute for last name (e.g., sn) | No |
| LDAP_ATTRIBUTE_MEMBER_OF_FIELD | LDAP attribute for member of (e.g., memberOf) | No |
| LDAP_ATTRIBUTE_MEMBER_REQUIREMENT_FIELD | LDAP attribute for member requirement (e.g., AD Attribute) | No |
| STATIC_ASSET_FOLDER | Build folder for UI (e.g., build) | Yes |
| MIGRATION_DIRECTORY | SQLAlchemy migrations directory (e.g., ./migrations) | Yes |
| DATABASE_USERNAME | Database username (e.g., admin) | Yes |
| DATABASE_PASSWORD | Database password (e.g., password123) | Yes |
| DATABASE_HOST | Database hostname (e.g., db.example.com) | Yes |
| DATABASE_PORT | Database port number (e.g., 5432) | Yes |
| DATABASE_DBNAME | Name of the database (e.g., mydb) | Yes |
| API_KEY_EXPIRATION | Duration in days of API key expiration (e.g., 30) | Yes |
Sie können auch einen Verweis in der Einreichungstabelle der UI festlegen, damit Benutzer anhand der request.id schnell zu einer externen Website wechseln können. Indem Sie ./ui/src/config.js ändern und dem SEARCH_URL-Beispiel in der folgenden Tabelle folgen, können Sie Benutzern einen Link zu einer externen Website (z. B. SIEM / Logger) bereitstellen. Stellen Sie sicher, dass Ihr Link die Zeichenfolge <REPLACE> enthält, und die UI ersetzt diese Zeichenfolge durch die relevante Request-ID der Datei.