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
exist — EXIST es una aplicación web para agregar y analizar inteligencia de amenazas cibernéticas. | Kitploit
Herramientas/GitHubGitHub/nict-csl/exist
Gestión de Indicadores de Compromiso (IOC)OSINT (Inteligencia de Fuentes Abiertas)Feeds y Agregadores de AmenazasAnálisis de VulnerabilidadesRecopilación de InformaciónInteligencia de AmenazasAprendizaje y EducaciónRespuesta a IncidentesAnálisis de RegistrosArchived
GitHubnict-csl/exist

exist

15229hace 5 mesesRevisado 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

EXIST es una aplicación web para agregar y analizar inteligencia de amenazas cibernéticas.

Ver Repositorio

EXIST (Sistema de Agregación de Información Externa contra Amenazas Cibernéticas)

⚠️ Este repositorio no tiene mantenimiento / está archivado. Los problemas de seguridad no se corregirán.

EXIST es una aplicación web para agregar y analizar CTI (inteligencia de amenazas cibernéticas).

EXIST está escrito con el siguiente software.

  • Python 3
  • Django 1.11

Concepto

EXIST es una aplicación web para agregar CTI que ayuda a los operadores de seguridad a investigar incidentes basados en indicadores relacionados.

EXIST obtiene automáticamente datos de varios servicios de CTI y Twitter a través de sus API y fuentes. Puede realizar búsquedas cruzadas de indicadores a través de la interfaz web y la API.

Si tiene servidores que registran comportamientos de red de clientes (por ejemplo, registros de servidores DNS y proxy HTTP, etc.), podrá analizar los registros correlacionándolos con los datos de EXIST. Si implementa algunos programas usando la API, logrará un centro de operaciones de seguridad automatizado impulsado por CTI.

overview

Casos de Uso

Caso1: Investigar un dominio detectado por IDS

Simplemente escriba el dominio en el formulario de búsqueda.

lookup_domain

Caso2: Acceder a la URL maliciosa en nombre del usuario y obtener la imagen de pantalla del navegador y los contenidos a descargar

Simplemente escriba la URL en el formulario de búsqueda.

lookup_url

Caso3: Monitorear amenazas cibernéticas

Simplemente agregue palabras clave en Threat Hunter o Twitter Hunter.

twitter_hunter

Características

Tracker

Tracker recopila automáticamente fuentes de datos de varios servicios de CTI.

  • Threat Tracker
  • Reputation Tracker
  • Twitter Tracker
  • Exploit Tracker
  • News Tracker
  • Vuln Tracker

Hunter

Hunter nos permite establecer consultas para recopilar datos de varios servicios de CTI y Twitter.

  • Twitter Hunter
  • Threat Hunter
  • News Hunter

Lookup

Lookup recupera información relacionada con información específica (por ejemplo, dirección IP, dominio) de varios servicios de Internet (por ejemplo, whois).

  • Dirección IP
  • Dominio
  • URL
  • Hash de archivo

Herramientas

Una herramienta para anotar tweets del rastreador de Twitter.

  • Annotation Tool

Web API

Proporciona datos almacenados en la base de datos de EXIST a través de Web API.

  • reputación
  • twitter
  • exploit
  • threatEvent
  • threatAttribute
  • noticias
  • vuln

Primeros pasos

A partir de aquí asumo el entorno de CentOS 7 o Ubuntu 18.04 LTS. Tenga cuidado al implementar en otro entorno.

Instalar módulos de Python

root@kitploit:~
$ sudo pip install -r requirements.txt

Instalar MariaDB

  • CentOS 7
root@kitploit:~
$ curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
$ sudo yum install MariaDB-server MariaDB-client
  • Ubuntu 18.04 LTS
root@kitploit:~
$ sudo apt install mariadb-server mariadb-client

Ejecutar la base de datos

root@kitploit:~
$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb

Configuración de la base de datos

  • Cree la base de datos y el usuario.
  • Cree .env tomando como referencia .env.example. Y edítelo según la configuración de su base de datos.

Generar clave secreta para Django

La clave secreta para Django debe escribirse en el archivo .env.

Primero, ejecute el generador de claves:

root@kitploit:~
$ python keygen.py
(ejemplo)> 70mm6h)()h3r&*b9xq$e52=-7($p=5983gfoyz%$d-j-gd7u5@

y escriba la clave secreta en el archivo .env:

root@kitploit:~
...
# Configuración de la aplicación EXIST
EXIST_SECRET_KEY="70mm6h)()h3r&*b9xq$e52=-7($p=5983gfoyz%$d-j-gd7u5@"
...

Migrar la base de datos

root@kitploit:~
$ python manage.py makemigrations exploit reputation threat threat_hunter twitter twitter_hunter news news_hunter vuln
$ python manage.py migrate

Instalar el servidor Redis

Reputation tracker utiliza Redis como backend de caché de Celery.

  • CentOS 7
root@kitploit:~
$ sudo yum install redis
$ sudo systemctl start redis
$ sudo systemctl enable redis
  • Ubuntu 18.04 LTS
root@kitploit:~
$ sudo apt install redis-server
$ sudo systemctl start redis-server
$ sudo systemctl enable redis-server

Configurar Celery

Reputation tracker utiliza Celery como cola de trabajos asíncronos.

  • Cree una configuración de Celery. Recomiendo que la configuración se establezca en las siguientes rutas:
    • CentOS 7: /etc/sysconfig/celery
    • Ubuntu 18.04 LTS: /etc/celery.conf
root@kitploit:~
# Nombre de los nodos a iniciar
# aquí tenemos un solo nodo
CELERYD_NODES="w1"
# o podríamos tener tres nodos:
#CELERYD_NODES="w1 w2 w3"

# Ruta absoluta o relativa al comando 'celery':
CELERY_BIN="/ruta/a/tu/celery"

# Instancia de la aplicación a usar
# comente esta línea si no usa una aplicación
CELERY_APP="intelligence"
# o totalmente calificada:
#CELERY_APP="proj.tasks:app"

# Cómo llamar a manage.py
CELERYD_MULTI="multi"

# Argumentos adicionales de línea de comandos para el worker
CELERYD_OPTS="--time-limit=300 --concurrency=8"

# - %n será reemplazado con la primera parte del nombre del nodo.
# - %I será reemplazado con el índice del proceso hijo actual
# y es importante al usar el pool prefork para evitar condiciones de carrera.
CELERYD_PID_FILE="/var/run/celery/%n.pid"
CELERYD_LOG_FILE="/var/log/celery/%n%I.log"
CELERYD_LOG_LEVEL="INFO"
  • Cree un script de administración del servicio de Celery en /etc/systemd/system/celery.service. Además, debe establecer la ruta de su configuración de Celery en EnvironmentFile.
root@kitploit:~
[Unit]
Description=Servicio de Celery
After=network.target

[Service]
Type=forking
User=SU_USUARIO
Group=SU_GRUPO
EnvironmentFile=/etc/sysconfig/celery
WorkingDirectory=/ruta/a/tu/exist
ExecStart=/bin/sh -c '${CELERY_BIN} multi start ${CELERYD_NODES} \
-A ${CELERY_APP} --pidfile=${CELERYD_PID_FILE} \
--logfile=${CELERYD_LOG_FILE} --loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS}'
ExecStop=/bin/sh -c '${CELERY_BIN} multi stopwait ${CELERYD_NODES} \
--pidfile=${CELERYD_PID_FILE}'
ExecReload=/bin/sh -c '${CELERY_BIN} multi restart ${CELERYD_NODES} \
-A ${CELERY_APP} --pidfile=${CELERYD_PID_FILE} \
--logfile=${CELERYD_LOG_FILE} --loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS}'

[Install]
WantedBy=multi-user.target
  • Cree directorios de registro y ejecución de Celery.
root@kitploit:~
$ sudo mkdir /var/log/celery; sudo chown SU_USUARIO:SU_GRUPO /var/log/celery
$ sudo mkdir /var/run/celery; sudo chown SU_USUARIO:SU_GRUPO /var/run/celery
  • Cree un archivo de configuración en /etc/tmpfiles.d/exist.conf
root@kitploit:~
#Tipo  Ruta               Modo  UID        GID         Edad  Argumento
d      /var/run/celery    0755  SU_USUARIO  SU_GRUPO  -
  • Ejecutar Celery
root@kitploit:~
$ sudo systemctl start celery.service
$ sudo systemctl enable celery.service

Ejecutar el servidor web

root@kitploit:~
$ python manage.py runserver 0.0.0.0:8000
  • Acceda a http://[SuServidorWeb]:8000 con su navegador.
  • WebAPI: http://[SuServidorWeb]:8000/api/

Nota: Recomiendo usar Nginx y uWSGI en entornos de producción.

Recopilar fuentes de datos

Los scripts para insertar fuentes de datos en la base de datos están en scripts/insert2db/*/insert2db.py.

Configurar insert2db

  • Los archivos de configuración están en scripts/insert2db/conf/insert2db.conf. Créelo tomando como referencia insert2db.conf.template.
  • Si usa MISP, escriba la URL de MISP y la clave API en insert2db.conf.
  • Si usa Malshare, escriba su clave API en insert2db.conf.
  • Cree su cuenta de API de Twitter en https://developer.twitter.com/ para el rastreo con EXIST.
  • Cree una aplicación para EXIST.
  • Obtenga la clave de API de consumidor (CA), la clave secreta de API de consumidor (CS), el token de acceso (AT) y el secreto del token de acceso (AS).
  • Escriba CA, CS, AT, AS en insert2db.conf.

Ejecutar scripts

root@kitploit:~
$ python scripts/insert2db/reputation/insert2db.py
$ python scripts/insert2db/twitter/insert2db.py
$ python scripts/insert2db/exploit/insert2db.py
$ python scripts/insert2db/threat/insert2db.py
$ python scripts/insert2db/news/insert2db.py
$ python scripts/insert2db/vuln/insert2db.py

Nota: Para automatizar la recopilación de información, agréguelos a su cron.

Configurar hunter

Twitter Hunter

Twitter Hunter puede detectar tweets que contengan palabras clave específicas e ID de usuario. Y puede notificar a Slack si es necesario.

  • Los archivos de configuración están en scripts/hunter/conf/hunter.conf. Créelo tomando como referencia hunter.conf.template.
  • Si usa Slack, escriba su token de Slack en hunter.conf.
  • Cree su cuenta de API de Twitter en https://developer.twitter.com/.
  • Cree 18 aplicaciones para EXIST.
  • Obtenga 18 claves de API de consumidor (CA), claves secretas de API de consumidor (CS), tokens de acceso (AT) y secretos de token de acceso (AS).
  • Escriba CA, CS, AT, AS en auth-hunter[00-18] en hunter.conf.
  • Haga que scripts/hunter/twitter/tw_watchhunter.py se ejecute cada minuto usando cron para que Twitter Hunter sea persistente.

Threat Hunter

Threat Hunter puede detectar eventos de amenazas que contengan palabras clave específicas. Y puede notificar a Slack si es necesario.

  • Los archivos de configuración están en scripts/hunter/conf/hunter.conf. Créelo tomando como referencia hunter.conf.template.
  • Si usa Slack, escriba su token de Slack en hunter.conf.
  • Haga que scripts/hunter/threat/th_watchhunter.py se ejecute cada minuto usando cron para que Threat Hunter sea persistente.

Otras herramientas y configuraciones requeridas

API de VirusTotal

EXIST usa la API de VirusTotal.

  • Cree su cuenta de VirusTotal.
  • Escriba su clave API en conf/vt.conf.

Nota: Obtendrá más información si tiene una clave API privada.

Base de datos GeoIP

Lookup IP / Domain usa la Base de datos GeoLite2.

  • Descargue la base de datos GeoIP desde http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.mmdb.gz
  • Escriba la ruta a GeoLite2-City.mmdb en su conf/geoip.conf.

wkhtmltopdf y Xvfb

Lookup URL usa wkhtmltopdf y Xvfb.

  • Descargue e instale wkhtmltopdf desde https://wkhtmltopdf.org/downloads.html
  • Instale Xvfb.
root@kitploit:~
$ sudo yum install xorg-x11-server-Xvfb

Si implementa EXIST en Ubuntu 18.04 LTS, puede instalar estos paquetes usando apt.

root@kitploit:~
$ sudo apt install wkhtmltopdf xvfb

Purgar datos antiguos

  • Los archivos de configuración están en scripts/url/url.conf. Créelo tomando como referencia url.conf.template.
  • Haga que scripts/url/delete_webdata.sh se ejecute cada día usando cron para purgar los datos antiguos de Lookup URL.
  • Haga que scripts/url/delete_oldtaskresult.sh se ejecute cada día usando cron para purgar los datos antiguos de Celery.

AnnotationTool

Una herramienta de anotación para crear datos de entrenamiento para tweets. Esta herramienta está destinada a investigadores de aprendizaje automático.

Cómo usar

  1. Revise el objetivo de anotación. annotation_target
  2. Haga clic en el botón Anotación. annotation_button
  3. Seleccione la palabra a etiquetar. annotation_labeled
  4. Haga clic en el botón de etiqueta.
  5. Guardar.

Reportar vulnerabilidad

Por favor, envíenos un correo electrónico si encuentra alguna vulnerabilidad.

Plantilla de Informe de Vulnerabilidad

Créditos

Este producto incluye datos de GeoLite2 creados por MaxMind, disponibles en https://www.maxmind.com.

Licencia

Licencia MIT © Cybersecurity Laboratory, NICT

Descargar herramienta