Erkennen, ob ein Proxy HTTP oder SOCKS ist

Erkennen, ob ein Proxy HTTP oder SOCKS ist

Durch langes Suchen im Internet habe ich herausgefunden, dass SOCKS ein Handshake-Protokoll verwendet, um die Proxy-Software über die Verbindung zu informieren, die der Client herzustellen versucht, und dann so transparent wie möglich handelt, während ein HTTP-Proxy Header interpretieren und neu schreiben kann. Und wir können beides gleichermaßen verwenden.

Ich möchte wissen, wie wir herausfinden können, ob der Proxy HTTP, SOCKS4, SOCKS4a oder SOCKS5 ist. Gibt es eine Möglichkeit, das herauszufinden? Und ich vermute, dass wir es nicht anhand der Portnummer unterscheiden können, da für jeden Typ viele Portnummern verfügbar sind. Bitte helfen Sie mir, den Proxy anhand von HTTP oder SOCKS zu unterscheiden.

Antwort1

Probieren Sie dieses kleine Python-Skript aus:

#!/usr/bin/python

import struct
import socket
import sys


try:
        server = sys.argv[1]
        port = sys.argv[2]
except:
        print "Usage: server port"

try:
        sen = struct.pack('BBB', 0x05, 0x01, 0x00)
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.connect(( server , int( port )  ))
        s.sendall(sen)
        data = s.recv(2)
        s.close()
        version, auth = struct.unpack('BB', data)
        print 'server : port  is  ', server, ':', port, '; varsion: ', version
except Exception as e:
        print e

Antwort2

Sie können versuchen, mit dem Tool „nmap“ die Version des Dienstes auf diesem Port zu ermitteln.

Zum Beispiel:

nmap -sV -p{port} {server}

Im folgenden Beispiel können Sie sehen, dass es sich um einen HTTP-Proxy (im Gegensatz zu SOCKS-Proxy) handelt:

my-desktop ~ # nmap -sV -p8080 192.168.3.40

Starting Nmap 6.40 ( http://nmap.org ) at 2016-02-23 10:46 CST
Nmap scan report for 192.168.3.40
Host is up (0.00036s latency).
PORT     STATE SERVICE    VERSION
8080/tcp open  http-proxy Squid http proxy 3.3.8

Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 7.45 seconds

https://nmap.org/book/man-version-detection.html

verwandte Informationen