
Monitoree tráfico TCP arbitrario utilizando su proxy de intercepción HTTP preferido.
Monitorea tráfico TCP arbitrario utilizando tu proxy de intercepción HTTP favorito
socksmon es un servidor SOCKSv4 basado en Twisted que tuneliza el tráfico TCP entrante a través de un proxy HTTP. socksmon lo hace iniciando un servidor web interno en el puerto 2357, enviando el tráfico al proxy intermediario para editarlo y luego reenviándolo al destino.
socksmon tiene soporte preliminar para intercepción SSL, lo que significa que se puede analizar tráfico TCP cifrado con SSL utilizando tu proxy de intercepción favorito.
Primero necesitas crear un certificado que quieras usar con socksmon en formato PEM y colocarlo en /tmp/server.pem. Si usas BURP, exporta la clave privada y el certificado y luego concaténalos. (ej. cat server.crt server.key > /tmp/server.pem)
Segundo, inicia tu proxy de intercepción en el puerto 8080 en localhost.
Tercero, envía tráfico SOCKSv4 a tuip:9050. Asegúrate de usar SOCKSv4, ya que SOCKSv5 no funcionará debido a la implementación del servidor SOCKS de Twisted. Para redirigir tráfico recomiendo Proxifier1 en Windows y Redsocks2 o Proxychains3 en Linux.
Se aceptan parches / PRs.
Actualmente no se generan certificados para puntos finales específicos, por ejemplo, la clave especificada se usa directamente para todos los sitios. Esto es problemático con clientes que verifican el nombre común o la lista de revocación en el certificado.
Se debería dar soporte a proxies upstream para todo el tráfico. HTTP debería recibir un tratamiento especial, para que también se puedan usar proxies que no permitan CONNECT.
Se deberían usar opciones de línea de comandos para configurar el puerto del proxy, los certificados y los puertos del servidor web.
Implementar un marco modular que permita procesar tráfico TCP. Debería ser fácil implementar decodificadores y recodificadores para diferentes protocolos y formatos (por ejemplo, deserializar objetos Java a XML).