smb-v10-message-structure

Encode and decode SMB 1.0 (CIFS) wire messages with command structs and dispatchers.

158|7|Updated May 4, 2025
One-click install
npx skills add https://github.com/TheManticoreProject/Manticore --skill smb-v10-message-structure
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: smb-v10-message-structure
Source: https://github.com/TheManticoreProject/Manticore/tree/main/.claude/skills/smb-v10-message-structure
Command: npx skills add https://github.com/TheManticoreProject/Manticore --skill smb-v10-message-structure

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides a structured framework to implement and organize the SMB 1.0 (CIFS) wire-message code in Manticore, including command Request/Response structs, a command-casting dispatcher, AndX variants, and NT_TRANSACT payload builders and parsers.

Core Features & Use Cases

  • Command modeling for SMB_COM_* commands with Request/Response structs and a centralized dispatcher.
  • NT_TRANSACT subcommand support with subcommand payload builders/parsers and AndX chaining.
  • Lazy initialization & exact framing: Parameters/Data are lazily created and marshaled in little-endian format, matching SMB specs.

Quick Start

Instantiate the SMB v1.0 message-structure components and wire a sample SMB_COM command through both request and response dispatchers to validate marshal/unmarshal.

Frequently Asked Questions about smb-v10-message-structure

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I marshal and unmarshal SMB 1.0 CIFS wire messages?

SMB 1.0 CIFS wire messages are marshaled and unmarshaled using command Request/Response structs and a centralized command-casting dispatcher, ensuring exact little-endian framing for protocol compliance.

What is the best way to structure SMB command handling and dispatching?

SMB command handling is structured by modeling SMB_COM_* commands with dedicated Request/Response structs and a centralized dispatcher, utilizing a two-switch wiring pattern to route request and response paths.

How does AndX chaining work in SMB v1.0 message structures?

AndX chaining in SMB v1.0 is handled through structured Request/Response variants that link multiple commands sequentially, allowing the dispatcher to parse and build chained payloads within a single wire message.

How do I build and parse NT_TRANSACT subcommand payloads in CIFS?

NT_TRANSACT subcommand payloads in CIFS are built and parsed using dedicated builders and parsers that ensure lazy initialization of parameters and data, properly framing the subcommand within the SMB message.

Does the SMB v1.0 message structure framework support lazy initialization for parameters and data?

Yes, the SMB v1.0 message structure framework ensures lazy initialization of parameters and data, deferring their creation until needed to optimize marshaling and match exact SMB wire-format specifications.

Why are my SMB 1.0 wire messages failing to parse correctly?

SMB 1.0 wire messages fail to parse correctly if the little-endian marshaling or exact framing is mismatched; the framework's lazy initialization and two-switch dispatcher wiring ensure proper struct alignment.