Fixed issue with smb signing detection

This commit is contained in:
lgandx 2024-05-06 09:16:36 -03:00
parent bf25abfec8
commit 413bc8be31

View file

@ -106,7 +106,7 @@ def ParseNegotiateSMB2Ans(data):
def SMB2SigningMandatory(data): def SMB2SigningMandatory(data):
global SMB2signing global SMB2signing
if data[70:71] == b"\x03": if data[70:71] == "\x03":
SMB2signing = "True" SMB2signing = "True"
else: else:
SMB2signing = "False" SMB2signing = "False"
@ -123,7 +123,7 @@ def WorkstationFingerPrint(data):
b"\x06\x01" :"Windows 7/Server 2008R2", b"\x06\x01" :"Windows 7/Server 2008R2",
b"\x06\x02" :"Windows 8/Server 2012", b"\x06\x02" :"Windows 8/Server 2012",
b"\x06\x03" :"Windows 8.1/Server 2012R2", b"\x06\x03" :"Windows 8.1/Server 2012R2",
b"\x0A\x00" :"Windows 10/Server 2016/2019 (check build)", b"\x0A\x00" :"Windows 10/Server 2016/2022 (check build)",
}.get(data, 'Other than Microsoft') }.get(data, 'Other than Microsoft')
def GetOsBuildNumber(data): def GetOsBuildNumber(data):
@ -201,7 +201,7 @@ def IsDCVuln(t, host):
##################### #####################
def IsSigningEnabled(data): def IsSigningEnabled(data):
if data[39:40] == b"\x0f": if data[39:40] == "\x0f":
return 'True' return 'True'
else: else:
return 'False' return 'False'
@ -251,7 +251,6 @@ def DomainGrab(Host):
buffer0 = longueur(packet0)+packet0 buffer0 = longueur(packet0)+packet0
s.send(NetworkSendBufferPython2or3(buffer0)) s.send(NetworkSendBufferPython2or3(buffer0))
data = s.recv(2048) data = s.recv(2048)
s.close()
if data[8:10] == b'\x72\x00': if data[8:10] == b'\x72\x00':
return GetHostnameAndDomainName(data) return GetHostnameAndDomainName(data)
except IOError as e: except IOError as e:
@ -359,7 +358,7 @@ def ConnectAndChoseSMB(host):
if not data: if not data:
break break
except Exception: except Exception:
pass return False
else: else:
return False return False