Capture el tráfico HTTPS con Fiddler en Java

Shubham Vora 15 febrero 2024
  1. Configurar el Violinista
  2. Generar un KeyStore
  3. Configure el código de la aplicación para capturar el tráfico HTTPS con Fiddler
  4. Configure el Eclipse para capturar tráfico HTTPS con Fiddler
Capture el tráfico HTTPS con Fiddler en Java

El Violinista es una herramienta proxy de depuración web que ayuda a los desarrolladores a depurar aplicaciones web. Permite capturar el tráfico de la red y monitorear los datos entrantes y salientes.

Este artículo nos enseñará a configurar el Fiddler para capturar tráfico HTTPS. Entonces, los usuarios pueden capturar el tráfico HTTPS con Java sin ningún error.

Configurar el Violinista

Los usuarios deben seguir los pasos a continuación para configurar el Violinista.

  • Descargue Fiddler aquí e instálelo en su computadora local.
  • Ahora, asegúrese de que Fiddler capture el tráfico HTTPS, como se muestra en la imagen a continuación.

    capturar https con violinista - 1

  • A continuación, abre las Herramientas > Opciones. Aparecerá un cuadro de diálogo. Vaya a la pestaña Conexiones.
  • Ahora, asegúrese del valor del campo de texto Fiddler escucha en el puerto, que usaremos en nuestro código Java. El valor por defecto es 8888.

    capturar https con violinista - 2

  • En el cuadro de diálogo “Opciones”, vaya a la pestaña HTTPS y asegúrese de que “Capturar conexiones HTTPS” y “Descifrar tráfico HTTPS” estén marcados. Además, seleccione ... de todos los procesos en el menú desplegable de Descifrar tráfico HTTPS.

    capturar https con violinista - 3

  • A continuación, instale el certificado.
  • Como paso final, en la pestaña HTTPS del cuadro de diálogo Opciones, haga clic en el botón Acciones y seleccione Exportar certificado raíz al escritorio para exportar el certificado en el escritorio de su dispositivo.

    capturar https con violinista - 4

Generar un KeyStore

Debemos generar un KeyStore con el certificado que hemos exportado al escritorio.

  • Ejecute el Símbolo del sistema como administrador.
  • Los usuarios deben ingresar el siguiente comando en la terminal para encontrar el directorio raíz.
    echo %JAVA_HOME%
    
  • Dentro de la terminal, vaya al directorio raíz de Java que obtuvo en el paso anterior.
  • A continuación, vaya a la carpeta bin del directorio de Java usando el comando cd bin en el cmd.
  • Ejecute el siguiente comando en la terminal.
    keytool.exe -import -file C:\Users\\\Desktop\\FiddlerRoot.cer -keystore FiddlerKeystore -alias Fiddler
    
  • Ingrese la contraseña, y luego debe confirmarla volviendo a ingresarla.
  • Pulse y para responder a Confiar en este certificado.

Configure el código de la aplicación para capturar el tráfico HTTPS con Fiddler

Hemos configurado el Fiddler y generado un KeyStore con el certificado. Los usuarios deben agregar el siguiente código a la aplicación para capturar el tráfico HTTPS con Java.

// To capture HTTPS traffic
System.setProperty("https.proxyHost", "127.0.0.1");
System.setProperty("https.proxyPort", "8888");
// To capture HTTP traffic
System.setProperty("http.proxyHost", "127.0.0.1");
System.setProperty("http.proxyPort", "8888");

Además, los usuarios pueden usar el localhost en lugar de 127.0.0.1. Si los usuarios quieren usar un puerto diferente al 8888, también necesitan cambiar el puerto dentro del Fiddler, que hemos explicado en la sección Configurar Fiddler.

Configure el Eclipse para capturar tráfico HTTPS con Fiddler

Si los usuarios desean configurar el IDE Eclipse para capturar el tráfico HTTPS en lugar de agregar el código a la aplicación, deben seguir los pasos a continuación.

  • Vaya a Ejecutar > Ejecutar configuraciones en la barra de menú.
  • Desde la barra lateral del cuadro de diálogo Ejecutar configuraciones, elija un proyecto y vaya a la pestaña Argumentos.
  • Introduzca los siguientes argumentos en la sección Argumentos de VM.
    -DproxySet=true
    -DproxyHost=127.0.0.1
    -DproxyPort=8888
    -Djavax.net.ssl.trustStore="path\to\java_home\bin\FiddlerKeyStore"
    -Djavax.net.ssl.trustStorePassword="password_used_during_keystore_creation"
    

    capturar https con violinista - 5

  • Ahora, haga clic en el botón Aplicar y presione el botón Ejecutar.

Hemos configurado con éxito el Fiddler para capturar el tráfico HTTPS en este artículo. Además, hemos generado KeyStore utilizando el certificado fiddler.

Después de eso, tenemos dos opciones para capturar el tráfico HTTPS mediante una aplicación Java. El usuario puede configurar Eclipse o agregar código al código de la aplicación.

Shubham Vora avatar Shubham Vora avatar

Shubham is a software developer interested in learning and writing about various technologies. He loves to help people by sharing vast knowledge about modern technologies via different platforms such as the DelftStack.com website.

LinkedIn GitHub