
Strelka Web UI pour la soumission et l'analyse de fichiers.
[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]
L'interface Web Strelka est un frontend de soumission de fichiers basé sur navigateur et API pour le Strelka Enterprise File Scanner. Elle permet aux utilisateurs de soumettre des fichiers à un cluster Strelka et de consulter facilement les résultats de réponse historiques. L'interface Web Strelka prend en charge l'authentification LDAP et l'accès API, offrant un moyen sécurisé et flexible d'interagir avec le scanner Strelka. Ce document fournit des détails sur la façon de configurer et d'utiliser l'interface Web Strelka, ainsi que ses fonctionnalités et les projets associés.
L'interface de soumission de fichiers offre les fonctionnalités suivantes :
Par défaut, l'interface Strelka est configurée pour utiliser un déploiement « quickstart » minimal qui permet aux utilisateurs de tester le système. Ce déploiement ciblera une instance Strelka locale et démarrera une base de données locale. Les utilisateurs pourront accéder à ce système avec le nom d'utilisateur / mot de passe de leur choix. Pour plus d'informations sur le ciblage d'une instance Strelka distante, d'une base de données, ou sur l'utilisation de LDAP pour l'authentification, consultez la section Configuration supplémentaire :
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
Cette section fournit des détails sur la façon de cibler une instance Strelka distante, une base de données distante pour le stockage, et un serveur LDAP pour l'authentification afin d'un usage plus sécurisé. Pour les activer, vous pouvez utiliser des variables d'environnement pour remplacer les valeurs par défaut.
La configuration du backend est fournie via des variables d'environnement et peut être définie statiquement dans ./app/config/config.py.
En exécution locale, la priorité de la configuration est : System environment -> .env -> ./app/config/config.py.
En exécution dans Docker, la priorité de la configuration est : Docker environment -> System environment -> ./app/config/config.py.
Veuillez vous référer à ./app/example.env pour la configuration des variables d'environnement.
Ce qui suit détaille les éléments de configuration dans ./app/config/config.py.
| 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 |
Vous pouvez également définir une référence dans la table de soumission de l'interface pour permettre aux utilisateurs de pivoter rapidement vers un site externe en fonction du request.id. En modifiant ./ui/src/config.js et en suivant l'exemple SEARCH_URL dans le tableau suivant, vous pouvez fournir aux utilisateurs un lien vers un site externe (par exemple, SIEM / logger). Assurez-vous que votre lien contient la chaîne <REPLACE> et l'interface remplacera cette chaîne par l'ID de requête du fichier concerné.