Cntlm ist ein NTLM/NTLM-Sitzungsantwort/NTLMv2-Authentifizierungs-HTTP-Proxy, der Ihnen dabei helfen soll, sich von den Ketten der Microsoft-eigenen Welt zu befreien.
Ich habe meine Proxy-URL im folgenden Format:
http://user:[email protected]_proxy_server.com:80
Und ich muss diese Informationen an cntlm
weitergeben. Die Konfigurationsdatei cntlm.ini
hat folgende Struktur und Parameter:
Username
Domain
Password
Proxy
Ich bin nicht sicher, wie ich meine ursprüngliche Proxy-Eigenschaft aufteilen kann, um diese vier Optionen zu erfüllen?
Aktualisieren Sie Ihre Benutzer-, Domänen- und Proxy-Informationen in cntlm.ini
und testen Sie dann Ihren Proxy mit dem folgenden Befehl (in Ihrem Cntlm-Installationsordner ausführen):
cntlm -c cntlm.ini -I -M http://google.ro
Es fragt nach Ihrem Passwort und gibt hoffentlich die erforderlichen Authentifizierungsinformationen aus, die in Ihrem cntlm.ini
gespeichert werden müssen.
Beispiel 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
Anmerkung: Unter Linux ist die Konfigurationsdatei cntlm.conf
Die Lösung umfasst zwei Schritte!
Füllen Sie zuerst die Felder für Benutzer, Domäne und Proxy in cntlm.ini
aus. Der Benutzername und die Domäne sollten wahrscheinlich das sein, was Sie zur Anmeldung bei Windows in Ihrem Büro verwenden, z.
Username employee1730
Domain corporate
Proxy proxy.infosys.corp:8080
Dann testen Sie cntlm mit einem Befehl wie
cntlm.exe -c cntlm.ini -I -M http://www.bbc.co.uk
Sie werden nach Ihrem Passwort gefragt (was auch immer Sie zur Anmeldung bei Windows_ verwenden). Hoffentlich druckt es irgendwo "http 200 ok" und Ihre kryptischen Token-Authentifizierungsinformationen. Fügen Sie nun diese zu cntlm.ini
hinzu, zB:
Auth NTLM
PassNT A2A7104B1CE00000000000000007E1E1
PassLM C66000000000000000000000008060C8
Setzen Sie schließlich die Umgebungsvariable http_proxy
in Windows (vorausgesetzt, Sie haben das Feld Listen
, das standardmäßig auf 3128
eingestellt ist) nicht geändert
http://localhost:3128
http://forum.kde.org/viewtopic.php?f=83&t=119352
Da gehst du meinen eigenen Thread. Ich habe es deutlich gezeigt.
Ich kann dort nichts ändern, ich kann nicht mehr auf mein Konto zugreifen, idk warum, aber wenn Sie alles in der Datei cntlm.conf festlegen (das Passwort ist dort nicht erforderlich) - speichern Sie die Datei und gehen Sie zum Endpunkt. Typ Befehl:
cntlm -H
und geben Sie Ihr Proxy-Passwort ein. dann werden für Sie 3 Zeilen Hashes ausgedruckt - kopieren Sie alle und fügen Sie sie in die cntlm.conf-Datei anstelle der Zeile "password" ein.
Sie erhalten also ein Passwort, das die Benutzer nicht mit ettercap finden können;)
Ohne Konfiguration können Sie einfach den folgenden Befehl ausgeben (myusername
und mydomain
mit Ihren eigenen Informationen ändern):
cntlm -u myusername -d mydomain -H
oder
cntlm -u [email protected] -H
Sie werden nach dem Passwort von myusername
gefragt und erhalten folgende Ausgabe:
PassLM 1AD35398BE6565DDB5C4EF70C0593492
PassNT 77B9081511704EE852F94227CF48A793
PassNTLMv2 A8FC9092D566461E6BEA971931EF1AEC # Only for user 'myusername', domain 'mydomain'
Erstellen Sie dann die Datei cntlm.ini
(oder cntlm.conf
unter Linux mit Standardpfad) mit folgendem Inhalt (Ersetzen Sie Ihre myusername
, mydomain
und A8FC9092D566461E6BEA971931EF1AEC
mit Ihren Informationen und dem Ergebnis des vorherigen Befehls):
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
Dann haben Sie einen lokalen offenen Proxy am lokalen Port 5865
und einen weiteren, der das SOCKS5-Protokoll am lokalen Port 5866
versteht.
Um nur hinzuzufügen, wenn Sie eine "Pip" -Operation durchführen, müssen Sie möglicherweise zusätzlich "--proxy = localhost: port_number"
z. B. pip install --proxy=localhost:3128 matplotlib
Besuchen Sie diesen link , um alle Details zu sehen.
Hier finden Sie eine Anleitung zur Verwendung von Cntlm
cntlm ist ein NTLM/NTLMv2-Authentifizierungs-HTTP-Proxy
Er nimmt die Adresse Ihres Proxys und öffnet einen Listening-Socket, der jede Anfrage an den übergeordneten Proxy weiterleitet
Mit cntlm können Sie Tools wie choro, pip3, apt-get
von einer Befehlszeile aus ausführen
pip3 install requests
choco install git
Der Hauptvorteil von cntlm ist der Passwortschutz.
Mit cntlm können Sie Passwort-Hashes verwenden.
Also NO PLAINTEXT PASSWORD in den Umgebungsvariablen %HTTP_PROXY%
und %HTTPS_PROXY%
Sie können die neueste cntlm-Version von sourceforge erhalten.
Mein Benutzername ist zezulinsky
Meine Domain ist local
Beim Ausführen von Befehlen verwende ich [email protected]
.
Geben Sie Ihren Benutzernamen ein, wenn Sie Befehle ausführen
Einen Befehl ausführen
cntlm -u [email protected] -H
Gib dein Passwort ein:
Password:
Als Ergebnis erhalten Sie ein gehashtes Passwort:
PassLM AB7D42F42QQQQ407552C4BCA4AEBFB11
PassNT PE78D847E35FA7FA59710D1231AAAF99
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
Einen Befehl ausführen
cntlm -u [email protected] -M http://google.com
Geben Sie Ihr Passwort ein
Password:
Die Ergebnisausgabe
Config profile 1/4... OK (HTTP code: 301)
----------------------------[ Profile 0 ]------
Auth NTLMv2
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
------------------------------------------------
Hinweis! Stellen Sie sicher, dass der PassNTLMv2-Hash derselbe ist Der resultierende Hash ist für beide Befehle derselbe
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
Platzieren Sie die generierten Hashes in der Konfigurationsdatei cntlm.ini
C:\Program Files (x86)\Cntlm\cntlm.ini
So sollte Ihr cntlm.ini
aussehen
Username zezulinsky
Domain local
PassLM AB7D42F42QQQQ407552C4BCA4AEBFB11
PassNT PE78D847E35FA7FA59710D1231AAAF99
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
Proxy PROXYSERVER:8080
NoProxy localhost, 127.0.0.*
Listen 3128
Es ist wichtig, am Ende der cntlm.ini
-Konfigurationsdatei eine neue Zeile hinzuzufügen
HTTPS_PROXY=http://localhost:3128
HTTP_PROXY=http://localhost:3128
Stoppen Sie alle Prozesse mit dem Namen cntlm.exe
mit dem Prozess-Explorer
Führen Sie den Befehl aus
cntlm -u [email protected] -H
Die Ausgabe sieht so aus
cygwin warning:
MS-DOS style path detected: C:\Program Files (x86)\Cntlm\cntlm.ini
Preferred POSIX equivalent is: /Cntlm/cntlm.ini
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
Consult the user's guide for more details about POSIX paths:
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
section: local, Username = 'zezulinsky'
section: local, Domain = 'local'
section: local, PassLM = 'AB7D42F42QQQQ407552C4BCA4AEBFB11'
section: local, PassNT = 'PE78D847E35FA7FA59710D1231AAAF99'
section: local, PassNTLMv2 = '46738B2E607F9093296AA4C319C3A259'
section: local, Proxy = 'PROXYSERVER:8080'
section: local, NoProxy = 'localhost, 10.*, 127.0.0.*
section: local, Listen = '3128'
Default config file opened successfully
cntlm: Proxy listening on 127.0.0.1:3128
Adding no-proxy for: 'localhost'
Adding no-proxy for: '10.*'
Adding no-proxy for: '127.0.0.*'
cntlm: Workstation name used: MYWORKSTATION
cntlm: Using following NTLM hashes: NTLMv2(1) NT(0) LM(0)
cntlm: PID 1234: Cntlm ready, staying in the foreground
Öffne eine neue cmd und führe einen Befehl aus:
pip3 install requests
Sie sollten Requests Python-Paket installiert haben
Glückwunsch, jetzt haben Sie cntlm installiert und konfiguriert
Nachdem Sie die Datei erstellt und Ihr Kennwort geändert haben, können Sie wie folgt ausführen:
cntlm -H
Der Benutzername ist derselbe. Es fragt nach dem Passwort, gibt es, kopiert dann die PassNTLMv2, bearbeitet die cntlm.ini und führt dann einfach folgendes aus
cntlm -v