mirror of
https://github.com/TalAloni/SMBLibrary.git
synced 2025-08-15 03:33:47 +02:00
Set NTLMSSP_NEGOTIATE_EXTENDED_SESSIONSECURITY if applicable and improve code readability
This commit is contained in:
parent
0ee31e432b
commit
29828befb4
2 changed files with 25 additions and 5 deletions
|
@ -72,7 +72,15 @@ namespace SMBLibrary.Server.SMB1
|
||||||
private static NegotiateMessage CreateNegotiateMessage()
|
private static NegotiateMessage CreateNegotiateMessage()
|
||||||
{
|
{
|
||||||
NegotiateMessage negotiateMessage = new NegotiateMessage();
|
NegotiateMessage negotiateMessage = new NegotiateMessage();
|
||||||
negotiateMessage.NegotiateFlags = NegotiateFlags.UnicodeEncoding | NegotiateFlags.OEMEncoding | NegotiateFlags.Sign | NegotiateFlags.LanManagerKey | NegotiateFlags.NTLMKey | NegotiateFlags.AlwaysSign | NegotiateFlags.Version | NegotiateFlags.Use128BitEncryption | NegotiateFlags.Use56BitEncryption;
|
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;
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,13 +171,25 @@ namespace SMBLibrary.Server.SMB1
|
||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static AuthenticateMessage CreateAuthenticateMessage(string accountNameToAuth, byte[] lmResponse, byte[] ntlmResponse)
|
private static AuthenticateMessage CreateAuthenticateMessage(string accountNameToAuth, byte[] lmChallengeResponse, byte[] ntChallengeResponse)
|
||||||
{
|
{
|
||||||
AuthenticateMessage authenticateMessage = new AuthenticateMessage();
|
AuthenticateMessage authenticateMessage = new AuthenticateMessage();
|
||||||
authenticateMessage.NegotiateFlags = NegotiateFlags.UnicodeEncoding | NegotiateFlags.OEMEncoding | NegotiateFlags.Sign | NegotiateFlags.LanManagerKey | NegotiateFlags.NTLMKey | NegotiateFlags.AlwaysSign | NegotiateFlags.Version | NegotiateFlags.Use128BitEncryption | NegotiateFlags.Use56BitEncryption;
|
authenticateMessage.NegotiateFlags = NegotiateFlags.UnicodeEncoding |
|
||||||
|
NegotiateFlags.OEMEncoding |
|
||||||
|
NegotiateFlags.Sign |
|
||||||
|
NegotiateFlags.LanManagerKey |
|
||||||
|
NegotiateFlags.NTLMKey |
|
||||||
|
NegotiateFlags.AlwaysSign |
|
||||||
|
NegotiateFlags.Version |
|
||||||
|
NegotiateFlags.Use128BitEncryption |
|
||||||
|
NegotiateFlags.Use56BitEncryption;
|
||||||
|
if (ntChallengeResponse.Length >= 48)
|
||||||
|
{
|
||||||
|
authenticateMessage.NegotiateFlags |= NegotiateFlags.ExtendedSecurity;
|
||||||
|
}
|
||||||
authenticateMessage.UserName = accountNameToAuth;
|
authenticateMessage.UserName = accountNameToAuth;
|
||||||
authenticateMessage.LmChallengeResponse = lmResponse;
|
authenticateMessage.LmChallengeResponse = lmChallengeResponse;
|
||||||
authenticateMessage.NtChallengeResponse = ntlmResponse;
|
authenticateMessage.NtChallengeResponse = ntChallengeResponse;
|
||||||
authenticateMessage.Version = Authentication.Version.Server2003;
|
authenticateMessage.Version = Authentication.Version.Server2003;
|
||||||
return authenticateMessage;
|
return authenticateMessage;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue