Tienda Wifi

Tienda Wifi
CiudadWireless es la tienda Wifi recomendada por elhacker.NET

Entradas Mensuales

Síguenos en:

Canal Oficial Telegram de elhacker.NET Grupo Facebook elhacker.NET Twitter elhacker.NET Canal Youtube elhacker.NET Comunidad Steam: Grupo elhacker.NET Mastodon

Entradas populares

PostHeaderIcon Ataques al navegador del usuario usando BeEF


BeEF es un framework que viene por defecto en Kali Linux y está orientado en la explotación de vulnerabilidades en los navegadores web. Podemos usar como vector de ataque un XSS (una vulnerabilidad XSS reflejado o persistente) y mediante un iframe oculto o fichero JavaSript (JS) se pueden robar credenciales, o bien usar simples ataques de ingeniería social preguntando por la instalación de falsos certficados de seguridad, falsas actualizaciones de Flash Player o simplemente simular una sesión caducada de Facebook





¿Qué es  BeEF?

La BeEF es la abreviatura de The Browser Exploitation Framework. Es una herramienta de pruebas de penetración que se centra en el navegador web.

En medio de la creciente preocupación por los ataques procedentes de Internet en contra de los clientes, incluyendo clientes móviles, BeEF permite la prueba de intrusión profesional para evaluar la situación de seguridad actual de un entorno de destino mediante el uso de vectores de ataque del lado del cliente. A diferencia de otros entornos de seguridad, BeEF mira más allá del perímetro de la red endurecido y sistema cliente, y examina explotabilidad en el marco de la puerta abierta: el navegador web.

BeEF enganchará (hook) uno o más de los navegadores web y los utilizan como cabezas de playa para el lanzamiento de los módulos de comando dirigidas y nuevos ataques contra el sistema desde dentro del contexto del explorador.


Introducción

The Browser Exploitation Framework (BeEF ) es una poderosa herramienta de seguridad profesional. La BeEF es técnicas pioneras que proporcionan la prueba de intrusión con experiencia con los vectores de ataque del lado del cliente prácticos. A diferencia de otros marcos de seguridad , BeEF se centra en el aprovechamiento de las vulnerabilidades del navegador para evaluar la postura de seguridad de un objetivo. Este proyecto es desarrollado exclusivamente para la investigación legal y pruebas de penetración .

BeEF engancha uno o más navegadores web como cabezas de playa para la puesta en marcha de los módulos de mando dirigidos . Cada navegador es probable que sea en un contexto de seguridad diferente , y cada contexto puede proporcionar un conjunto de vectores de ataque únicos. El marco permite que el probador de la penetración para seleccionar los módulos específicos ( en tiempo real ) para apuntar cada navegador , y por lo tanto cada contexto.

El marco contiene numerosos módulos de comando que emplean API sencilla y potente de la BeEF. Esta API está en el corazón de la eficacia y eficiencia de la estructura. Se abstrae la complejidad y facilita el desarrollo rápido de los módulos personalizados.


Requerimientos



Instalación


En Kali linux ya tenemos instalado por defecto a BeEF su localizacion es en /usr/share/beef-xss o tambien en “Kali Linux>herramiental de explotacion>plataforma XSS BeEF”

    cd /usr/share/beef-xss
    ./beef

Para los impacientes:

$ curl -L https://raw.githubusercontent.com/beefproject/beef/a6a7536e/install-beef | bash -s stable
 Dependencias

  • curl
  • git
  • gems
  • Ruby

git clone git://github.com/beefproject/beef.git

cd beef
    bundle install
    ruby beef


Configuración


El fichero de configuración general se llama:


 Aquí podemos establecer o restringir el acceso vía red al panel de control:

restrictions:
        permitted_hooking_subnet: "10.1.0.0/16"
        permitted_ui_subnet: "127.0.0.1/32"

Configurar el Servidor web:

    http:
        debug: false # Will print verbose message in BeEF console
        host: "0.0.0.0" # IP address of the web server
        port: "3000" #Port of the web server

        # If BeEF is running behind a reverse proxy or NAT
        #  set the public hostname and port here
        public: "8.7.6.5"
        public_port: "3000"

        dns: "localhost" # Address of DNS server
        web_ui_basepath: "/ui" # Path for admin UI
        hook_file: "/hook.js" # Path for hooking script
        hook_session_name: "BEEFHOOK" #Name of session
        session_cookie_name: "BEEFSESSION" # Name of BeEF cookie

 Las extensiones:

    extension:
        requester:
            enable: true
        proxy:
            enable: true
        metasploit:
            enable: false
        social_engineering:
            enable: true
        evasion:
            enable: false
        console:
             shell:
                enable: false

La integración con Metasploit:

            name: 'Metasploit'
            enable: true
            host: "127.0.0.1"
            port: 55552
            user: "msf"
            pass: "abc123"
            uri: '/api'
            ssl: true
            ssl_version: 'TLS1'
            ssl_verify: true
            callback_host: "127.0.0.1"
            autopwn_url: "autopwn"


Módulos de Metasploit


Podemos usar Browser Autopwn creando un iframe invisble:



msf > use auxiliary/server/browser_autopwn2
msf auxiliary(browser_autopwn2) > show options

Module options (auxiliary/server/browser_autopwn2):

   Name             Current Setting  Required  Description
   ----             ---------------  --------  -----------
   EXCLUDE_PATTERN                   no        Pattern search to exclude specific modules
   INCLUDE_PATTERN                   no        Pattern search to include specific modules
   Retries          true             no        Allow the browser to retry the module
   SRVHOST          0.0.0.0          yes       The local host to listen on. This must be an address on the local machine or 0.0.0.0
   SRVPORT          8080             yes       The local port to listen on.
   SSL              false            no        Negotiate SSL for incoming connections
   SSLCert                           no        Path to a custom SSL certificate (default is randomly generated)
   URIPATH                           no        The URI to use for this exploit (default is random)


Auxiliary action:

   Name       Description
   ----       -----------
   WebServer  Start a bunch of modules and direct clients to appropriate exploits

Y esperamos para obtener una shell:



Iniciando BeFF

 Accedemos al panel de control vía:


  • Usuario --> beef
  • Contraseña --> beef


 
Página inicial:


Página de Demos:

 Módulos

 El significado del color de los módulos:
  • - Verde: La víctima es vulnerable y su ejecución pasa desapercibida.
  • - Naranja: La víctima es vulnerable pero su ejecución no pasa desapercibida.
  • - Gris: Indeterminado. ¡Hemos venido a jugar!
  • - Rojo: La víctima no es vulnerable.
 

Ejemplos de Ingeniería Social

Preguntar por credenciales:
  • The Pretty Theft imprime un sencillo  mensaje al usuario que requiere de un usuario y contraseña explicando que la sesión ha terminado o caducado
  • The Simple Hijacker propone varias plantillas de ingeniería social y los impulsan al usuario cuando se haga clic en un enlace en la página.
  • Clippy crea un pequeño asistente navegador que proponen las actualizaciones del navegador. 



Ejemplo de session timeout en Facebook:
 

 

Extensiones de Chrome/Firefox 

Una vez enganchado al navegador (hooked)  podemos obtener:

  • Listado de dominios visitados
  • Listado de URLS
  • Acceso a la Webcam
  • Todas las Cookies
  • Capturas de Pantalla (Screenshots)
 BeEF usa un fichero JavaScript llamado "hook.js"


Ejemplo Falsa Actualización de Adobe Flash Player:

 Ejemplo instalación de certficado Falso:






5 comentarios :

Unknown dijo...

hola amigo quiere agradecerte por el post,
ahora quiero hacerte una pregunata,se puede sacar las pass almacenada en el browser mediante beef framwork o es inposible sacarlas, gracia por el post y espero vuestra repuesta

Tabiio dijo...

baia baia lo hare mañana haver que tal..

Anónimo dijo...

Todo esto se puede hacer fuera de la red local ? Sin nada más ? O toda esta prueba es solo para la red local?

Anónimo dijo...

Estoy intentando hacerlo fuera de la red local, ngrok detecta http. Algún otro servidor que me decomisan para importarlo fuera de la red local.

Anónimo dijo...

Se puede sacar fuera de la red local? Lo he intentado pero lamcosa es que ngrok detecta http, algún otro servidor que me recomienden.

Publicar un comentario

Los comentarios pueden ser revisados en cualquier momento por los moderadores.

Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.

Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.