Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/target/strelka-ui
Herramientas DefensivasAnálisis de MalwareInteligencia de AmenazasAutenticaciónAnálisis de Registros
GitHubtarget/strelka-ui

strelka-ui

Strelka Web UI para el envío y análisis de archivos

Ver Repositorio
769hace 25 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Banner de Strelka

Lanzamientos   |   Pull Requests   |   Incidencias

GitHub release Build Status Pull Requests Slack License

La Strelka Web UI es un frontend de envío de archivos basado en navegador y API para el Strelka Enterprise File Scanner. Permite a los usuarios enviar archivos a un clúster de Strelka y revisar fácilmente los resultados históricos de las respuestas. La Strelka Web UI admite autenticación LDAP y acceso API, proporcionando una forma segura y flexible de interactuar con el escáner Strelka. Este documento proporciona detalles sobre cómo configurar y usar la Strelka Web UI, así como sus características y proyectos relacionados.

Página de Resultados de Strelka UI
Página de Resultados de Strelka UI

Características

La UI de envío de archivos proporciona las siguientes características:

  • Enviar archivos a un clúster de Strelka y examinar las respuestas desde tu navegador.
  • Almacenar y revisar resultados de envíos anteriores y actividad en una base de datos local o remota.
  • Soporte para Autenticación LDAP
  • Soporte API

Requisitos previos

  • Instancia de Strelka accesible (Ver: Inicio rápido de Strelka)
  • Docker
  • Docker-compose
  • Python 3.9+

Inicio rápido

De forma predeterminada, la Strelka UI está configurada para usar un despliegue mínimo de "inicio rápido" que permite a los usuarios probar el sistema. Este despliegue se dirigirá a una instancia local de Strelka e iniciará una base de datos local. Los usuarios podrán acceder a este sistema con el nombre de usuario / contraseña que deseen. Para obtener información adicional sobre cómo apuntar a una instancia remota de Strelka, la base de datos o usar LDAP para autenticación, consulta la sección Configuración adicional:

Paso 1: Asegúrate de que un Clúster de Strelka esté Listo

root@kitploit:~
Start or ensure Strelka cluster is ready and accessible.
See https://github.com/target/strelka for more information.

Paso 2: Compilar e Iniciar Strelka UI (Docker)

root@kitploit:~
# Terminal 1
# From the ./strelka-ui directory
$ docker-compose -f docker-compose.yml up

Paso 3: Acceder a Strelka UI

root@kitploit:~
1) Open A Browser
2) Navigate to 0.0.0.0:8080
3) Login with:
    - Username: strelka
    - Password: strelka

Pasos adicionales

Esta sección proporciona detalles sobre cómo apuntar a una instancia remota de Strelka, una base de datos remota para almacenamiento y un servidor LDAP para autenticación para un uso más seguro. Para habilitarlos, puedes usar variables de entorno para anular los valores predeterminados.

Configuración de Variables de Entorno

La configuración del backend se proporciona a través de variables de entorno y se puede establecer estáticamente en ./app/config/config.py.

Al ejecutar localmente, la precedencia de la configuración es: System environment -> .env -> ./app/config/config.py. Al ejecutar en Docker, la precedencia de la configuración es: Docker environment -> System environment -> ./app/config/config.py.

Consulta ./app/example.env para la configuración de variables de entorno.

Opciones de Variables de Entorno

Lo siguiente detalla los elementos de configuración en ./app/config/config.py.

Soporte de Enlaces Externos (Hotlink)

También puedes establecer una referencia en la tabla de envíos de la UI para permitir a los usuarios redirigirse rápidamente a un sitio externo según el request.id. Modificando ./ui/src/config.js y siguiendo el ejemplo SEARCH_URL en la siguiente tabla, puedes proporcionar a los usuarios un enlace a un sitio externo (p. ej., SIEM / logger). Asegúrate de que tu enlace contenga la cadena <REPLACE> y la UI reemplazará esa cadena con el ID de solicitud del archivo correspondiente.

Campos de modificación admitidos en ./ui/src/config.js:

Field NameValueExample

Proporcionar certificados CA

Si tu entorno de red requiere un paquete de CA personalizado (p. ej., un proxy corporativo de inspección TLS), puedes proporcionarlo tanto en el momento de la compilación como en el tiempo de ejecución sin comprometer ningún archivo de certificado en el repositorio.

Tiempo de compilación — pasa la ruta a tu paquete de CA mediante CUSTOM_CA_CERT antes de ejecutar docker compose build. El certificado se monta de forma efímera usando un secreto de BuildKit y nunca se escribe en ninguna capa de imagen:

root@kitploit:~
CUSTOM_CA_CERT=/path/to/your/ca-bundle.crt docker compose build
# or, combined with up:
CUSTOM_CA_CERT=/path/to/your/ca-bundle.crt docker compose up --build

En redes abiertas donde no se necesita una CA personalizada, omite la variable por completo: la compilación se degrada correctamente:

root@kitploit:~
docker compose up --build

Tiempo de ejecución — el directorio certs en la raíz del proyecto se monta en /certs dentro del contenedor en ejecución. Coloca tu paquete de CA allí y establece REQUESTS_CA_BUNDLE (y opcionalmente SSL_CERT_FILE) en ./app/strelka_ui/.env o como una variable de entorno de Docker:

root@kitploit:~
# ./app/strelka_ui/.env
REQUESTS_CA_BUNDLE=/certs/ca-bundle.crt
SSL_CERT_FILE=/certs/ca-bundle.crt

API

La Strelka UI también proporciona rutas API para el acceso basado en scripts de usuario. Consulta las siguientes rutas para obtener detalles:

Rutas de autenticación

  • [url base]/api/auth/login (POST)
  • [url base]/api/auth/logout (GET)

Rutas de Strelka

  • [url base]/api/strelka/scans/stats (GET)
  • [url base]/api/strelka/scans/upload (POST, form-encoded)
  • [url base]/api/strelka/scans?page=?&per_page=? (GET)
  • [url base]/api/strelka/scans/id de escaneo

Ejemplo

Ejemplos de cómo autenticarse en la API de Strelka UI, recopilar estadísticas de escaneo y enviar un archivo usando Python requests se pueden encontrar en ./misc/examples/api_examples.py

Base de datos

La base de datos usa https://www.sqlalchemy.org/ como ORM. Flask-Migrate se utiliza para proporcionar migraciones de base de datos a través de Alembic. Se proporciona un archivo de script auxiliar, manage.py, para ayudar con tareas comunes de base de datos.

Si estás creando una nueva base de datos, o modificando la actual, debes realizar los siguientes pasos (aunque al iniciar el clúster, estos comandos se ejecutarán por ti):

Generar una nueva migración a partir de cambios en el modelo:

  • python manage.py db migrate

Actualizar la base de datos usando la configuración actual de la base de datos:

  • python manage.py db upgrade

Detalles de la Aplicación

La aplicación backend se compone principalmente de las siguientes tecnologías:

  • https://flask.palletsprojects.com/en/1.1.x/
  • https://www.sqlalchemy.org/
  • https://www.postgresql.org/

La UI frontend es una aplicación React JS creada con React servida desde Flask. La UI usa la librería Antd y Antd ProComponents, y el enrutamiento lo maneja React Router.

  • create-react-app
  • Ant Financial UI
  • Antd ProComponents
  • React Router
Página de Panel de Strelka UI
Página de Panel de Strelka UI

Proyectos relacionados

  • Strelka

Licencia

Strelka UI y su código asociado se publican bajo los términos de la Licencia Apache 2.0.

Banner de Target
Descargar herramienta
Field NameValueRequired
STRELKA_HOSTNombre de host de Strelka (p. ej., 0.0.0.0)Sí
STRELKA_PORTNúmero de puerto de Strelka (p. ej., 57314)Sí
STRELKA_CERTRuta al certificado de Strelka, si es necesario (p. ej., /path/to/cert.pem)No
CA_CERT_PATHRuta a los certificados CA para LDAP, si es necesario (p. ej., /path/to/ca_certs)No
VIRUSTOTAL_API_KEYClave de API para la búsqueda de hash en VirusTotalSí
VIRUSTOTAL_API_LIMITLimitar cuántos archivos deben ser escaneados por VirusTotal (Predeterminado: 30)Sí
LDAP_URLURL del servidor LDAP (p. ej., ldaps://ldap.example.com:636)No
LDAP_SEARCH_BASEBase de búsqueda para consultas LDAP (p. ej., DC=example,DC=com)No
LDAP_USERNAME_ORGANIZATIONOrganización de nombre de usuario para consultas LDAP (p. ej., org//)No
LDAP_ATTRIBUTE_ACCOUNT_NAME_FIELDAtributo LDAP para nombre de cuenta (p. ej., sAMAccountName)No
LDAP_ATTRIBUTE_FIRST_NAME_FIELDAtributo LDAP para nombre (p. ej., givenName)No
LDAP_ATTRIBUTE_LAST_NAME_FIELDAtributo LDAP para apellido (p. ej., sn)No
LDAP_ATTRIBUTE_MEMBER_OF_FIELDAtributo LDAP para miembro de (p. ej., memberOf)No
LDAP_ATTRIBUTE_MEMBER_REQUIREMENT_FIELDAtributo LDAP para requisito de miembro (p. ej., AD Attribute)No
STATIC_ASSET_FOLDERCarpeta de compilación para la UI (p. ej., build)Sí
MIGRATION_DIRECTORYDirectorio de migraciones de SQLAlchemy (p. ej., ./migrations)Sí
DATABASE_USERNAMENombre de usuario de la base de datos (p. ej., admin)Sí
DATABASE_PASSWORDContraseña de la base de datos (p. ej., password123)Sí
DATABASE_HOSTNombre de host de la base de datos (p. ej., db.example.com)Sí
DATABASE_PORTNúmero de puerto de la base de datos (p. ej., 5432)Sí
DATABASE_DBNAMENombre de la base de datos (p. ej., mydb)Sí
API_KEY_EXPIRATIONDuración en días de la expiración de la clave de API (p. ej., 30)Sí
SEARCH_URL
URL de búsqueda para la aplicación externa
Ej: https://search.com/?q=request.id=
SEARCH_NAMENombre de búsqueda para la aplicación externaEj: Splunk
DEFAULT_EXCLUDED_SUBMITTERSUsuarios predeterminados excluidos de la vista de la tabla de Envíos. Útil para ocultar automatizaciones por defecto.Ej: SearchBot