Saltar al contenido
OPS // KITitspentest.sh

PE-CHI

chisel

Túnel TCP/UDP rápido sobre HTTP, usado para pivotar tráfico a través de un host comprometido hacia un segmento de red interno.

Sitio oficialVolver al catálogo

RESUMEN

chisel (jpillora/chisel) es un túnel TCP/UDP rápido, transportado sobre HTTP y asegurado con SSH por debajo: un servidor chisel corre en una máquina controlada por el atacante, un cliente chisel corre en el host comprometido, y ambos negocian una única conexión saliente HTTP/WebSocket que luego transporta puertos reenviados arbitrarios en cualquier dirección — sin necesidad de un listener aparte ni dependencias extra en el objetivo, más allá del único binario estático en Go.

Como viaja sobre HTTP normal y solo necesita una conexión saliente, es una forma habitual de sacar un túnel estable de redes con filtrado de salida restrictivo que bloquearía una reverse shell cruda o un proxy SOCKS directo, permitiendo apuntar Nmap, un navegador u otra herramienta a hosts al otro lado del segmento de red del host comprometido.

CASOS DE USO

Casos de uso en un engagement

  • 01

    Pivotar un proxy SOCKS a través de un host comprometido para alcanzar un segmento interno no enrutable directamente.

  • 02

    Reenviar un servicio interno concreto (por ejemplo una app web interna o RDP) hacia la máquina atacante para testearlo.

  • 03

    Pivotar en reversa hacia una red detrás de un filtrado de salida restrictivo que bloquea una reverse shell cruda.

  • 04

    Encadenar con otras herramientas (Nmap, Burp, navegadores) vía el proxy SOCKS una vez establecido el túnel.

PRIMEROS PASOS

Cuando ya existe un punto de apoyo en un host con acceso a un segmento que no puedes alcanzar directamente, para construir un túnel y pivotar herramientas a través de él.

  1. Confirma que pivotar a través de este punto de apoyo concreto hacia el segmento objetivo está autorizado en el alcance.
  2. Descarga o compila el binario estático de chisel para la máquina atacante y para la arquitectura del host comprometido.
  3. Arranca chisel en modo servidor en la máquina atacante, con --reverse si el cliente necesita salir a través del filtrado de egreso.
  4. Ejecuta el cliente chisel en el host comprometido, conectando de vuelta y solicitando un túnel SOCKS o de reenvío de puertos.
  5. Apunta Nmap, un navegador (vía proxychains o una herramienta compatible con SOCKS), u otra herramienta al nuevo túnel.
chisel client 10.10.10.1:8000 R:socks

ANTES DE USARLA

Qué revisar antes de lanzarla

El tráfico propio de chisel es identificable — un handshake WebSocket reutilizado como túnel saliente de larga duración es un patrón de pivoteo conocido que una red monitorizada puede detectar; documenta la ruta del pivote (IP y puerto del servidor, host cliente) para el informe, lo detecten o no.

El acceso vía el proxy SOCKS en reversa solo está tan acotado como el tráfico que se envía por él — mantén el escaneo y las herramientas de seguimiento dentro de los segmentos realmente autorizados, no solo lo que resulte enrutable a través del túnel.

Cualquiera que pueda alcanzar el puerto de escucha del servidor chisel puede potencialmente conectarse también a él; haz bind acotado y considera la autenticación integrada de chisel (users.json) en vez de dejar el servidor abierto a internet.

SIGUE EXPLORANDO

Ver toda la fase →