Buen día a todos nuestros lectores, hoy vamos a explicarles las principales funciones de esta poderosa herramienta, así como su instalación, principales funciones y sus modos de uso.
¿Qué es Bettercap?
Ataques Man-In-The-Middle.
Sin embargo, podemos simplificar el concepto con un ejemplo. Cuando se conecta a alguna red (su red doméstica, WiFi público, StarBucks, etc.), el router / switch es responsable de reenviar todos sus paquetes al destino correcto, durante un ataque MITM "forzamos" a la red a considerar nuestra dispositivo como el enrutador (nosotros "spoofeamos/suplantamos" la dirección original del ranurador / del interruptor de cierta manera):

BetterCap es responsable de proporcionar al investigador de seguridad todo lo que necesita en una sola herramienta que funciona simplemente en sistemas GNU/Linux, Mac OS X y OpenBSD.
¿Por qué Bettercap?
* Los ingenieros inversos lo utilizan para invertir o modificar protocolos de red cerrados.
¿Por qué otra herramienta MITM?
¿Existe una herramienta MITM completa, modular, portátil y fácil de extender?
Si su respuesta es "ettercap", permítanme decirles algo:
* Ettercap era una gran herramienta, pero hizo su tiempo.
* Los filtros de Ettercap no funcionan la mayoría de las veces, son obsoletos y difíciles de implementar debido al lenguaje específico en el que se implementaron.
* Ettercap es inestable en grandes redes... intenta lanzar un escaneo en una red más grande que el usual /24.
* A menos que seas un desarrollador de C/C++, no puedes extender fácilmente Ettercap ni crear tu propio módulo.
Además:
* Los módulos MITM e ICMP spoofing en ettercap son completamente inútiles.
Instalación
Todas las dependencias de Ruby se instalarán automáticamente a través del sistema GEM, sin embargo algunas GEMS necesitan bibliotecas nativas para compilar como son build-essential ruby-dev libpcap-dev, instalalas.
Atacar objetivos específicos:
sudo bettercap -T 192.168.1.10, 192.168.1.11
Atacar un objetivo específico mediante su dirección MAC:
sudo bettercap -T 01:23:45:67:89:10
Atacar una gama de direcciones IP:
sudo bettercap -T 192.168.1.1-30
Atacar una subred específica:
sudo bettercap -T 192.168.1.1/24
sudo bettercap --random-mac
Opciones
BetterCAP detectará automáticamente su interfaz de red predeterminada y la utilizará, si desea hacerla usar otra interfaz (cuando tenga más de uno, digamos eth0 y wlan0 ) puede usar esta opción.
Cambia la dirección MAC de la interfaz a este valor antes de realizar el ataque.
Cambia la dirección MAC de la interfaz a una aleatoria antes de realizar el ataque.
Lo mismo ocurre con la puerta de enlace, o bien permite que bettercap lo detecte automáticamente o especifique manualmente su dirección.
Si no se especifica un destino específico en la línea de comandos, bettercap añadirá como target cada una de las direcciones de la red. Hay casos en los que ya conoce la dirección IP o MAC de su(s) destino(s), en estos casos puede utilizar esta opción.
Ignore estas direcciones IP si se encuentran durante la búsqueda de objetivos.
Hace que bettercap no busque activamente hosts, solo use la cache ARP actual, por defecto desactivada .
Deshabilite la resolución de nombre de host NBNS de destino.
Número de segundos (puede ser un número decimal) para esperar entre cada paquete a enviar.
Verificará si hay alguna actualización disponible y luego sale.
Muestra las opciones disponibles.
Spoofing
BetterCap ya incluye un spoofer ARP (funcionando tanto en modo dúplex completo como medio duplex), un spoofer de DNS y el primer spoofer de ICMP DoubleDirect totalmente funcional y totalmente automatizado en el mundo.
Utilice el viejo, pero efectivo ARP spoofing:
sudo bettercap o sudo bettercap -S ARP o sudo bettercap --spoofer ARP
Utilice un ataque de suplantación de redireccionamiento ICMP de full duplex :
sudo bettercap -S ICMP o sudo bettercap --spoofer ICMP
Desactivar el spoofing:
sudo bettercap -S NONE o sudo bettercap --spoofer NONE o sudo bettercap --no-spoofing
Prohibir que una dirección IP se conecte a la red (En este caso 192.168.1.2):
sudo bettercap -T 192.168.1.2 --kill
Opciones
Módulo Spoofer a utilizar, disponible: ARP , ICMP , NONE - por defecto: ARP .
Deshabilitar spoofing.
En lugar de reenviar paquetes, este conmutador hará que las conexiones de destino sean eliminadas.
Habilitar MITM dúplex completo, esto hará el ataque de bettercap entre en el/los objetivo(s) y el enrutador.
Sniffing y recolección de credenciales
* URLs visitadas.
* HTTP POSTed datos.
* Autenticaciones HTTP Basic y Digest.
* Credenciales de FTP.
* Credenciales de IRC.
* Credenciales POP, IMAP y SMTP.
* Credenciales NTLMv1 / v2 (HTTP, SMB, LDAP, etc).
* Credenciales del protocolo DICT.
* Credenciales del MPD.
* Credenciales NNTP.
* Mensajes DHCP y autenticación.
* Credenciales de inicio de sesión de REDIS.
* RLOGIN credenciales.
* Credenciales SNPP.
Y más!
Utilice bettercap como un sniffer de red local simple:
sudo bettercap --local o sudo bettercap -L
Utilice el archivo capture.pcap en su directorio personal como fuente de paquetes:
sudo bettercap --sniffer-source ~/archivo.pcap
Spoof toda la red y guardar todos los paquetes en el archivo capture.pcap en su directorio personal:
sudo bettercap --sniffer-output ~/archivo.pcap
Spoofear toda la red, pero sólo sniffear tráfico HTTP:
sudo bettercap --sniffer-filter "tcp port http"
Spoofear toda la red y extraer los datos de los paquetes que contienen la palabra "contraseña":
sudo bettercap --custom-parser ".*password.*"
Opciones
Habilitar el sniffer.
De forma predeterminada, bettercap sólo analizará los paquetes procedentes de/a otras direcciones de la red, si también desea procesar los paquetes enviados o recibidos desde su propia computadora puede utilizar esta opción (NOTA: habilitará el sniffer).
Carga los paquetes del archivo PCAP especificado en lugar de la interfaz de red (NOTA: habilitará el sniffer).
Guarda todos los paquetes en el archivo PCAP especificado (NOTA: activará el sniffer).
Configura el sniffer para usar este filtro BPF (NOTA: habilitará el sniffer).
Lista separada por comas de analizadores de paquetes para habilitar, * para todos (NOTA: habilitará el sniffer), disponible: COOKIE , CREDITCARD , DHCP , DICT , FTP , HTTPAUTH , HTTPS , IRC , MAIL , MPD , MYSQL , NNTP , NTLMSS , PGSQL , POST , REDIS , RLOGIN , SNMP , SNPP , URL , WHATSAPP , predeterminado a * .
Utilice una expresión regular personalizada para capturar y mostrar datos sniffeados. (NOTA: habilitará al sniffer).
Acerca de Proxying.

De forma predeterminada, los proxies builtin no harán otra cosa que registrar todas las solicitudes, además puede especificar un "módulo" para usar y podrá cargar uno de los complementos integrados (o los suyos) y manipular todo el tráfico como lo haga me gusta.
HTTP / HTTPS
Los módulos incorporados son:
InjectJS ( --proxy-module injectjs ): Se utiliza para inyectar código javascript / archivos dentro de páginas HTML.
Los módulos proxy HTTP/HTTPS pueden requerir argumentos de línea de comandos adicionales, siempre es una buena idea mirar sus menús de ayuda específicos:
bettercap --proxy-module NOMBRE_DEL_MODULO -h
Módulo de ejemplo
Puede implementar fácilmente un módulo para inyectar datos en páginas o simplemente inspeccionar las peticiones / respuestas creando un archivo ruby y pasarlo a bettercap con el argumento --proxy-module , lo siguiente es un módulo de ejemplo que inyecta algunos contenidos en la etiqueta de título de cada página html, puede encontrar otros módulos de ejemplos en el repositorio dedicado de módulos proxy.
HTTP
SSL Stripping.
SSL stripping es una técnica introducida por Moxie Marlinspike (El creador de Signal Private Messenger, la aplicación de mensajería más segura del mundo) durante BlackHat DC 2009, la descripción del sitio web de esta técnica va como:
"Se secuestrará de forma transparente el tráfico HTTP en una red, observará los enlaces HTTPS y los redireccionamientos y, a continuación, asignará esos vínculos a vínculos HTTP parecidos o enlaces HTTPS similares a homógrafos. "
En resumen, esta técnica reemplazará cada enlace https en páginas web que el objetivo está navegando con http , así que si una página normalmente se veía así:
... <a href = "https://www.facebook.com/"> Iniciar sesión </ a > ...
Durante un ataque de SSL stripping su código HTML se modificará como:
... <a href = "http://www.facebook.com/"> Iniciar sesión </ a > ...
Siendo un ataque MITM, esto nos permite sniffear y modificar páginas que normalmente no podríamos ver.
Desvío HSTS
El SSL stripping funcionó bastante bien hasta 2010, cuando se introdujo la especificación HSTS , Wikipedia dice:
"HTTP Strict Transport Security (HSTS) es un mecanismo de política de seguridad web que ayuda a proteger sitios web contra ataques de degradación del protocolo y secuestro de cookies. Permite a los servidores web declarar a los navegadores web (u otros agentes de usuario) que sólo deben interactuar con él mediante conexiones HTTPS seguras y nunca a través del protocolo HTTP inseguro. HSTS es un protocolo de seguimiento de normas IETF y se especifica en RFC 6797. "
Por otra parte las políticas de HSTS se han incorporado a los principales navegadores, lo que significa que ahora, incluso con un ataque SSL stripping ejecutándose, el navegador se conectará a HTTPS de todos modos, incluso si se especifica el esquema http:// , haciendo inútil el ataque.
Por esta razón, Leonardo Nve Egea presentó sslstrip + (o sslstrip2) durante BlackHat Asia 2014. Esta herramienta era una mejora sobre la versión original de Moxie, creada específicamente para eludir las políticas de HSTS. Dado que las reglas HSTS la mayoría de las veces se aplican en base a cada nombre de host, el truco es rebajar los enlaces HTTPS a HTTP y añadir un nombre de dominio secundario personalizado a ellos. Cada enlace resultante no será válido para ningún servidor DNS, pero ya que estamos MITMing podemos resolver estos nombres de host de todos modos.
Tomemos la página de ejemplo anterior:
... <a href = "https://www.facebook.com/"> Iniciar sesión </ a > ...
Un ataque de derivación de HSTS lo cambiará a algo como:
... <a href = "http://wwww.facebook.com/"> Iniciar sesión </ a > ...
Tenga en cuenta que https ha sido degradado a http y www reemplazado por wwww.
Cuando la "víctima" haga clic en ese enlace, no se aplicará ninguna regla HSTS (ya que no hay regla para tal subdominio que acabamos de crear) y el software MITM (BetterCap en nuestro caso) se encargará de la resolución DNS, lo que nos permite ver y alterar el tráfico que se supone no podemos ver.
Demostración
El siguiente video muestra cómo realizar ataques SSL Stripping y HSTS Bypass para capturar las credenciales de inicio de sesión de Facebook de un destino específico.
DNS
Si desea realizar spoofing de DNS, debe especificar el argumento en la línea de comandos --dns FILE, donde el valor FILE es el nombre de un archivo compuesto por entradas como las siguientes:
# Empty lines or lines starting with # will be ignored.
# redirect *.google.com to the attacker ip address
local .*google\.com
# redirect *.microsoft.com to 10.10.10.10
10.10.10.10 .*microsoft\.com
Entonces todo lo que te queda por hacer es ejecutar:
sudo bettercap --dns dns.conf
--dns FILE
Activa el servidor DNS y utiliza este archivo como una tabla de resolución de hosts.
--dns-port PORT
Establecer el puerto del servidor DNS, por defecto es el 5300.
Con esto finalizamos este post acerca de bettercap, si tienen alguna recomendación o duda pueden hacernos saber en los comentarios o en nuestra sala de chat.
Síguenos en Facebook, Twitter, unete a nuestro chat en Matrix y no olvides compartirnos en las redes sociales. También puede hacernos una donación o comprar nuestros servicios.
Acerca del autor

Especialista en Seguridad Informática. Fundador de Security Hack Labs. Desarrollador de BlackArch Linux y creador de Findomain. Twitter: @edu4rdshl XMPP: edu4rdshl@conversations.im Threema ID: 736WU8VV
- Inicie sesión para enviar comentarios