¿Cómo completar la información del proxy en el archivo de configuración cntlm?

Cntlm es un proxy NTLM / NTLM Session Response / NTLMv2 que autentica HTTP destinado a ayudarte a liberarte de las cadenas del mundo propietario de Microsoft.

Tengo mi URL proxy en el siguiente formato:

http://user:passwords@my_proxy_server.com:80 

Y tengo que proporcionar esta información a cntlm . Su archivo de configuración cntlm.ini tiene la siguiente estructura y parámetros:

 Username Domain Password Proxy 

No estoy seguro de cómo dividir mi propiedad proxy original para completar estas cuatro opciones.

Actualice su información de usuario, dominio y proxy en cntlm.ini , luego pruebe su proxy con este comando (ejecute en su carpeta de instalación Cntlm):

 cntlm -c cntlm.ini -I -M http://google.ro 

Le pedirá su contraseña y, con suerte, imprimirá su información de autenticación requerida, que debe guardarse en su cntlm.ini

Muestra cntlm.ini :

 Username user Domain domain # provide actual value if autodetection fails # Workstation pc-name Proxy my_proxy_server.com:80 NoProxy 127.0.0.*, 192.168.* Listen 127.0.0.1:54321 Listen 192.168.1.42:8080 Gateway no SOCKS5Proxy 5000 # provide socks auth info if you want it # SOCKS5User socks-user:socks-password # printed authentication info from the previous step Auth NTLMv2 PassNTLMv2 98D6986BCFA9886E41698C1686B58A09 

Nota: en Linux, el archivo de configuración es cntlm.conf

La solución toma dos pasos!

Primero, complete los campos de usuario, dominio y proxy en cntlm.ini . El nombre de usuario y el dominio probablemente sean los que use para iniciar sesión en Windows en su oficina, ej.

 Username employee1730 Domain corporate Proxy proxy.infosys.corp:8080 

Luego prueba cntlm con un comando como

 cntlm.exe -c cntlm.ini -I -M http://www.bbc.co.uk 

Le pedirá su contraseña (de nuevo, lo que sea que use para iniciar sesión en Windows_). Esperemos que imprima ‘http 200 ok’ en alguna parte e imprima su información de autenticación de tokens crípticos. Ahora agréguelos a cntlm.ini , por ejemplo:

 Auth NTLM PassNT A2A7104B1CE00000000000000007E1E1 PassLM C66000000000000000000000008060C8 

Finalmente, establezca la variable de entorno http_proxy en Windows (suponiendo que no haya cambiado con el campo Listen que está configurado por defecto en 3128 ) a la siguiente

 http://localhost:3128 

http://forum.kde.org/viewtopic.php?f=83&t=119352

Ahí tienes mi propio hilo. Yo claramente lo mostré allí.

No puedo cambiar nada allí, ya no puedo acceder a mi cuenta, identifique por qué, pero cuando configura todo en el archivo cntlm.conf (no se requiere contraseña para establecerlo allí), guarde el archivo y vaya a torminal. tipo de comando:

 cntlm -H 

e ingrese su contraseña de proxy. luego imprimirá 3 líneas de hashes: cópielas todas y péguelas en el archivo cntlm.conf en lugar de “contraseña”.

Por lo tanto, tendrá una contraseña codificada y los usuarios no la encontrarán usando ettercap;)

Sin ninguna configuración, puede simplemente emitir el siguiente comando (modificando myusername y mydomain con su propia información):

 cntlm -u myusername -d mydomain -H 

o

 cntlm -u myusername@mydomain -H 

Le preguntará la contraseña de myusername y le dará el siguiente resultado:

 PassLM 1AD35398BE6565DDB5C4EF70C0593492 PassNT 77B9081511704EE852F94227CF48A793 PassNTLMv2 A8FC9092D566461E6BEA971931EF1AEC # Only for user 'myusername', domain 'mydomain' 

Luego cree el archivo cntlm.ini (o cntlm.conf en Linux usando la ruta predeterminada) con el siguiente contenido (reemplazando su myusername , mydomain y A8FC9092D566461E6BEA971931EF1AEC con su información y el resultado del comando anterior):

 Username myusername Domain mydomain Proxy my_proxy_server.com:80 NoProxy 127.0.0.*, 192.168.* Listen 127.0.0.1:5865 Gateway yes SOCKS5Proxy 5866 Auth NTLMv2 PassNTLMv2 A8FC9092D566461E6BEA971931EF1AEC 

Luego tendrá un proxy abierto local en el puerto local 5865 y otro que comprenderá el protocolo SOCKS5 en el puerto local 5866 .

Solo para agregar, si está realizando una operación “pip”, es posible que necesite agregar y adicional “–proxy = localhost: port_number”

pip install --proxy=localhost:3128 matplotlib

Visita este enlace para ver detalles completos.

Una vez que haya generado el archivo y haya cambiado su contraseña, puede ejecutarlo como se indica a continuación,

 cntlm -H 

El nombre de usuario será el mismo. pedirá una contraseña, la dará, luego copiará el PassNTLMv2, edita el cntlm.ini, luego ejecuta el siguiente

 cntlm -v 

Para mí, simplemente usar cntlm -H no generaba el hash correcto, pero sí lo hace con el siguiente comando que proporciona el nombre de usuario.

Si necesita generar un nuevo hash de contraseña para cntlm, porque lo ha cambiado o se ha visto obligado a actualizarlo, puede simplemente escribir el siguiente comando y actualizar su archivo de configuración cntlm.conf con el resultado:

 $ cntlm -u test -H Password: PassLM D2AABAF8828482D5552C4BCA4AEBFB11 PassNT 83AC305A1582F064C469755F04AE5C0A PassNTLMv2 4B80D9370D353EE006D714E39715A5CB # Only for user 'test', domain ''