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
Raccine — A Simple Ransomware Vaccine | Kitploit
Herramientas/GitHubGitHub/neo23x0/raccine
Defensive ToolsThreat IntelligenceIntrusion DetectionIncident ResponseAnomaly DetectionLog Analysis
GitHubneo23x0/raccine

Raccine

A Simple Ransomware Vaccine

Ver Repositorio
982126hace 2 añosRevisado 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

Inactively Maintained

Raccine

Raccine

Una protección sencilla contra el ransomware

Por qué

Con frecuencia vemos ransomware que elimina todas las copias de sombra mediante vssadmin. ¿Y si pudiéramos interceptar esa petición y matar el proceso que la invoca? Intentemos crear una vacuna sencilla.

Ransomware Process Tree

Cómo funciona

Registramos un depurador para vssadmin.exe (y wmic.exe), que es nuestro raccine.exe compilado. Raccine es un binario que primero recoge todos los PID de los procesos padre y después intenta matar todos los procesos padre.

Ventajas:

  • El método es bastante genérico
  • No tenemos que reemplazar un archivo del sistema (vssadmin.exe o wmic.exe), lo que podría provocar problemas de integridad y romper nuestra raccinación en cada día de parches
  • Escaneo flexible de los parámetros de la línea de comandos con reglas YARA para detectar actividad maliciosa
  • Los cambios son fáciles de deshacer
  • Funciona en Windows 7 / Windows 2008 R2 o superior
  • No requiere un ejecutable en ejecución ni un servicio adicional (sin agente)

Desventajas / Puntos ciegos:

  • El uso legítimo de vssadmin.exe delete shadows (o cualquier otra combinación en lista negra) ya no es posible
  • Incluso mata los procesos que intentaron invocar vssadmin.exe delete shadows, que podría ser un proceso de copia de seguridad
  • Esto no detectará métodos en los que el proceso malicioso no sea uno de los procesos del árbol que ha invocado vssadmin.exe (p. ej., mediante schtasks)

El proceso

  1. La invocación de vssadmin.exe (y wmic.exe) se intercepta y se pasa a raccine.exe como depurador (vssadmin.exe delete shadows se convierte en raccine.exe vssadmin.exe delete shadows)
  2. Después procesamos los argumentos de la línea de comandos y buscamos combinaciones maliciosas mediante reglas Yara.
  3. Si no se encuentra ninguna combinación maliciosa, creamos un nuevo proceso con los parámetros originales de la línea de comandos.
  4. Si se encuentra una combinación maliciosa, recopilamos todos los PID de los procesos padre y comenzamos a matarlos (esto deberían ser los procesos de malware como se muestra en las capturas de pantalla anteriores). Raccine muestra una ventana de línea de comandos con los PID eliminados durante 5 segundos, lo registra en el Registro de eventos de Windows y después finaliza.

Combinaciones maliciosas:

  • delete y shadows (vssadmin, diskshadow)
  • resize y shadowstorage (vssadmin)
  • delete y shadowstorage (vssadmin)
  • delete y shadowcopy (wmic)
  • delete y catalog y -quiet (wbadmin)
  • win32_shadowcopy o un elemento de una lista de comandos codificados (powershell)
  • recoveryenabled (bcedit)
  • ignoreallfailures (bcedit)

^ lista desactualizada: consulta la regla YARA correspondiente

Lista de comandos codificados de Powershell: JAB, SQBFAF, SQBuAH, SUVYI, cwBhA, aWV4I, aQBlAHgA y muchos más

Ejemplo

Emotet sin Raccine - Enlace

Emotet sin Raccine

Emotet con Raccine - Enlace (ignora la actividad de procesos relacionada con la instalación de Raccine)

Emotet con Raccine

La infección se corta de raíz.

Advertencia !!!

¡ÚSALO BAJO TU PROPIO RIESGO!

No podrás ejecutar comandos que utilicen los comandos en lista negra en una máquina raccinada hasta que apliques el parche de desinstalación raccine-reg-patch-uninstall.reg. Esto podría romper varias soluciones de copia de seguridad que ejecutan ese comando específico durante su trabajo. No solo bloqueará esa petición, sino que matará todos los procesos de ese árbol, incluida la solución de copia de seguridad y el proceso que la invoca.

Si tienes una monitorización de seguridad sólida que registre todas las ejecuciones de procesos, puedes revisar tus registros para ver si vssadmin.exe delete shadows, vssadmin.exe resize shadowstorage ... u otras líneas de comandos bloqueadas se usan con frecuencia o esporádicamente con fines legítimos, en cuyo caso deberías abstenerte de usar Raccine.

Historial de versiones

  • 0.1.0 - Versión inicial que interceptaba y bloqueaba todas las ejecuciones de vssadmin.exe
  • 0.2.0 - Versión que bloquea solo las ejecuciones de vssadmin.exe que contienen delete y shadows en su línea de comandos y, de lo contrario, pasa todos los parámetros a un nuevo proceso que invoca a vssadmin con sus parámetros originales
  • 0.2.1 - Se eliminó explorer.exe de la lista blanca
  • 0.3.0 - Compatibilidad con el método wmic que llama a delete shadowcopy, sin salidas para los inicios de procesos en lista blanca (evita problemas con el procesamiento de salida de wmic)
  • 0.4.0 - Compatibilidad con el registro en el Registro de eventos de Windows para cada intento bloqueado, busca más combinaciones maliciosas de parámetros
  • 0.4.1 - Binarios enlazados estáticamente
  • 0.4.2 - Correcciones de errores proporcionadas por John Lambert
  • 0.5.0 - Se eliminó el registro en el Registro de eventos (la información básica era innecesaria; causaba una mayor complejidad; también se puede lograr mediante el registro de creación de procesos), compatibilidad con el filtrado de wbadmin
  • 0.5.1 - Mejoras de @JohnLaTwC
  • 0.5.2 - Comprobación adicional de delete shadowstorage por @JohnLaTwC, revisión de código por @_hillu, icono de la aplicación
  • 0.5.3 - Instalador por lotes
  • 0.6.0 - Comprobaciones adicionales para bcdedit.exe /set {default} bootstatuspolicy ignoreallfailures y

Instalación

Requisitos

  • Runtime de VC++ para el escaneo YARA (el instalador contiene el paquete de configuración de https://aka.ms/vs/16/release/VC_redist.x64.exe)
  • .NET Framework 4.5
  • Acceso a Internet para las actualizaciones de reglas YARA
  • Windows 7 / Windows 2008 R2 o superior

Tanto el paquete redistribuible de Visual C++ como .NET Framework se instalarán automáticamente al ejecutar install-raccine.bat.

Instalación automática

  1. Descarga Raccine.zip desde la sección Releases
  2. Extráelo
  3. Ejecuta raccine-installer.bat como administrador

Windows Batch Installer

El instalador por lotes incluye una opción de "desinstalación".

Desinstalación manual

Como administrador, haz lo siguiente:

  1. Ejecuta raccine-reg-patch-uninstall.reg
  2. Elimina las carpetas %ProgramFiles%\Raccine y %ProgramData%\Raccine
  3. Ejecuta reg delete HKCU\Software\Raccine /F
  4. Ejecuta taskkill /F /IM RaccineSettings.exe
  5. Ejecuta reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /V "Raccine Tray" /F
  6. Ejecuta schtasks /DELETE /TN "Raccine Rules Updater" /F

Actualizaciones

Actualización del programa

Recomendamos desinstalar y reinstalar para actualizar. La desinstalación elimina todas las claves de registro con configuraciones.

Actualización de firmas

Raccine tiene un actualizador de firmas integrado desde la versión 1.2. Este programa, llamado RaccineRulesSync.exe, está configurado para ejecutarse una vez al día mediante una tarea programada. Puedes ejecutar una actualización de firmas manualmente usando la opción del menú del icono de la bandeja.

Coincidencia YARA

Desde la versión 1.0, Raccine utiliza además reglas YARA para determinar si la línea de comandos de un proceso o el proceso padre es malicioso o no. Raccine usa 2 conjuntos de reglas para dos propósitos diferentes.

  1. ./yara - reglas que se aplican a la línea de comandos con todos los parámetros, p. ej. WMIC.exe delete justatest
  2. ./yara/in-memory - reglas que se aplican a la memoria del proceso padre de nuestro proceso interceptado, p. ej. ransomware.exe ejecutando nuestro proceso interceptado vssadmin.exe

Variables externas de YARA

Desde la versión 1.1 pasamos una lista de variables externas al proceso de coincidencia YARA para permitir reglas YARA mucho más complejas e inteligentes que tengan en cuenta los atributos del proceso y de su padre.

El proceso de coincidencia se ve así en la línea de comandos:

root@kitploit:~
"C:\Program Files\Raccine\yara64.exe" -d FromRaccine="true" -d Name="WMIC.exe" -d ExecutablePath="C:\Windows\System32\wbem\WMIC.exe" -d CommandLine="WMIC.exe delete justatest" -d  Priority=32 -d FromRaccine="true" -d ParentName="cmd.exe" -d ParentExecutablePath="C:\Windows\System32\cmd.exe" -d ParentCommandLine="'C:\WINDOWS\system32\cmd.exe' " -d ParentPriority=32 C:\ProgramData\Raccine\yarayara\mal_emotet.yar C:\ProgramData\Raccine\yara\Rac1C6A.tmp

La siguiente lista muestra un ejemplo de regla YARA que utiliza las variables externas en su condición.

root@kitploit:~
rule env_vars_test {
    condition:
        Name contains "WMIC.exe"
        and CommandLine contains "delete justatest"
        and ParentPriority >= 8
        and (
            ParentCommandLine contains "cmd"
            or ParentCommandLine contains "powershell"
        )
}

Implementar configuración mediante GPO

La carpeta GPO incluye Raccine.ADMX y Raccine.ADML. En el despliegue, el archivo Raccine.ADMX va en C:\Windows\PolicyDefinitions. Los archivos Raccine.ADML correspondientes van en C:\Windows\PolicyDefinitions\en-US.

Para usarlo: abre GPEDIT.MSC > Configuración del equipo > Plantillas administrativas > Sistema > Raccine

Después de configurar los cambios, es posible que debas actualizar la GPO ejecutando gpupdate.exe.

Archivo de registro

Se escribe un archivo de registro con todas las intercepciones y acciones realizadas en C:\ProgramData\Raccine\Raccine_log.txt

Log File

Registro de eventos de Windows

Cada evento de bloqueo genera una entrada en el registro de eventos Application.

Eventlog

Los ID que genera Raccine

  • EventId 1 - Actividad de configuración
  • EventId 2 - Actividad maliciosa detectada
  • EventId 3 - Actividad benigna detectada

Modo simulación

Desde la versión 0.10.0, Raccine se puede instalar en "modo simulación", que activa todos los desencadenantes, registra todas las acciones pero no mata nada. Este modo debe usarse en entornos en los que las soluciones de copia de seguridad u otro software legítimo se utilizan durante un período de tiempo razonable para comprobar si Raccine interferiría con otro software. La idea es instalar Raccine en modo simulación, dejar que registre durante una semana o un mes y luego revisar los registros para ver si habría bloqueado software legítimo utilizado en la organización.

Kill Run

Captura de pantalla

Ejecuta raccine.exe y observa cómo muere el árbol de procesos padre (captura de pantalla de v0.1)

Kill Run

GUI

Disponible y requerida desde la versión 1.

GUI

GUI

GUI

Pivote

En caso de que el ransomware que estás manejando actualmente use un nombre de proceso determinado, p. ej. taskdl.exe, puedes simplemente cambiar el parche .reg para interceptar las llamadas a ese nombre y dejar que Raccine mate todos los procesos padre del árbol de procesos que lo invoca.

Se busca ayuda

Me gustaría ampliar Raccine pero carezco de habilidades de programación en C++, especialmente en la plataforma Windows.

Ayuda: mi sistema está roto

Si algo le ocurre a tu instalación, p. ej. mensajes de error repentinos, servicios rotos o programas que ya no arrancan, ejecuta el archivo raccine-reg-patch-uninstall.reg en la subcarpeta reg-patches. Esto debería devolver todo a la normalidad.

Después de eso, también deberías poder realizar una desinstalación completa usando install-raccine.bat.

Otra información

La pronunciación correcta es "Rax-Een".

Créditos

  • Florian Roth @cyb3rops
  • John Lambert @JohnLaTwC
  • Eran Yom-Tov @eran_yom_tov
  • Ollie Whitehouse @ollieatnccgroup
  • Branislav Đalić @LordOfThePies4
  • Hilko Bengen @hillu
Descargar herramienta
bcdedit.exe /set {default} recoveryenabled no
  • 0.7.0 - Comprobaciones adicionales para powershell.exe y win32_shadowcopy o una lista de comandos codificados
  • 0.7.1 - Mejoras de @JohnLaTwC
  • 0.7.2 - Uso de rutas absolutas en los parches de registro
  • 0.8.0 - Crea un archivo de registro con todas las peticiones interceptadas y las acciones realizadas C:\ProgramData\Raccine_log.txt
  • 0.9.0 - Registra en el Registro de eventos de Windows por @JohnLaTwC
  • 0.10.0 - Solo modo simulación
  • 0.10.1 - Corrección para el modo simulación
  • 0.10.2 - Incluye el comando diskshadow.exe delete shadows
  • 0.10.3-5 - Correcciones y adiciones menores
  • 1.0 BETA - Elementos de GUI y escaneo de parámetros de línea de comandos con reglas YARA
  • 1.1 BETA - Coincidencia de reglas YARA con variables externas, funciones de resolución de problemas
  • 1.2 BETA - Actualizador de firmas
  • 1.3 BETA - Escaneo YARA en memoria del proceso padre que invoca
  • 1.4 BETA - Compatibilidad total con x86, traslado de cadenas estáticas a reglas YARA para evitar detecciones de antivirus, registro de ejecuciones aceptadas, instalación de .NET Framework en el instalador
  • 1.4.2 BETA - Corrección del código de salida (transferencia del código de salida devuelto por el programa interceptado), intercepta taskkill.exe
  • VariableDescripciónValor de ejemplo
    FromRaccinetrue
    NameNombre del archivo de imagenWMIC.exe
    ExecutablePathRuta completa al binarioC:\Windows\System32\wbem\WMIC.exe
    CommandLineLínea de comandos completa con parámetrosWMIC.exe delete justatest
    PriorityPrioridad del proceso32
    ParentNameNombre del archivo de imagen del padrecmd.exe
    ParentExecutablePathRuta completa al ejecutable del padreC:\Windows\System32\cmd.exe
    ParentCommandLineLínea de comandos completa del padre con parámetrosC:\WINDOWS\system32\cmd.exe
    ParentPriorityPrioridad del proceso padre32