mirror of
https://github.com/TalAloni/SMBLibrary.git
synced 2025-04-30 02:37:49 +02:00
NegotiateFlags values have been renamed
This commit is contained in:
parent
25b9ef4162
commit
ec4be00f90
9 changed files with 51 additions and 53 deletions
|
@ -51,7 +51,7 @@ namespace SMBLibrary.Authentication
|
||||||
WorkStation = AuthenticationMessageUtils.ReadUnicodeStringBufferPointer(buffer, 44);
|
WorkStation = AuthenticationMessageUtils.ReadUnicodeStringBufferPointer(buffer, 44);
|
||||||
EncryptedRandomSessionKey = AuthenticationMessageUtils.ReadBufferPointer(buffer, 52);
|
EncryptedRandomSessionKey = AuthenticationMessageUtils.ReadBufferPointer(buffer, 52);
|
||||||
NegotiateFlags = (NegotiateFlags)LittleEndianConverter.ToUInt32(buffer, 60);
|
NegotiateFlags = (NegotiateFlags)LittleEndianConverter.ToUInt32(buffer, 60);
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
Version = new Version(buffer, 64);
|
Version = new Version(buffer, 64);
|
||||||
}
|
}
|
||||||
|
@ -61,7 +61,7 @@ namespace SMBLibrary.Authentication
|
||||||
{
|
{
|
||||||
int fixedLength = 64;
|
int fixedLength = 64;
|
||||||
|
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
fixedLength += 8;
|
fixedLength += 8;
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,7 @@ namespace SMBLibrary.Authentication
|
||||||
ByteWriter.WriteAnsiString(buffer, 0, ValidSignature, 8);
|
ByteWriter.WriteAnsiString(buffer, 0, ValidSignature, 8);
|
||||||
LittleEndianWriter.WriteUInt32(buffer, 8, (uint)MessageType);
|
LittleEndianWriter.WriteUInt32(buffer, 8, (uint)MessageType);
|
||||||
LittleEndianWriter.WriteUInt32(buffer, 60, (uint)NegotiateFlags);
|
LittleEndianWriter.WriteUInt32(buffer, 60, (uint)NegotiateFlags);
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
Version.WriteBytes(buffer, 64);
|
Version.WriteBytes(buffer, 64);
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,7 +40,7 @@ namespace SMBLibrary.Authentication
|
||||||
ServerChallenge = ByteReader.ReadBytes(buffer, 24, 8);
|
ServerChallenge = ByteReader.ReadBytes(buffer, 24, 8);
|
||||||
// Reserved
|
// Reserved
|
||||||
TargetInfo = AuthenticationMessageUtils.ReadBufferPointer(buffer, 40);
|
TargetInfo = AuthenticationMessageUtils.ReadBufferPointer(buffer, 40);
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
Version = new Version(buffer, 48);
|
Version = new Version(buffer, 48);
|
||||||
}
|
}
|
||||||
|
@ -49,7 +49,7 @@ namespace SMBLibrary.Authentication
|
||||||
public byte[] GetBytes()
|
public byte[] GetBytes()
|
||||||
{
|
{
|
||||||
int fixedLength = 48;
|
int fixedLength = 48;
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
fixedLength += 8;
|
fixedLength += 8;
|
||||||
}
|
}
|
||||||
|
@ -60,7 +60,7 @@ namespace SMBLibrary.Authentication
|
||||||
LittleEndianWriter.WriteUInt32(buffer, 8, (uint)MessageType);
|
LittleEndianWriter.WriteUInt32(buffer, 8, (uint)MessageType);
|
||||||
LittleEndianWriter.WriteUInt32(buffer, 20, (uint)NegotiateFlags);
|
LittleEndianWriter.WriteUInt32(buffer, 20, (uint)NegotiateFlags);
|
||||||
ByteWriter.WriteBytes(buffer, 24, ServerChallenge);
|
ByteWriter.WriteBytes(buffer, 24, ServerChallenge);
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
Version.WriteBytes(buffer, 48);
|
Version.WriteBytes(buffer, 48);
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,45 +5,43 @@ namespace SMBLibrary.Authentication
|
||||||
[Flags]
|
[Flags]
|
||||||
public enum NegotiateFlags : uint
|
public enum NegotiateFlags : uint
|
||||||
{
|
{
|
||||||
NegotiateUnicode = 0x01, // NTLMSSP_NEGOTIATE_UNICODE
|
UnicodeEncoding = 0x00000001, // NTLMSSP_NEGOTIATE_UNICODE
|
||||||
NegotiateOEM = 0x02, // NTLM_NEGOTIATE_OEM
|
OEMEncoding = 0x00000002, // NTLM_NEGOTIATE_OEM
|
||||||
RequestTarget = 0x04, // NTLMSSP_REQUEST_TARGET
|
TargetNameSupplied = 0x00000004, // NTLMSSP_REQUEST_TARGET
|
||||||
NegotiateSign = 0x10, // NTLMSSP_NEGOTIATE_SIGN
|
Sign = 0x00000010, // NTLMSSP_NEGOTIATE_SIGN
|
||||||
NegotiateSeal = 0x20, // NTLMSSP_NEGOTIATE_SEAL
|
Seal = 0x00000020, // NTLMSSP_NEGOTIATE_SEAL
|
||||||
NegotiateDatagram = 0x40, // NTLMSSP_NEGOTIATE_DATAGRAM
|
Datagram = 0x00000040, // NTLMSSP_NEGOTIATE_DATAGRAM
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// NegotiateLanManagerKey and NegotiateExtendedSecurity are mutually exclusive
|
/// LanManagerKey and ExtendedSecurity are mutually exclusive
|
||||||
/// If both are set then NegotiateLanManagerKey must be ignored
|
/// If both are set then LanManagerKey must be ignored
|
||||||
/// </summary>
|
/// </summary>
|
||||||
NegotiateLanManagerKey = 0x80, // NTLMSSP_NEGOTIATE_LM_KEY
|
LanManagerKey = 0x00000080, // NTLMSSP_NEGOTIATE_LM_KEY
|
||||||
NegotiateNTLMKey = 0x200, // NTLMSSP_NEGOTIATE_NTLM
|
NTLMKey = 0x00000200, // NTLMSSP_NEGOTIATE_NTLM
|
||||||
//NegotiateNTOnly = 0x400, // Unused, must be clear
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// If set, the connection SHOULD be anonymous
|
/// If set, the connection SHOULD be anonymous
|
||||||
/// </summary>
|
/// </summary>
|
||||||
NegotiateAnonymous = 0x800,
|
Anonymous = 0x00000800,
|
||||||
|
|
||||||
NegotiateOEMDomainSupplied = 0x1000, // NTLMSSP_NEGOTIATE_OEM_DOMAIN_SUPPLIED
|
DomainNameSupplied = 0x00001000, // NTLMSSP_NEGOTIATE_OEM_DOMAIN_SUPPLIED
|
||||||
NegotiateOEMWorkstationSupplied = 0x2000, // NTLMSSP_NEGOTIATE_OEM_WORKSTATION_SUPPLIED
|
WorkstationNameSupplied = 0x00002000, // NTLMSSP_NEGOTIATE_OEM_WORKSTATION_SUPPLIED
|
||||||
NegotiateAlwaysSign = 0x8000, // NTLMSSP_NEGOTIATE_ALWAYS_SIGN
|
AlwaysSign = 0x00008000, // NTLMSSP_NEGOTIATE_ALWAYS_SIGN
|
||||||
NegotiateTargetTypeDomain = 0x10000, // NTLMSSP_TARGET_TYPE_DOMAIN
|
TargetTypeDomain = 0x00010000, // NTLMSSP_TARGET_TYPE_DOMAIN
|
||||||
NegotiateTargetTypeServer = 0x20000, // NTLMSSP_TARGET_TYPE_SERVER
|
TargetTypeServer = 0x00020000, // NTLMSSP_TARGET_TYPE_SERVER
|
||||||
NegotiateTargetTypeShare = 0x40000, // Unused, must be clear
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// NegotiateLanManagerKey and NegotiateExtendedSecurity are mutually exclusive
|
/// LanManagerKey and ExtendedSecurity are mutually exclusive
|
||||||
/// If both are set then NegotiateLanManagerKey must be ignored.
|
/// If both are set then LanManagerKey must be ignored.
|
||||||
/// NTLM v2 requires this flag to be set.
|
/// NTLM v2 requires this flag to be set.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
NegotiateExtendedSecurity = 0x80000, // NTLMSSP_NEGOTIATE_EXTENDED_SESSIONSECURITY
|
ExtendedSecurity = 0x00080000, // NTLMSSP_NEGOTIATE_EXTENDED_SESSIONSECURITY
|
||||||
NegotiateIdentify = 0x100000, // NTLMSSP_NEGOTIATE_IDENTIFY
|
Identify = 0x00100000, // NTLMSSP_NEGOTIATE_IDENTIFY
|
||||||
RequestNonNTSession = 0x400000, // NTLMSSP_REQUEST_NON_NT_SESSION_KEY
|
RequestLMSessionKey = 0x00400000, // NTLMSSP_REQUEST_NON_NT_SESSION_KEY
|
||||||
NegotiateTargetInfo = 0x800000, // NTLMSSP_NEGOTIATE_TARGET_INFO
|
TargetInfo = 0x00800000, // NTLMSSP_NEGOTIATE_TARGET_INFO
|
||||||
NegotiateVersion = 0x2000000, // NTLMSSP_NEGOTIATE_VERSION
|
Version = 0x02000000, // NTLMSSP_NEGOTIATE_VERSION
|
||||||
Negotiate128 = 0x20000000, // NTLMSSP_NEGOTIATE_128
|
Use128BitEncryption = 0x20000000, // NTLMSSP_NEGOTIATE_128
|
||||||
NegotiateKeyExchange = 0x40000000, // NTLMSSP_NEGOTIATE_KEY_EXCH
|
KeyExchange = 0x40000000, // NTLMSSP_NEGOTIATE_KEY_EXCH
|
||||||
Negotiate56 = 0x80000000, // NTLMSSP_NEGOTIATE_56
|
Use56BitEncryption = 0x80000000, // NTLMSSP_NEGOTIATE_56
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,7 @@ namespace SMBLibrary.Authentication
|
||||||
NegotiateFlags = (NegotiateFlags)LittleEndianConverter.ToUInt32(buffer, 12);
|
NegotiateFlags = (NegotiateFlags)LittleEndianConverter.ToUInt32(buffer, 12);
|
||||||
DomainName = AuthenticationMessageUtils.ReadAnsiStringBufferPointer(buffer, 16);
|
DomainName = AuthenticationMessageUtils.ReadAnsiStringBufferPointer(buffer, 16);
|
||||||
Workstation = AuthenticationMessageUtils.ReadAnsiStringBufferPointer(buffer, 24);
|
Workstation = AuthenticationMessageUtils.ReadAnsiStringBufferPointer(buffer, 24);
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
Version = new Version(buffer, 32);
|
Version = new Version(buffer, 32);
|
||||||
}
|
}
|
||||||
|
@ -47,7 +47,7 @@ namespace SMBLibrary.Authentication
|
||||||
public byte[] GetBytes()
|
public byte[] GetBytes()
|
||||||
{
|
{
|
||||||
int fixedLength = 32;
|
int fixedLength = 32;
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
fixedLength += 8;
|
fixedLength += 8;
|
||||||
}
|
}
|
||||||
|
@ -57,7 +57,7 @@ namespace SMBLibrary.Authentication
|
||||||
LittleEndianWriter.WriteUInt32(buffer, 8, (uint)MessageType);
|
LittleEndianWriter.WriteUInt32(buffer, 8, (uint)MessageType);
|
||||||
LittleEndianWriter.WriteUInt32(buffer, 12, (uint)NegotiateFlags);
|
LittleEndianWriter.WriteUInt32(buffer, 12, (uint)NegotiateFlags);
|
||||||
|
|
||||||
if ((NegotiateFlags & NegotiateFlags.NegotiateVersion) > 0)
|
if ((NegotiateFlags & NegotiateFlags.Version) > 0)
|
||||||
{
|
{
|
||||||
Version.WriteBytes(buffer, 32);
|
Version.WriteBytes(buffer, 32);
|
||||||
}
|
}
|
||||||
|
|
|
@ -123,14 +123,14 @@ namespace SMBLibrary.Server
|
||||||
byte[] serverChallenge = GenerateServerChallenge();
|
byte[] serverChallenge = GenerateServerChallenge();
|
||||||
|
|
||||||
ChallengeMessage message = new ChallengeMessage();
|
ChallengeMessage message = new ChallengeMessage();
|
||||||
message.NegotiateFlags = NegotiateFlags.NegotiateUnicode |
|
message.NegotiateFlags = NegotiateFlags.UnicodeEncoding |
|
||||||
NegotiateFlags.RequestTarget |
|
NegotiateFlags.TargetNameSupplied |
|
||||||
NegotiateFlags.NegotiateNTLMKey |
|
NegotiateFlags.NTLMKey |
|
||||||
NegotiateFlags.NegotiateExtendedSecurity |
|
NegotiateFlags.ExtendedSecurity |
|
||||||
NegotiateFlags.NegotiateTargetInfo |
|
NegotiateFlags.TargetInfo |
|
||||||
NegotiateFlags.NegotiateVersion |
|
NegotiateFlags.Version |
|
||||||
NegotiateFlags.Negotiate128 |
|
NegotiateFlags.Use128BitEncryption |
|
||||||
NegotiateFlags.Negotiate56;
|
NegotiateFlags.Use56BitEncryption;
|
||||||
message.TargetName = Environment.MachineName;
|
message.TargetName = Environment.MachineName;
|
||||||
message.ServerChallenge = serverChallenge;
|
message.ServerChallenge = serverChallenge;
|
||||||
message.TargetInfo = AVPairUtils.GetAVPairSequence(Environment.MachineName, Environment.MachineName);
|
message.TargetInfo = AVPairUtils.GetAVPairSequence(Environment.MachineName, Environment.MachineName);
|
||||||
|
@ -140,13 +140,13 @@ namespace SMBLibrary.Server
|
||||||
|
|
||||||
public bool Authenticate(AuthenticateMessage message)
|
public bool Authenticate(AuthenticateMessage message)
|
||||||
{
|
{
|
||||||
if ((message.NegotiateFlags & NegotiateFlags.NegotiateAnonymous) > 0)
|
if ((message.NegotiateFlags & NegotiateFlags.Anonymous) > 0)
|
||||||
{
|
{
|
||||||
return this.EnableGuestLogin;
|
return this.EnableGuestLogin;
|
||||||
}
|
}
|
||||||
|
|
||||||
User user;
|
User user;
|
||||||
if ((message.NegotiateFlags & NegotiateFlags.NegotiateExtendedSecurity) > 0)
|
if ((message.NegotiateFlags & NegotiateFlags.ExtendedSecurity) > 0)
|
||||||
{
|
{
|
||||||
user = AuthenticateV1Extended(message.UserName, m_serverChallenge, message.LmChallengeResponse, message.NtChallengeResponse);
|
user = AuthenticateV1Extended(message.UserName, m_serverChallenge, message.LmChallengeResponse, message.NtChallengeResponse);
|
||||||
if (user == null)
|
if (user == null)
|
||||||
|
|
|
@ -72,7 +72,7 @@ namespace SMBLibrary.Server.SMB1
|
||||||
private static NegotiateMessage CreateNegotiateMessage()
|
private static NegotiateMessage CreateNegotiateMessage()
|
||||||
{
|
{
|
||||||
NegotiateMessage negotiateMessage = new NegotiateMessage();
|
NegotiateMessage negotiateMessage = new NegotiateMessage();
|
||||||
negotiateMessage.NegotiateFlags = NegotiateFlags.NegotiateUnicode | NegotiateFlags.NegotiateOEM | NegotiateFlags.NegotiateSign | NegotiateFlags.NegotiateLanManagerKey | NegotiateFlags.NegotiateNTLMKey | NegotiateFlags.NegotiateAlwaysSign | NegotiateFlags.NegotiateVersion | NegotiateFlags.Negotiate128 | NegotiateFlags.Negotiate56;
|
negotiateMessage.NegotiateFlags = NegotiateFlags.UnicodeEncoding | NegotiateFlags.OEMEncoding | NegotiateFlags.Sign | NegotiateFlags.LanManagerKey | NegotiateFlags.NTLMKey | NegotiateFlags.AlwaysSign | NegotiateFlags.Version | NegotiateFlags.Use128BitEncryption | NegotiateFlags.Use56BitEncryption;
|
||||||
negotiateMessage.Version = Authentication.Version.Server2003;
|
negotiateMessage.Version = Authentication.Version.Server2003;
|
||||||
return negotiateMessage;
|
return negotiateMessage;
|
||||||
}
|
}
|
||||||
|
|
|
@ -174,7 +174,7 @@ namespace SMBLibrary.Server.SMB1
|
||||||
private static AuthenticateMessage CreateAuthenticateMessage(string accountNameToAuth, byte[] lmResponse, byte[] ntlmResponse)
|
private static AuthenticateMessage CreateAuthenticateMessage(string accountNameToAuth, byte[] lmResponse, byte[] ntlmResponse)
|
||||||
{
|
{
|
||||||
AuthenticateMessage authenticateMessage = new AuthenticateMessage();
|
AuthenticateMessage authenticateMessage = new AuthenticateMessage();
|
||||||
authenticateMessage.NegotiateFlags = NegotiateFlags.NegotiateUnicode | NegotiateFlags.NegotiateOEM | NegotiateFlags.NegotiateSign | NegotiateFlags.NegotiateLanManagerKey | NegotiateFlags.NegotiateNTLMKey | NegotiateFlags.NegotiateAlwaysSign | NegotiateFlags.NegotiateVersion | NegotiateFlags.Negotiate128 | NegotiateFlags.Negotiate56;
|
authenticateMessage.NegotiateFlags = NegotiateFlags.UnicodeEncoding | NegotiateFlags.OEMEncoding | NegotiateFlags.Sign | NegotiateFlags.LanManagerKey | NegotiateFlags.NTLMKey | NegotiateFlags.AlwaysSign | NegotiateFlags.Version | NegotiateFlags.Use128BitEncryption | NegotiateFlags.Use56BitEncryption;
|
||||||
authenticateMessage.UserName = accountNameToAuth;
|
authenticateMessage.UserName = accountNameToAuth;
|
||||||
authenticateMessage.LmChallengeResponse = lmResponse;
|
authenticateMessage.LmChallengeResponse = lmResponse;
|
||||||
authenticateMessage.NtChallengeResponse = ntlmResponse;
|
authenticateMessage.NtChallengeResponse = ntlmResponse;
|
||||||
|
|
|
@ -98,7 +98,7 @@ namespace SMBLibrary
|
||||||
ChallengeMessage message = new ChallengeMessage();
|
ChallengeMessage message = new ChallengeMessage();
|
||||||
message.ServerChallenge = serverChallenge;
|
message.ServerChallenge = serverChallenge;
|
||||||
message.Version = new Authentication.Version(6, 0, 6000, 15);
|
message.Version = new Authentication.Version(6, 0, 6000, 15);
|
||||||
message.NegotiateFlags = NegotiateFlags.NegotiateUnicode | NegotiateFlags.NegotiateOEM | NegotiateFlags.NegotiateSign | NegotiateFlags.NegotiateSeal | NegotiateFlags.NegotiateNTLMKey | NegotiateFlags.NegotiateAlwaysSign | NegotiateFlags.NegotiateTargetTypeServer | NegotiateFlags.NegotiateExtendedSecurity | NegotiateFlags.NegotiateTargetInfo | NegotiateFlags.NegotiateVersion | NegotiateFlags.Negotiate128 | NegotiateFlags.NegotiateKeyExchange | NegotiateFlags.Negotiate56;
|
message.NegotiateFlags = NegotiateFlags.UnicodeEncoding | NegotiateFlags.OEMEncoding | NegotiateFlags.Sign | NegotiateFlags.Seal | NegotiateFlags.NTLMKey | NegotiateFlags.AlwaysSign | NegotiateFlags.TargetTypeServer | NegotiateFlags.ExtendedSecurity | NegotiateFlags.TargetInfo | NegotiateFlags.Version | NegotiateFlags.Use128BitEncryption | NegotiateFlags.KeyExchange | NegotiateFlags.Use56BitEncryption;
|
||||||
message.TargetName = "Server";
|
message.TargetName = "Server";
|
||||||
byte[] serverAVPair = AVPairUtils.GetAVPairSequence("Domain", "Server");
|
byte[] serverAVPair = AVPairUtils.GetAVPairSequence("Domain", "Server");
|
||||||
message.TargetInfo = serverAVPair;
|
message.TargetInfo = serverAVPair;
|
||||||
|
@ -139,7 +139,7 @@ namespace SMBLibrary
|
||||||
AuthenticateMessage message = new AuthenticateMessage();
|
AuthenticateMessage message = new AuthenticateMessage();
|
||||||
message.EncryptedRandomSessionKey = sessionKey;
|
message.EncryptedRandomSessionKey = sessionKey;
|
||||||
message.Version = new Authentication.Version(5, 1, 2600, Authentication.Version.NTLMSSP_REVISION_W2K3);
|
message.Version = new Authentication.Version(5, 1, 2600, Authentication.Version.NTLMSSP_REVISION_W2K3);
|
||||||
message.NegotiateFlags = NegotiateFlags.NegotiateUnicode | NegotiateFlags.RequestTarget | NegotiateFlags.NegotiateSign | NegotiateFlags.NegotiateSeal | NegotiateFlags.NegotiateNTLMKey | NegotiateFlags.NegotiateAlwaysSign | NegotiateFlags.NegotiateExtendedSecurity | NegotiateFlags.NegotiateTargetInfo | NegotiateFlags.NegotiateVersion | NegotiateFlags.Negotiate128 | NegotiateFlags.NegotiateKeyExchange | NegotiateFlags.Negotiate56;
|
message.NegotiateFlags = NegotiateFlags.UnicodeEncoding | NegotiateFlags.TargetNameSupplied | NegotiateFlags.Sign | NegotiateFlags.Seal | NegotiateFlags.NTLMKey | NegotiateFlags.AlwaysSign | NegotiateFlags.ExtendedSecurity | NegotiateFlags.TargetInfo | NegotiateFlags.Version | NegotiateFlags.Use128BitEncryption | NegotiateFlags.KeyExchange | NegotiateFlags.Use56BitEncryption;
|
||||||
message.DomainName = "Domain";
|
message.DomainName = "Domain";
|
||||||
message.WorkStation = "COMPUTER";
|
message.WorkStation = "COMPUTER";
|
||||||
message.UserName = "User";
|
message.UserName = "User";
|
||||||
|
|
|
@ -45,7 +45,7 @@ namespace SMBLibrary.Server.Win32
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool Authenticate(AuthenticateMessage message)
|
public bool Authenticate(AuthenticateMessage message)
|
||||||
{
|
{
|
||||||
if ((message.NegotiateFlags & NegotiateFlags.NegotiateAnonymous) > 0)
|
if ((message.NegotiateFlags & NegotiateFlags.Anonymous) > 0)
|
||||||
{
|
{
|
||||||
return this.EnableGuestLogin;
|
return this.EnableGuestLogin;
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ namespace SMBLibrary.Server.Win32
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((message.NegotiateFlags & NegotiateFlags.NegotiateExtendedSecurity) > 0)
|
if ((message.NegotiateFlags & NegotiateFlags.ExtendedSecurity) > 0)
|
||||||
{
|
{
|
||||||
// NTLM v1 extended security:
|
// NTLM v1 extended security:
|
||||||
byte[] clientChallenge = ByteReader.ReadBytes(message.LmChallengeResponse, 0, 8);
|
byte[] clientChallenge = ByteReader.ReadBytes(message.LmChallengeResponse, 0, 8);
|
||||||
|
|
Loading…
Add table
Reference in a new issue