CtrlK
BlogDocsLog inGet started
Tessl Logo

ics-bacnet

BACnet/IP attack — UDP/47808 discovery via Who-Is broadcast, ReadProperty / WriteProperty without auth, BBMD abuse for remote reach, vendor-specific I-Am responses, COV (Change Of Value) subscription flood, Building Automation HMI pivot.

60

Quality

71%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Critical

Do not install without reviewing

Fix and improve this skill with Tessl

tessl review fix ./packages/decepticon/decepticon/skills/standard/exploit/ics-ot/bacnet/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is actionable and concise with concrete commands across the attack chain, but destructive write operations proceed without validation/verification feedback loops, which limits workflow clarity.

Suggestions

Add explicit validation steps after destructive writes (e.g. re-read the present-value with bacrp to confirm the write took effect before proceeding).

Turn the BBMD abuse section from prose into an executable command sequence matching the style of the other write-attack examples.

DimensionReasoningScore

Conciseness

Mostly lean operational prose with dense, commented command examples; a few explanatory passages (vendor lists, the pivot section) could be tightened but no padded pedagogy.

4 / 5

Actionability

Mostly executable, copy-paste-ready commands (nmap, bacwi, bacrp, bacwp, bacscov, bacpypes snippet) with specific arguments; the BBMD section stays descriptive without a concrete command, a minor gap.

4 / 5

Workflow Clarity

A clear Discover→Read→Write→Pivot progression exists, but destructive physical operations (overriding outputs, setpoint writes) lack explicit validation/verification checkpoints, capping this at 3.

3 / 5

Progressive Disclosure

Well-organized into clear single-level sections with no nested references; over 50 lines with some inlineable detail (vendor specifics, BBMD) but overall good structure and easy navigation.

4 / 5

Total

15

/

20

Passed

Description

75%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is highly specific and distinctive, enumerating concrete BACnet attack primitives. Its main weakness is the absence of an explicit 'when to use' trigger clause, which caps completeness.

Suggestions

Append a 'Use when ...' clause naming natural trigger phrases (e.g. 'Use when attacking BACnet/IP building automation, HVAC, or 47808/UDP devices').

Add a couple of broader synonyms a non-specialist might say (e.g. 'building automation', 'HVAC controllers') alongside the protocol jargon.

DimensionReasoningScore

Specificity

Lists multiple concrete attack actions — 'UDP/47808 discovery via Who-Is broadcast', 'ReadProperty / WriteProperty without auth', 'BBMD abuse', 'COV subscription flood', 'HMI pivot' — with comprehensive coverage of the skill's capabilities.

5 / 5

Completeness

Clearly states 'what' the skill does, but there is no 'Use when...' or equivalent explicit trigger guidance, which caps completeness at 3 per the rubric.

3 / 5

Trigger Term Quality

Strong domain keyword coverage (BACnet/IP, Who-Is, BBMD, COV, Building Automation, HMI, 47808) that a practitioner would naturally say, but leans technical and omits a few broader synonyms/file extensions.

4 / 5

Distinctiveness Conflict Risk

Occupies a clear, narrow niche (BACnet/IP building automation attacks) with distinct triggers and minimal overlap risk against other skills.

5 / 5

Total

17

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
PurpleAILAB/Decepticon
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.