[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71DTYERW6P6DHK9YVBWW6AC":3,"skill-same:01M71DTYERW6P6DHK9YVBWW6AC":63},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":31,"linkOnly":32,"markdownContent":33,"markdownBody":34,"frontMatter":35,"refName":36,"commitSha":37,"skillDirectory":38,"forksCount":14,"repositoryHtmlUrl":39,"repositoryHomepageUrl":6,"ownerHtmlUrl":40,"ownerBlogUrl":6,"ownerDescription":41,"updatedAt":42,"install":43,"resources":56},"01M71DTYERW6P6DHK9YVBWW6AC","intel-analysis-iam",null,"- [STIX 2.1 Campaign Object](https:\u002F\u002Fdocs.oasis-open.","DCx7C5\u002Fai-marketplace","DCx7C5","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F42419559?v=4","01M71C01G2AZV3NTNGWAWSHJPP","DC","01M71C01GQW6G50S2BYMS7PP3E",0,"MIT","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fintel-analysis-iam\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30],"iam","analysis","intel","intel analysis iam","docs","cybersecurity","https","stix","oasis","open","campaign","object","2026-11-10 10:12:30",false,"---\nname: intel-analysis-iam\ndescription: \"- [STIX 2.1 Campaign Object](https:\u002F\u002Fdocs.oasis-open.\"\ndomain: cybersecurity\n---\n\n# Implementing Diamond Model Analysis\n\n## Overview\n\nThe Diamond Model of Intrusion Analysis provides a structured framework for analyzing cyber intrusions by examining four core features: Adversary, Capability, Infrastructure, and Victim. This skill covers implementing the Diamond Model programmatically to classify and correlate intrusion events, build activity threads linking related events, create activity-attack graphs, and generate pivot-ready intelligence from intrusion data.\n\n## When to Use\n\n- When deploying or configuring implementing diamond model analysis capabilities in your environment\n- When establishing security controls aligned to compliance requirements\n- When building or improving security architecture for this domain\n- When conducting security assessments that require this implementation\n\n## Prerequisites\n\n- Python 3.9+ with `networkx`, `stix2`, `graphviz` libraries\n- Understanding of the Diamond Model core and meta-features\n- Access to threat intelligence data (MISP\u002FOpenCTI events)\n- Familiarity with MITRE ATT&CK for capability mapping\n\n## Key Concepts\n\n### Diamond Model Core Features\n- **Adversary**: The threat actor or operator conducting the intrusion\n- **Capability**: The tools, techniques, and malware used (maps to ATT&CK)\n- **Infrastructure**: C2 servers, domains, email addresses, hosting providers\n- **Victim**: Target organization, system, person, or data asset\n\n### Meta-Features\n- **Timestamp**: When the event occurred\n- **Phase**: Kill chain stage (recon, delivery, exploitation, etc.)\n- **Result**: Success, failure, or unknown\n- **Direction**: Adversary-to-infrastructure, infrastructure-to-victim, etc.\n- **Methodology**: Social engineering, technical exploit, insider threat\n- **Resources**: Financial, human, technical resources required\n\n### Activity Threads and Groups\n- **Activity Thread**: Sequence of Diamond events from a single adversary operation\n- **Activity Group**: Cluster of threads attributed to the same adversary\n\n## Workflow\n\n### Step 1: Define Diamond Event Data Structure\n\n```python\nfrom dataclasses import dataclass, field\nfrom datetime import datetime\nfrom typing import Optional\nimport json\nimport uuid\n\n@dataclass\nclass DiamondEvent:\n    adversary: str = \"\"\n    capability: str = \"\"\n    infrastructure: str = \"\"\n    victim: str = \"\"\n    timestamp: str = \"\"\n    phase: str = \"\"\n    result: str = \"\"\n    direction: str = \"\"\n    methodology: str = \"\"\n    confidence: int = 0\n    notes: str = \"\"\n    event_id: str = field(default_factory=lambda: str(uuid.uuid4())[:8])\n    mitre_techniques: list = field(default_factory=list)\n    iocs: list = field(default_factory=list)\n\n    def to_dict(self):\n        return {\n            \"event_id\": self.event_id,\n            \"adversary\": self.adversary,\n            \"capability\": self.capability,\n            \"infrastructure\": self.infrastructure,\n            \"victim\": self.victim,\n            \"timestamp\": self.timestamp,\n            \"phase\": self.phase,\n            \"result\": self.result,\n            \"direction\": self.direction,\n            \"methodology\": self.methodology,\n            \"confidence\": self.confidence,\n            \"mitre_techniques\": self.mitre_techniques,\n            \"iocs\": self.iocs,\n            \"notes\": self.notes,\n        }\n```\n\n### Step 2: Build Activity Thread from Events\n\n```python\nimport networkx as nx\n\nclass DiamondAnalysis:\n    def __init__(self):\n        self.events = []\n        self.graph = nx.DiGraph()\n\n    def add_event(self, event: DiamondEvent):\n        self.events.append(event)\n        self.graph.add_node(event.event_id, **event.to_dict())\n\n    def build_activity_thread(self):\n        \"\"\"Link events chronologically into activity threads.\"\"\"\n        sorted_events = sorted(self.events, key=lambda e: e.timestamp)\n        for i in range(len(sorted_events) - 1):\n            self.graph.add_edge(\n                sorted_events[i].event_id,\n                sorted_events[i + 1].event_id,\n                relationship=\"followed_by\",\n            )\n\n    def find_pivots(self):\n        \"\"\"Find pivot points where events share infrastructure or capabilities.\"\"\"\n        pivots = {\"infrastructure\": {}, \"capability\": {}, \"adversary\": {}}\n\n        for event in self.events:\n            if event.infrastructure:\n                pivots[\"infrastructure\"].setdefault(event.infrastructure, []).append(event.event_id)\n            if event.capability:\n                pivots[\"capability\"].setdefault(event.capability, []).append(event.event_id)\n            if event.adversary:\n                pivots[\"adversary\"].setdefault(event.adversary, []).append(event.event_id)\n\n        return {\n            k: {pk: pv for pk, pv in v.items() if len(pv) > 1}\n            for k, v in pivots.items()\n        }\n\n    def generate_report(self):\n        return {\n            \"total_events\": len(self.events),\n            \"unique_adversaries\": len(set(e.adversary for e in self.events if e.adversary)),\n            \"unique_victims\": len(set(e.victim for e in self.events if e.victim)),\n            \"unique_infrastructure\": len(set(e.infrastructure for e in self.events if e.infrastructure)),\n            \"pivots\": self.find_pivots(),\n            \"events\": [e.to_dict() for e in self.events],\n        }\n```\n\n## Validation Criteria\n\n- Diamond events capture all four core features with meta-features\n- Activity threads link related events chronologically\n- Pivot analysis identifies shared infrastructure and capabilities across events\n- Graph visualization renders the activity-attack graph correctly\n- Events map to MITRE ATT&CK techniques for capability classification\n\n## References\n\n- [Diamond Model Paper](https:\u002F\u002Fwww.activeresponse.org\u002Fwp-content\u002Fuploads\u002F2013\u002F07\u002Fdiamond.pdf)\n- [MITRE ATT&CK](https:\u002F\u002Fattack.mitre.org\u002F)\n- [STIX 2.1 Campaign Object](https:\u002F\u002Fdocs.oasis-open.org\u002Fcti\u002Fstix\u002Fv2.1\u002Fstix-v2.1.html)\n","# Implementing Diamond Model Analysis\n\n## Overview\n\nThe Diamond Model of Intrusion Analysis provides a structured framework for analyzing cyber intrusions by examining four core features: Adversary, Capability, Infrastructure, and Victim. This skill covers implementing the Diamond Model programmatically to classify and correlate intrusion events, build activity threads linking related events, create activity-attack graphs, and generate pivot-ready intelligence from intrusion data.\n\n## When to Use\n\n- When deploying or configuring implementing diamond model analysis capabilities in your environment\n- When establishing security controls aligned to compliance requirements\n- When building or improving security architecture for this domain\n- When conducting security assessments that require this implementation\n\n## Prerequisites\n\n- Python 3.9+ with `networkx`, `stix2`, `graphviz` libraries\n- Understanding of the Diamond Model core and meta-features\n- Access to threat intelligence data (MISP\u002FOpenCTI events)\n- Familiarity with MITRE ATT&CK for capability mapping\n\n## Key Concepts\n\n### Diamond Model Core Features\n- **Adversary**: The threat actor or operator conducting the intrusion\n- **Capability**: The tools, techniques, and malware used (maps to ATT&CK)\n- **Infrastructure**: C2 servers, domains, email addresses, hosting providers\n- **Victim**: Target organization, system, person, or data asset\n\n### Meta-Features\n- **Timestamp**: When the event occurred\n- **Phase**: Kill chain stage (recon, delivery, exploitation, etc.)\n- **Result**: Success, failure, or unknown\n- **Direction**: Adversary-to-infrastructure, infrastructure-to-victim, etc.\n- **Methodology**: Social engineering, technical exploit, insider threat\n- **Resources**: Financial, human, technical resources required\n\n### Activity Threads and Groups\n- **Activity Thread**: Sequence of Diamond events from a single adversary operation\n- **Activity Group**: Cluster of threads attributed to the same adversary\n\n## Workflow\n\n### Step 1: Define Diamond Event Data Structure\n\n```python\nfrom dataclasses import dataclass, field\nfrom datetime import datetime\nfrom typing import Optional\nimport json\nimport uuid\n\n@dataclass\nclass DiamondEvent:\n    adversary: str = \"\"\n    capability: str = \"\"\n    infrastructure: str = \"\"\n    victim: str = \"\"\n    timestamp: str = \"\"\n    phase: str = \"\"\n    result: str = \"\"\n    direction: str = \"\"\n    methodology: str = \"\"\n    confidence: int = 0\n    notes: str = \"\"\n    event_id: str = field(default_factory=lambda: str(uuid.uuid4())[:8])\n    mitre_techniques: list = field(default_factory=list)\n    iocs: list = field(default_factory=list)\n\n    def to_dict(self):\n        return {\n            \"event_id\": self.event_id,\n            \"adversary\": self.adversary,\n            \"capability\": self.capability,\n            \"infrastructure\": self.infrastructure,\n            \"victim\": self.victim,\n            \"timestamp\": self.timestamp,\n            \"phase\": self.phase,\n            \"result\": self.result,\n            \"direction\": self.direction,\n            \"methodology\": self.methodology,\n            \"confidence\": self.confidence,\n            \"mitre_techniques\": self.mitre_techniques,\n            \"iocs\": self.iocs,\n            \"notes\": self.notes,\n        }\n```\n\n### Step 2: Build Activity Thread from Events\n\n```python\nimport networkx as nx\n\nclass DiamondAnalysis:\n    def __init__(self):\n        self.events = []\n        self.graph = nx.DiGraph()\n\n    def add_event(self, event: DiamondEvent):\n        self.events.append(event)\n        self.graph.add_node(event.event_id, **event.to_dict())\n\n    def build_activity_thread(self):\n        \"\"\"Link events chronologically into activity threads.\"\"\"\n        sorted_events = sorted(self.events, key=lambda e: e.timestamp)\n        for i in range(len(sorted_events) - 1):\n            self.graph.add_edge(\n                sorted_events[i].event_id,\n                sorted_events[i + 1].event_id,\n                relationship=\"followed_by\",\n            )\n\n    def find_pivots(self):\n        \"\"\"Find pivot points where events share infrastructure or capabilities.\"\"\"\n        pivots = {\"infrastructure\": {}, \"capability\": {}, \"adversary\": {}}\n\n        for event in self.events:\n            if event.infrastructure:\n                pivots[\"infrastructure\"].setdefault(event.infrastructure, []).append(event.event_id)\n            if event.capability:\n                pivots[\"capability\"].setdefault(event.capability, []).append(event.event_id)\n            if event.adversary:\n                pivots[\"adversary\"].setdefault(event.adversary, []).append(event.event_id)\n\n        return {\n            k: {pk: pv for pk, pv in v.items() if len(pv) > 1}\n            for k, v in pivots.items()\n        }\n\n    def generate_report(self):\n        return {\n            \"total_events\": len(self.events),\n            \"unique_adversaries\": len(set(e.adversary for e in self.events if e.adversary)),\n            \"unique_victims\": len(set(e.victim for e in self.events if e.victim)),\n            \"unique_infrastructure\": len(set(e.infrastructure for e in self.events if e.infrastructure)),\n            \"pivots\": self.find_pivots(),\n            \"events\": [e.to_dict() for e in self.events],\n        }\n```\n\n## Validation Criteria\n\n- Diamond events capture all four core features with meta-features\n- Activity threads link related events chronologically\n- Pivot analysis identifies shared infrastructure and capabilities across events\n- Graph visualization renders the activity-attack graph correctly\n- Events map to MITRE ATT&CK techniques for capability classification\n\n## References\n\n- [Diamond Model Paper](https:\u002F\u002Fwww.activeresponse.org\u002Fwp-content\u002Fuploads\u002F2013\u002F07\u002Fdiamond.pdf)\n- [MITRE ATT&CK](https:\u002F\u002Fattack.mitre.org\u002F)\n- [STIX 2.1 Campaign Object](https:\u002F\u002Fdocs.oasis-open.org\u002Fcti\u002Fstix\u002Fv2.1\u002Fstix-v2.1.html)\n",{"name":5,"domain":24,"description":7},"main","a91f1293287ffa9f4f1b8f486cd6e835a1568c84","skills\u002Fintel-analysis-iam","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace","https:\u002F\u002Fgithub.com\u002FDCx7C5","#Python","2026-09-01 11:21:00",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add DCx7C5\u002Fai-marketplace --skill intel-analysis-iam",{"tool":49,"command":50},"bunx","bunx skills add DCx7C5\u002Fai-marketplace --skill intel-analysis-iam",{"tool":52,"command":53},"pnpm","pnpm dlx skills add DCx7C5\u002Fai-marketplace --skill intel-analysis-iam","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fintel-analysis-iam\u002FSKILL.md",true,[57],{"path":58,"resourceType":59,"resourceTypeDesc":60,"sizeBytes":61,"sourceHtmlUrl":62},"index.json","REFERENCE","参考文档",506,"https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fintel-analysis-iam\u002Findex.json",[64,89,111,133,155,171],{"skillNo":65,"name":66,"nameZh":6,"description":67,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":68,"categories":69,"keywords":70,"publishedAt":31},"01M71HAPZ01KQ30RKTB0FFSQ05","services-wmi-persistence-detect","Detect WMI event subscription persistence by enumerating ActiveScriptEventConsumer, CommandLineEventConsumer, and permanent subscriptions in the WMI repository.","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fwindows\u002Fservices\u002Fwmi\u002Fpersistence\u002Fdetect\u002FSKILL.md",[],[71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,24,88],"services","detect","services wmi persistence detect","wmi","persistence","de","cm","process","activescript","event","subscriptions","commandline-consumer","repository","subscription","event-subscription","t1546.003","forensics","process-forensics",{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":31},"01M71HAK6JTTTS229T17WJMMCG","services-wmi-exec-exploit","Perform lateral movement across Windows networks using WMI-based remote execution techniques including Impacket wmiexec.py, CrackMapExec, and native WMI commands for stealthy post-exploitation during red team engagements.","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fwindows\u002Fservices\u002Fwmi\u002Fexec\u002Fexploit\u002FSKILL.md",[],[96,71,97,74,98,99,100,24,101,20,102,103,104,105,76,106,107,108,109,110],"exploit","services wmi exec exploit","exec","remote","traffic","Bash","team","across","crackmapexec","native","command","lateral movement","read","lateral-movement","Impacket",{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":117,"publishedAt":31},"01M71HAG6MHKNQV8KDZKMT4886","registry-artifact-extract","Extract and analyze Windows Registry hives to uncover user activity, installed software, autostart entries, and evidence of system compromise.","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fwindows\u002Fregistry\u002Fartifact\u002Fextract\u002FSKILL.md",[],[118,119,120,121,122,123,24,101,124,20,125,126,76,108,127,128,129,130,131,132],"artifact","registry","registry artifact extract","extract","evidence-collection","artifact-analysis","collection","analyze","uncover","software","activity","digital-forensics","windows-registry","regripper","sonnet",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":31},"01M71HACR4A8XTWTTSXK4124AA","processes-token-impersonate-detect","Detect Windows token impersonation and privilege abuse including SeImpersonatePrivilege exploitation via Potato attacks and token stealing techniques.","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fwindows\u002Fprocesses\u002Ftoken\u002Fimpersonate\u002Fdetect\u002FSKILL.md",[],[72,140,141,142,143,144,145,77,146,24,88,147,148,149,150,151,152,153,154,76],"processes token impersonate detect","token","processes","attacks","windows","escalation","techniques","privilege-escalation","seimpersonate","token-impersonation","printspoofer","exploitation","potato","impersonation","via",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":161,"publishedAt":31},"01M71HAABSB4Z6QFSXEG00R4RK","processes-thread-injection-detect","Detect Windows thread injection techniques including CreateRemoteThread, QueueUserAPC, NtCreateThreadEx, and thread hijacking via process memory analysis.","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fwindows\u002Fprocesses\u002Fthread\u002Finjection\u002Fdetect\u002FSKILL.md",[],[162,163,72,164,142,144,165,77,166,146,24,88,20,167,168,169,170,154,76,78],"thread","processes thread injection detect","injection","memory","process-injection","api","apc-injection","thread-injection","nt-api",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":177,"publishedAt":31},"01M71HA7H311V5G14WMX58HQSS","processes-hollow-technique-detect","Detect process hollowing (RunPE) by identifying processes with mismatched image paths between PEB and VAD tree, or unmapped PE headers in memory.","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fwindows\u002Fprocesses\u002Fhollow\u002Ftechnique\u002Fdetect\u002FSKILL.md",[],[178,72,142,179,165,77,180,181,24,88,182,183,184,185,186,187,76,78,188,189],"processes hollow technique detect","tree","memory-forensics","process-hollow","peb","runpe","image","pe-header","in memory","with","mismatched","headers"]