Go-based security techniques from "Black Hat Go" extended with macOS, Cloud, Mobile, IoT, Supply Chain, API, Web3, AI/ML, Red Team, ATT&CK, and LLM chapters. 186 techniques, 36 tools, 33 defenses across 37 chapters. Includes adversarial bisimulation games with Ungar (order-dependent) and join-semilattice structures. AAIF-compatible multiplayer agent games for human-agent security exercises.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
A direct command skips the review prompt. Inspect the source before running it.
Go-based security techniques from "Black Hat Go" extended with macOS, Cloud, Mobile, IoT, Supply Chain, API, Web3, AI/ML, Red Team, ATT&CK, and LLM chapters. 186 techniques, 36 tools, 33 defenses across 37 chapters. Includes adversarial bisimulation games with Ungar (order-dependent) and join-semilattice structures. AAIF-compatible multiplayer agent games for human-agent security exercises.
version
1.0.0
BlackHat Go Skill: Security Techniques Knowledge Base
Status: โ Production Ready Source: "Black Hat Go" by Steele, Patten, Kottmann (No Starch Press) Extended: Chapters 15-37 (macOS, Cloud, Mobile, IoT, SupplyChain, API, Web3, AI, RedTeam, ATT&CK, LLM) AAIF Integration: MCP-native, AGENTS.md compliant, goose-compatible
Overview
Structured knowledge base of offensive security techniques implemented in Go:
OWASP Top 10 LLM 2025, RAG Poisoning, Prompt Leakage
NEW: Adversarial Bisimulation Games
The knowledge base includes three game types from gayzip.gay:
Join-Semilattice for Security States
The join-semilattice enables Ungar Games by providing:
Partial order on attack/defense states (more compromised > less compromised)
Least upper bounds (joins) for combining observations
Prerequisite chains as lattice paths (order matters!)
// SecurityState represents a point in the attack/defense latticetype SecurityState struct {
TechniquesExecuted []string// Attack surface
DefensesActive []string// Protection layer
RiskLevel int// Cumulative risk (0-10)
Compromised bool// System compromised?
}
// Join computes least upper bound
joined := lattice.Join(state1, state2)
// - Techniques: UNION (more attacks)// - Defenses: INTERSECTION (only surviving defenses)// - Risk: MAX
Ungar Game (Order Matters)
In Ungar Games, attack chains must respect prerequisites:
game := NewUngarGame(kb)
// WRONG ORDER - will fail!
game.AttackerMove("tcp-proxy") // Error: requires tcp-port-scan first!// CORRECT ORDER (Ungar constraint satisfied)
game.AttackerMove("go-concurrency") // No prereqs
game.AttackerMove("tcp-port-scan") // Requires go-concurrency โ
game.AttackerMove("tcp-proxy") // Requires tcp-port-scan โ
Bisimulation Game (Order Agnostic)
Two security states are bisimilar if the Attacker cannot distinguish them:
bisim := NewBisimulationGame(kb, state1, state2)
if bisim.AreBisimilar() {
// Defender wins: states are observationally equivalent// For every attack in state1, Defender can match in state2
}
This skill includes patterns for effective participation in AAIF and similar open source governance:
1. MCP Technical Steering Committee (TSC)
Key responsibilities:
Protocol specification evolution
Security model review
Interoperability testing
Success patterns:
# AGENTS.md for MCP TSC Participation## Context
You are participating in the MCP Technical Steering Committee.
## Decision Framework1.**Backward Compatibility**: Never break existing MCP servers
2.**Security First**: All changes reviewed for attack surface
3.**Minimal Specification**: Only specify what's necessary
4.**Reference Implementation**: Changes must have working code
## Voting Protocol- Lazy consensus for minor changes
- 2/3 majority for breaking changes
- Binding votes from TSC members only
## Communication- Use GitHub Issues for proposals
- RFC process for major changes
- Weekly sync calls (recorded)
2. goose Maintainer Best Practices
Agent framework governance:
# AGENTS.md for goose Contribution## Architecture Decisions- Local-first: Never require cloud by default
- MCP-native: All tools exposed via MCP
- Extensible: Plugin architecture for custom tools
## Review Checklist
โก Does this work offline?
โก Is the MCP interface clean?
โก Are there integration tests?
โก Is the documentation updated?
## Release Process1. Feature freeze (2 weeks before)
2. RC testing with AAIF members
3. Changelog review
4. Tag and publish
3. Cross-Foundation Coordination
Working across AAIF, LF AI & Data, CNCF:
# Multi-Foundation Participation## Overlapping Interests- AAIF: Agentic AI protocols (MCP, AGENTS.md)
- LF AI & Data: ML infrastructure (PyTorch, ONNX)
- CNCF: Cloud native (Kubernetes, envoy)
## Coordination Patterns1.**Joint Working Groups**: Propose cross-foundation WGs
2.**Specification Alignment**: Ensure MCP works with CNCF networking
3.**Shared Governance**: Learn from CNCF's graduated project model
## Committee Meeting Preparation- Read agenda 24h before
- Prepare 1-2 specific proposals
- Identify blocking issues early
- Follow up in writing within 48h
Multiplayer Security Exercise Examples
Example 1: Browser-Based CTF with Human + Agent Teams
Setup: CatColab diagram with attack/defense morphisms
// packages/catlog/src/stdlib/analyses/bisimulation.rs/// Check if attacker can reach compromised state from initial statepubfnattack_reachability(
model: &DiscreteDblModel,
initial: &SecurityState,
target: &SecurityState
) ->bool {
// Use existing reachability infrastructureletdata = ReachabilityProblemData {
tokens: state_to_tokens(initial),
forbidden: state_to_tokens(target),
};
!subreachability(model.into_modal(), data)
}
/// Check if two security states are bisimilarpubfncheck_bisimilar(
model: &DiscreteDblModel,
s1: &SecurityState,
s2: &SecurityState
) ->bool {
// For every attack from s1, check s2 can matchletattacks_from_s1 = get_attacks(model, s1);
letattacks_from_s2 = get_attacks(model, s2);
attacks_from_s1.iter().all(|a1| {
attacks_from_s2.iter().any(|a2| {
attack_equivalent(a1, a2)
})
}) && attacks_from_s2.iter().all(|a2| {
attacks_from_s1.iter().any(|a1| {
attack_equivalent(a1, a2)
})
})
}
AAIF Governance Patterns
Proposal Template for AAIF TSC
# RFC: Bisimulation Game Protocol Extension## Summary
Add adversarial game semantics to MCP for security analysis.
## Motivation
Security testing requires ordered attack chains (Ungar games) and
equivalence checking (bisimulation games). Current MCP lacks game-theoretic
primitives.
## Proposal### New MCP Message Types```json
{
"type": "game/move",
"role": "attacker" | "defender" | "arbiter",
"action": {
"technique": "tcp-port-scan",
"prerequisites": ["go-concurrency"]
},
"trit": -1 | 0 | 1,
"state_hash": "abc123"
}
GF(3) Conservation Invariant
Every game round MUST satisfy:
sum(moves.map(m => m.trit)) โก 0 (mod 3)
Backward Compatibility
Fully backward compatible - new message types are optional.
Security Considerations
Attack chains validated against prerequisite graph
GF(3) conservation prevents game state tampering
Arbiter role required for state transitions
Implementation
Reference implementation in goose: goose-bisim-game
### Committee Meeting Participation Checklist
```markdown
## Pre-Meeting (24h before)
โก Review agenda and attached materials
โก Identify items requiring your input
โก Prepare 1-2 specific proposals or questions
โก Check for blocking issues needing resolution
## During Meeting
โก Arrive 5 minutes early for tech check
โก Keep comments focused and time-boxed
โก Use "+1" for agreement, don't repeat points
โก Take notes on action items assigned to you
## Post-Meeting (within 48h)
โก Review meeting notes/recording
โก Complete assigned action items
โก Follow up on any blocking issues in writing
โก Update relevant GitHub issues/PRs
File Locations
music-topos/blackhat_knowledge.go # Main knowledge base (3200+ lines)
music-topos/blackhat_knowledge_test.go # 79 tests
music-topos/bisimulation_adversarial.go # Ungar/Bisim games (600+ lines)
music-topos/bisimulation_adversarial_test.go # 24 tests
plurigrid/asi/skills/blackhat-go/SKILL.md # This skill (AAIF-enhanced)
Related AAIF Projects
Project
URL
Integration
MCP
github.com/modelcontextprotocol
Technique exposure
goose
block.github.io/goose
Agent execution
AGENTS.md
agents.md
Context specification
CatColab
catcolab.io
Diagram collaboration
MCP Dev Summit 2026
Next Event: New York City, April 2-3, 2026 CFP Open: Submit proposals for security game presentations URL: events.linuxfoundation.org/mcp-dev-summit-north-america/
"For AI agents to reach their full potential, developers and enterprises need trustworthy infrastructure and accessible tools to build on." โ Nick Cooper, OpenAI