[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71CSATQGFC51DKB23DT5WA9":3,"skill-same:01M71CSATQGFC51DKB23DT5WA9":71},{"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":28,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":14,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M71CSATQGFC51DKB23DT5WA9","compliance-email-dmarc-verify",null,"## Validation - SPF record passes validation at mxtoolbox.","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\u002Fcompliance-email-dmarc-verify\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000005","邮件与沟通","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000037","律师与法务","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38],"email","verify","compliance","compliance email dmarc verify","dmarc","cybersecurity","record","at","validation","spf","2026-11-10 10:12:30",false,"---\nname: compliance-email-dmarc-verify\ndescription: \"## Validation - SPF record passes validation at mxtoolbox.\"\ndomain: cybersecurity\n---\n\n# Implementing DMARC, DKIM, and SPF Email Security\n\n## Overview\nSPF, DKIM, and DMARC form the three pillars of email authentication. Together they prevent domain spoofing, validate message integrity, and define policies for handling unauthenticated mail. Proper implementation drastically reduces phishing attacks that impersonate your organization's domain.\n\n## When to Use\n\n- When deploying or configuring implementing dmarc dkim spf email security 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- DNS management access for your domain\n- Access to email server\u002FMTA configuration (Postfix, Exchange, Google Workspace, Microsoft 365)\n- Basic understanding of DNS TXT records\n- Python 3.8+ for validation scripts\n\n## Key Concepts\n\n### SPF (Sender Policy Framework)\nPublishes a DNS TXT record listing authorized IP addresses and mail servers that can send email on behalf of your domain. Receiving servers check the envelope sender's IP against this list.\n\n### DKIM (DomainKeys Identified Mail)\nAdds a cryptographic signature to outgoing emails using a private key. The corresponding public key is published in DNS. Receivers verify the signature to ensure the message was not altered in transit.\n\n### DMARC (Domain-based Message Authentication, Reporting and Conformance)\nBuilds on SPF and DKIM by specifying a policy (none\u002Fquarantine\u002Freject) for messages that fail authentication, and provides a reporting mechanism to monitor spoofing attempts.\n\n## Workflow\n\n### Step 1: Audit Current State\n```bash\n# Check existing SPF record\ndig TXT example.com | grep spf\n\n# Check existing DKIM selector\ndig TXT selector1._domainkey.example.com\n\n# Check existing DMARC record\ndig TXT _dmarc.example.com\n```\n\n### Step 2: Implement SPF\n```\n# DNS TXT record for example.com\nv=spf1 ip4:203.0.113.0\u002F24 include:_spf.google.com include:spf.protection.outlook.com -all\n```\n\nKey SPF mechanisms:\n- `ip4:` \u002F `ip6:` - Authorize specific IP ranges\n- `include:` - Include another domain's SPF record\n- `a` - Authorize domain's A record IPs\n- `mx` - Authorize domain's MX record IPs\n- `-all` - Hard fail all others (recommended)\n- `~all` - Soft fail (monitoring phase)\n\n### Step 3: Implement DKIM\n```bash\n# Generate DKIM key pair (2048-bit RSA)\nopenssl genrsa -out dkim_private.pem 2048\nopenssl rsa -in dkim_private.pem -pubout -out dkim_public.pem\n\n# Format public key for DNS (remove headers, join lines)\ngrep -v \"PUBLIC KEY\" dkim_public.pem | tr -d '\\n'\n```\n\nDNS TXT record at `selector1._domainkey.example.com`:\n```\nv=DKIM1; k=rsa; p=MIIBIjANBgkqhki...\n```\n\n### Step 4: Implement DMARC\n```\n# DNS TXT record at _dmarc.example.com\n# Phase 1 (Monitor):\nv=DMARC1; p=none; rua=mailto:dmarc-aggregate@example.com; ruf=mailto:dmarc-forensic@example.com; pct=100\n\n# Phase 2 (Quarantine):\nv=DMARC1; p=quarantine; rua=mailto:dmarc-aggregate@example.com; pct=25\n\n# Phase 3 (Reject):\nv=DMARC1; p=reject; rua=mailto:dmarc-aggregate@example.com; pct=100\n```\n\n### Step 5: Monitor and Analyze DMARC Reports\nUse the `scripts\u002Fprocess.py` to parse DMARC aggregate XML reports and identify authentication failures, unauthorized senders, and spoofing attempts.\n\n## Tools & Resources\n- **MXToolbox**: https:\u002F\u002Fmxtoolbox.com\u002FSuperTool.aspx\n- **DMARC Analyzer (dmarcian)**: https:\u002F\u002Fdmarcian.com\u002F\n- **Google Postmaster Tools**: https:\u002F\u002Fpostmaster.google.com\u002F\n- **Valimail DMARC Monitor**: https:\u002F\u002Fwww.valimail.com\u002F\n- **DMARC Report Analyzer**: https:\u002F\u002Fdmarc.postmarkapp.com\u002F\n\n## Validation\n- SPF record passes validation at mxtoolbox.com\n- DKIM signature verified on test emails\n- DMARC record properly formatted and reporting enabled\n- Test emails pass all three checks in recipient's Authentication-Results header\n","# Implementing DMARC, DKIM, and SPF Email Security\n\n## Overview\nSPF, DKIM, and DMARC form the three pillars of email authentication. Together they prevent domain spoofing, validate message integrity, and define policies for handling unauthenticated mail. Proper implementation drastically reduces phishing attacks that impersonate your organization's domain.\n\n## When to Use\n\n- When deploying or configuring implementing dmarc dkim spf email security 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- DNS management access for your domain\n- Access to email server\u002FMTA configuration (Postfix, Exchange, Google Workspace, Microsoft 365)\n- Basic understanding of DNS TXT records\n- Python 3.8+ for validation scripts\n\n## Key Concepts\n\n### SPF (Sender Policy Framework)\nPublishes a DNS TXT record listing authorized IP addresses and mail servers that can send email on behalf of your domain. Receiving servers check the envelope sender's IP against this list.\n\n### DKIM (DomainKeys Identified Mail)\nAdds a cryptographic signature to outgoing emails using a private key. The corresponding public key is published in DNS. Receivers verify the signature to ensure the message was not altered in transit.\n\n### DMARC (Domain-based Message Authentication, Reporting and Conformance)\nBuilds on SPF and DKIM by specifying a policy (none\u002Fquarantine\u002Freject) for messages that fail authentication, and provides a reporting mechanism to monitor spoofing attempts.\n\n## Workflow\n\n### Step 1: Audit Current State\n```bash\n# Check existing SPF record\ndig TXT example.com | grep spf\n\n# Check existing DKIM selector\ndig TXT selector1._domainkey.example.com\n\n# Check existing DMARC record\ndig TXT _dmarc.example.com\n```\n\n### Step 2: Implement SPF\n```\n# DNS TXT record for example.com\nv=spf1 ip4:203.0.113.0\u002F24 include:_spf.google.com include:spf.protection.outlook.com -all\n```\n\nKey SPF mechanisms:\n- `ip4:` \u002F `ip6:` - Authorize specific IP ranges\n- `include:` - Include another domain's SPF record\n- `a` - Authorize domain's A record IPs\n- `mx` - Authorize domain's MX record IPs\n- `-all` - Hard fail all others (recommended)\n- `~all` - Soft fail (monitoring phase)\n\n### Step 3: Implement DKIM\n```bash\n# Generate DKIM key pair (2048-bit RSA)\nopenssl genrsa -out dkim_private.pem 2048\nopenssl rsa -in dkim_private.pem -pubout -out dkim_public.pem\n\n# Format public key for DNS (remove headers, join lines)\ngrep -v \"PUBLIC KEY\" dkim_public.pem | tr -d '\\n'\n```\n\nDNS TXT record at `selector1._domainkey.example.com`:\n```\nv=DKIM1; k=rsa; p=MIIBIjANBgkqhki...\n```\n\n### Step 4: Implement DMARC\n```\n# DNS TXT record at _dmarc.example.com\n# Phase 1 (Monitor):\nv=DMARC1; p=none; rua=mailto:dmarc-aggregate@example.com; ruf=mailto:dmarc-forensic@example.com; pct=100\n\n# Phase 2 (Quarantine):\nv=DMARC1; p=quarantine; rua=mailto:dmarc-aggregate@example.com; pct=25\n\n# Phase 3 (Reject):\nv=DMARC1; p=reject; rua=mailto:dmarc-aggregate@example.com; pct=100\n```\n\n### Step 5: Monitor and Analyze DMARC Reports\nUse the `scripts\u002Fprocess.py` to parse DMARC aggregate XML reports and identify authentication failures, unauthorized senders, and spoofing attempts.\n\n## Tools & Resources\n- **MXToolbox**: https:\u002F\u002Fmxtoolbox.com\u002FSuperTool.aspx\n- **DMARC Analyzer (dmarcian)**: https:\u002F\u002Fdmarcian.com\u002F\n- **Google Postmaster Tools**: https:\u002F\u002Fpostmaster.google.com\u002F\n- **Valimail DMARC Monitor**: https:\u002F\u002Fwww.valimail.com\u002F\n- **DMARC Report Analyzer**: https:\u002F\u002Fdmarc.postmarkapp.com\u002F\n\n## Validation\n- SPF record passes validation at mxtoolbox.com\n- DKIM signature verified on test emails\n- DMARC record properly formatted and reporting enabled\n- Test emails pass all three checks in recipient's Authentication-Results header\n",{"name":5,"domain":34,"description":7},"main","a91f1293287ffa9f4f1b8f486cd6e835a1568c84","skills\u002Fcompliance-email-dmarc-verify","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace","https:\u002F\u002Fgithub.com\u002FDCx7C5","#Python","2026-09-01 11:21:00",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add DCx7C5\u002Fai-marketplace --skill compliance-email-dmarc-verify",{"tool":57,"command":58},"bunx","bunx skills add DCx7C5\u002Fai-marketplace --skill compliance-email-dmarc-verify",{"tool":60,"command":61},"pnpm","pnpm dlx skills add DCx7C5\u002Fai-marketplace --skill compliance-email-dmarc-verify","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fcompliance-email-dmarc-verify\u002FSKILL.md",true,[65],{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},"index.json","REFERENCE","参考文档",544,"https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fcompliance-email-dmarc-verify\u002Findex.json",[72,97,120,142,164,180],{"skillNo":73,"name":74,"nameZh":6,"description":75,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":78,"publishedAt":39},"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",[],[79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,34,96],"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":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":103,"publishedAt":39},"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",[],[104,79,105,82,106,107,108,34,109,110,111,112,113,114,84,115,116,117,118,119],"exploit","services wmi exec exploit","exec","remote","traffic","Bash","analysis","team","across","crackmapexec","native","command","lateral movement","read","lateral-movement","Impacket",{"skillNo":121,"name":122,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":126,"publishedAt":39},"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",[],[127,128,129,130,131,132,34,109,133,110,134,135,84,117,136,137,138,139,140,141],"artifact","registry","registry artifact extract","extract","evidence-collection","artifact-analysis","collection","analyze","uncover","software","activity","digital-forensics","windows-registry","regripper","sonnet",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":148,"publishedAt":39},"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",[],[80,149,150,151,152,153,154,85,155,34,96,156,157,158,159,160,161,162,163,84],"processes token impersonate detect","token","processes","attacks","windows","escalation","techniques","privilege-escalation","seimpersonate","token-impersonation","printspoofer","exploitation","potato","impersonation","via",{"skillNo":165,"name":166,"nameZh":6,"description":167,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":168,"categories":169,"keywords":170,"publishedAt":39},"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",[],[171,172,80,173,151,153,174,85,175,155,34,96,110,176,177,178,179,163,84,86],"thread","processes thread injection detect","injection","memory","process-injection","api","apc-injection","thread-injection","nt-api",{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":186,"publishedAt":39},"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",[],[187,80,151,188,174,85,189,190,34,96,191,192,193,194,195,196,84,86,197,198],"processes hollow technique detect","tree","memory-forensics","process-hollow","peb","runpe","image","pe-header","in memory","with","mismatched","headers"]