> For the complete documentation index, see [llms.txt](https://4lec4st.gitbook.io/4lec4st/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://4lec4st.gitbook.io/4lec4st/ejpt-notes/pruebas-de-penetracion-de-host-y-red/explotacion/ofuscacion/evasion-y-ofuscacion-de-av/evasion-de-av-con-shellter.md).

# Evasión de AV con Shellter

## 🕵️‍♂️ ¿Qué es Defense Evasion?

**Defense Evasion** es el conjunto de técnicas que los adversarios emplean para **evitar ser detectados** mientras comprometen un sistema. Estas técnicas permiten ocultar herramientas maliciosas, evadir antivirus (AV), y mantener el acceso sin alertar a los sistemas de defensa.

> 📚 *Definición según MITRE ATT\&CK:*\
> "Defense Evasion incluye desde desactivar software de seguridad hasta ofuscar scripts o abusar de procesos confiables para ocultar malware."

***

## 🧪 Métodos de Detección AV

Los antivirus suelen utilizar una combinación de métodos para identificar amenazas:

1. **🧬 Detección por Firma (Signature-based)**
   * Usa secuencias de bytes únicas para detectar malware conocido.
   * ⚠️ Evadible al **modificar el binario** para cambiar la firma (ofuscación, recompilación, etc).
2. **🧠 Detección Heurística**
   * Analiza **patrones sospechosos** en el código o llamadas al sistema.
   * Requiere que el atacante **evite patrones comunes** usados por malware.
3. **👣 Detección por Comportamiento (Behavior-based)**
   * Observa **acciones del proceso en tiempo real** (como acceso a memoria, red, archivos).
   * Especialmente útil contra malware **nuevo o modificado**.

***

## 🎭 Técnicas de Evasión AV

### 📁 **On-Disk Evasion** (basadas en archivos)

| Técnica            | Descripción                                                                                             |
| ------------------ | ------------------------------------------------------------------------------------------------------- |
| 🔀 **Obfuscation** | Reorganiza o enmascara el código para hacerlo más difícil de analizar o detectar.                       |
| 📦 **Packing**     | Cambia la estructura binaria de un ejecutable, normalmente reduciendo su tamaño y modificando su firma. |
| 🔐 **Crypters**    | Encriptan el payload; se desencripta dinámicamente en memoria durante la ejecución.                     |
| 🧬 **Encoding**    | Transforma el payload en un formato diferente que puede ser revertido al original (base64, XOR, etc).   |

***

### 🧠 **In-Memory Evasion** (basadas en memoria)

* No escribe archivos al disco 💾.
* Inyecta el payload directamente en la **memoria de un proceso** confiable usando APIs de Windows (como `CreateRemoteThread`, `VirtualAllocEx`).
* Ejecuta el código en **threads separados**, dificultando la detección.

> 🎯 *Objetivo: Ejecutar código malicioso sin dejar rastros persistentes en el disco.*
