How this skill is triggered — by the user, by Claude, or both
Slash command
/suricata-rules:writerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Signatures for Suricata are also referred to as rules. They are used to detect
Signatures for Suricata are also referred to as rules. They are used to detect specific patterns in network traffic and generate alerts when those patterns are found.
A typical signature rule looks like:
alert <proto> <src> <sport> -> <dst> <dport> ( msg:"..."; flow:...; <sticky buffer setting buffer to match on (like tls.sni)>; content:"..."; sid:1000001; rev:1;)
Key ideas:
proto is application layer (e.g., http, tls, smb) or is transport layer (e.g., tcp, udp). Always set application layer in second position of the signature when possible.sid is a unique rule id.rev is the rule revision.flow:established,to_server (or similar) to constrain direction/state.When writing signatures for Suricata, always check the result of the signatures
with suricata-language-server --batch-file <file> to check for syntax errors
and warnings.
List the available keywords with suricata-language-server --list-keywords. You can follow the links
to the documentation in the output to get more information about each keyword.
List the available application layer with suricata-language-server --list-app-layer-protos.
Set of rules when writing signature for Suricata:
suricata-language-server --batch-file <file>.written_by with the name of the author of the signature.## at the beginning of the line.threshold:type limit, track by_src, count 1, seconds 60; to limit to 5 alerts per minute per source IP when source IP is in the HOME_NET.written_by metadata field in the signature.app-layer-protocol keyword.Additional rules for specific types of signatures:
To install suricata-language-server, you can use pip in a virtual environment:
pip install suricata-language-server
If suricata binary is not available on the system uses --container option to run the language server in a container with Suricata installed:
suricata-language-server --container --batch-file <file>
You can ask to the user if a pcap file is available to test the signature on and then inject the path to the pcap file with the following comment (at beginning of the signature file):
## SLS pcap-file: <path to pcap file>
Then suricata-language-server will automatically test the signature on the pcap file and provide the result of the test in the output of the command.
npx claudepluginhub stamusnetworks/stamus-ai-tools --plugin suricata-rulesDeploys and configures Suricata in IPS mode with custom rules, Emerging Threats rulesets, and inline traffic inspection for real-time threat blocking.
Deploys and configures Suricata IDS/IPS with Emerging Threats rulesets, EVE JSON logging, and custom rules for real-time network traffic inspection and SIEM integration.
Deploys and configures Suricata IDS/IPS with Emerging Threats rules, EVE JSON logging, and custom rules for real-time network intrusion detection, threat monitoring, and SIEM integration on high-speed networks.