Skip to content

smb

The smb identity: Server Message Block. Every field and what is required.

smb is the Server Message Block protocol (MS-SMB2). The target is host:port (default 445). The step sends and receives raw bytes as hex, and the session persists across steps, so a solution can stage an exchange and continue it.

Write it in English

A step reads as sentences, the same byte-session forms as tcp: send hex "<hex>" (or send hex of "<text>"), receive <n> bytes, receive until "<hex>", port <n>, timeout <n> seconds, close the connection, and expect ....

Fields

smb uses the byte-session fields from tcp:

fieldrequiredwhat it does
sendyesthe bytes to send, as hex or hex "text"; empty when a step only reads
recvhow many bytes to read at most
recv_untilstop reading once this hex marker appears
timeouthow long to wait, in seconds
closeend the session after this step
capturepull a value out of the received hex for later steps

Example

smb negotiate
  # send an SMB2 negotiate and look for the response
  send hex "fe534d4240...0000000000000000"
  recv 4096
  expect "fe534d42" in the response

Give exploit research a common language.

Bring a PoC, a writeup, or an AI-generated draft into an Exploitmatic solution: inspect it, validate it, and replay it against a target you own. The runtime and the corpus are open source.