Skip to content

Normalize SMB3 negotiate capability advertisement#2188

Open
dem3nt0r wants to merge 2 commits into
fortra:masterfrom
dem3nt0r:fix/smb3-negotiate-contexts
Open

Normalize SMB3 negotiate capability advertisement#2188
dem3nt0r wants to merge 2 commits into
fortra:masterfrom
dem3nt0r:fix/smb3-negotiate-contexts

Conversation

@dem3nt0r
Copy link
Copy Markdown

Summary

This PR updates SMB3 negotiate context handling and capability advertisement behavior to better normalize SMB session negotiation.

Changes

  • Add/update SMB3 negotiate contexts during session negotiation
  • Normalize SMB3 capability advertisement behavior
  • Keep existing ClientGuid and SMB3 preauth integrity behavior unchanged
  • Intentionally preserve the existing SMB2EncryptionCapabilities behavior (self.EncryptionAlgorithmList = ['AES-CCM']) as a recognizable characteristic/IoC for defenders

Notes

Based on review feedback, the earlier ClientGuid and SMB3 preauth integrity randomization changes were reverted and intentionally left out of this PR, since those defaults can still serve as useful IoCs for defenders.

I also intentionally kept the existing SMB2EncryptionCapabilities / EncryptionAlgorithmList behavior unchanged for the same reason.

The remaining changes are intended to focus strictly on SMB negotiation behavior and protocol handling rather than detection evasion.

Also, thanks again for the excellent Impacket-IoCs project — it was genuinely very helpful while researching and understanding many of these SMB negotiation behaviors and implementation fingerprints.

Happy to contribute back to Impacket, even in a small way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant