[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71CSDPAEPX29S7PK6AP58ZE":3,"skill-same:01M71CSDPAEPX29S7PK6AP58ZE":81},{"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":49,"linkOnly":50,"markdownContent":51,"markdownBody":52,"frontMatter":53,"refName":54,"commitSha":55,"skillDirectory":56,"forksCount":14,"repositoryHtmlUrl":57,"repositoryHomepageUrl":6,"ownerHtmlUrl":58,"ownerBlogUrl":6,"ownerDescription":59,"updatedAt":60,"install":61,"resources":74},"01M71CSDPAEPX29S7PK6AP58ZE","compliance-email-dmarcrollout",null,"| | p=none | Monitor only, no action on failures | Discovery phase | | p=quarantine | Send failing messages to spam\u002Fjunk | Transition phase | | p=reject | Block failing messages entirely | Full enforcement |  ### DMARC Record Anatomy ``` v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc-agg@company.","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-dmarcrollout\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,39,40,41,42,43,44,45,46,47,48],"compliance","compliance email dmarcrollout","email","action","block","anatomy","transition","record","phase","cybersecurity","only","monitor","failing","spam","company","send","messages","discovery","enforcement","agg","2026-11-10 10:12:30",false,"---\nname: compliance-email-dmarcrollout\ndescription: \"| | p=none | Monitor only, no action on failures | Discovery phase | | p=quarantine | Send failing messages to spam\u002Fjunk | Transition phase | | p=reject | Block failing messages entirely | Full enforcement |  ### DMARC Record Anatomy ``` v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc-agg@company.\"\ndomain: cybersecurity\n---\n\n|\n| p=none | Monitor only, no action on failures | Discovery phase |\n| p=quarantine | Send failing messages to spam\u002Fjunk | Transition phase |\n| p=reject | Block failing messages entirely | Full enforcement |\n\n### DMARC Record Anatomy\n```\nv=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc-agg@company.com; ruf=mailto:dmarc-forensic@company.com; adkim=r; aspf=r; fo=1\n```\n- **p**: Policy for organizational domain\n- **sp**: Policy for subdomains\n- **pct**: Percentage of messages subject to policy (for gradual rollout)\n- **rua**: Aggregate report destination (daily XML reports)\n- **ruf**: Forensic report destination (per-failure reports)\n- **adkim**: DKIM alignment mode (r=relaxed, s=strict)\n- **aspf**: SPF alignment mode (r=relaxed, s=strict)\n- **fo**: Failure reporting options (0=both fail, 1=either fails)\n\n### SPF and DKIM Alignment\n- **SPF Alignment**: The domain in the Return-Path (envelope sender) must match the From header domain\n- **DKIM Alignment**: The d= domain in the DKIM signature must match the From header domain\n- **Relaxed**: Organizational domain match (sub.example.com matches example.com)\n- **Strict**: Exact domain match required\n\n## Workflow\n\n### Step 1: Inventory All Sending Sources (Week 1-2)\n- Audit all systems sending email as your domain (marketing, CRM, ticketing, transactional)\n- Document third-party services: Salesforce, Mailchimp, SendGrid, Zendesk, etc.\n- Identify internal mail servers, applications, and relay hosts\n- Check for shadow IT email sending (departments using unauthorized services)\n\n### Step 2: Configure SPF and DKIM (Week 2-4)\n- Consolidate SPF record with all legitimate sending IPs and includes\n- Ensure SPF record stays under 10 DNS lookup limit\n- Generate and publish DKIM keys for each sending source\n- Verify DKIM signing works for all outbound mail paths\n- Test with MX Toolbox or dmarcian SPF\u002FDKIM validators\n\n### Step 3: Deploy DMARC in Monitoring Mode (Week 4-6)\n- Publish initial DMARC record: `v=DMARC1; p=none; rua=mailto:dmarc@company.com; fo=1`\n- Wait 1-2 weeks to collect representative aggregate reports\n- Analyze reports to identify unauthorized senders and alignment failures\n- Fix SPF\u002FDKIM for all legitimate sources showing failures\n- Iterate until all legitimate mail passes DMARC\n\n### Step 4: Move to Quarantine with pct Tag (Week 6-12)\n- Update to quarantine at 10%: `v=DMARC1; p=quarantine; pct=10; rua=...`\n- Monitor for false positives (legitimate mail being quarantined)\n- Increase pct gradually: 10% -> 25% -> 50% -> 75% -> 100%\n- Each increase: wait 1-2 weeks and review reports before advancing\n- Fix any remaining alignment issues discovered at each stage\n\n### Step 5: Advance to Reject Policy (Week 12-20)\n- After stable quarantine at 100%, move to reject at 10%: `v=DMARC1; p=reject; pct=10; rua=...`\n- Gradually increase pct: 10% -> 25% -> 50% -> 100%\n- Monitor closely for legitimate mail being rejected\n- Establish emergency rollback procedure (revert to quarantine)\n- Apply subdomain policy: `sp=reject` for subdomains\n\n### Step 6: Ongoing Monitoring and Maintenance\n- Continuously monitor DMARC aggregate reports\n- Add new sending sources before they start sending\n- Review forensic reports for spoofing attempts\n- Maintain SPF record as sending infrastructure changes\n- Rotate DKIM keys annually\n\n## Tools & Resources\n- **EasyDMARC**: DMARC monitoring dashboard with aggregate\u002Fforensic report analysis\n- **DMARCLY**: SPF, DKIM, DMARC monitoring with auto-DNS updates\n- **dmarcian**: DMARC deployment and management platform\n- **Valimail**: Automated DMARC enforcement with hosted authentication\n- **MX Toolbox**: DNS record lookup and DMARC validator\n- **Google Admin Toolbox**: DMARC check and diagnostic tools\n\n## Validation\n- DMARC record published and resolving correctly at _dmarc.domain.com\n- All legitimate sending sources pass SPF and\u002For DKIM alignment\n- Aggregate reports show >99% legitimate mail passing DMARC\n- Spoofed messages from unauthorized senders are rejected\n- No legitimate mail blocked after full p=reject enforcement\n- Subdomain policy (sp=) also set to reject\n","|\n| p=none | Monitor only, no action on failures | Discovery phase |\n| p=quarantine | Send failing messages to spam\u002Fjunk | Transition phase |\n| p=reject | Block failing messages entirely | Full enforcement |\n\n### DMARC Record Anatomy\n```\nv=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc-agg@company.com; ruf=mailto:dmarc-forensic@company.com; adkim=r; aspf=r; fo=1\n```\n- **p**: Policy for organizational domain\n- **sp**: Policy for subdomains\n- **pct**: Percentage of messages subject to policy (for gradual rollout)\n- **rua**: Aggregate report destination (daily XML reports)\n- **ruf**: Forensic report destination (per-failure reports)\n- **adkim**: DKIM alignment mode (r=relaxed, s=strict)\n- **aspf**: SPF alignment mode (r=relaxed, s=strict)\n- **fo**: Failure reporting options (0=both fail, 1=either fails)\n\n### SPF and DKIM Alignment\n- **SPF Alignment**: The domain in the Return-Path (envelope sender) must match the From header domain\n- **DKIM Alignment**: The d= domain in the DKIM signature must match the From header domain\n- **Relaxed**: Organizational domain match (sub.example.com matches example.com)\n- **Strict**: Exact domain match required\n\n## Workflow\n\n### Step 1: Inventory All Sending Sources (Week 1-2)\n- Audit all systems sending email as your domain (marketing, CRM, ticketing, transactional)\n- Document third-party services: Salesforce, Mailchimp, SendGrid, Zendesk, etc.\n- Identify internal mail servers, applications, and relay hosts\n- Check for shadow IT email sending (departments using unauthorized services)\n\n### Step 2: Configure SPF and DKIM (Week 2-4)\n- Consolidate SPF record with all legitimate sending IPs and includes\n- Ensure SPF record stays under 10 DNS lookup limit\n- Generate and publish DKIM keys for each sending source\n- Verify DKIM signing works for all outbound mail paths\n- Test with MX Toolbox or dmarcian SPF\u002FDKIM validators\n\n### Step 3: Deploy DMARC in Monitoring Mode (Week 4-6)\n- Publish initial DMARC record: `v=DMARC1; p=none; rua=mailto:dmarc@company.com; fo=1`\n- Wait 1-2 weeks to collect representative aggregate reports\n- Analyze reports to identify unauthorized senders and alignment failures\n- Fix SPF\u002FDKIM for all legitimate sources showing failures\n- Iterate until all legitimate mail passes DMARC\n\n### Step 4: Move to Quarantine with pct Tag (Week 6-12)\n- Update to quarantine at 10%: `v=DMARC1; p=quarantine; pct=10; rua=...`\n- Monitor for false positives (legitimate mail being quarantined)\n- Increase pct gradually: 10% -> 25% -> 50% -> 75% -> 100%\n- Each increase: wait 1-2 weeks and review reports before advancing\n- Fix any remaining alignment issues discovered at each stage\n\n### Step 5: Advance to Reject Policy (Week 12-20)\n- After stable quarantine at 100%, move to reject at 10%: `v=DMARC1; p=reject; pct=10; rua=...`\n- Gradually increase pct: 10% -> 25% -> 50% -> 100%\n- Monitor closely for legitimate mail being rejected\n- Establish emergency rollback procedure (revert to quarantine)\n- Apply subdomain policy: `sp=reject` for subdomains\n\n### Step 6: Ongoing Monitoring and Maintenance\n- Continuously monitor DMARC aggregate reports\n- Add new sending sources before they start sending\n- Review forensic reports for spoofing attempts\n- Maintain SPF record as sending infrastructure changes\n- Rotate DKIM keys annually\n\n## Tools & Resources\n- **EasyDMARC**: DMARC monitoring dashboard with aggregate\u002Fforensic report analysis\n- **DMARCLY**: SPF, DKIM, DMARC monitoring with auto-DNS updates\n- **dmarcian**: DMARC deployment and management platform\n- **Valimail**: Automated DMARC enforcement with hosted authentication\n- **MX Toolbox**: DNS record lookup and DMARC validator\n- **Google Admin Toolbox**: DMARC check and diagnostic tools\n\n## Validation\n- DMARC record published and resolving correctly at _dmarc.domain.com\n- All legitimate sending sources pass SPF and\u002For DKIM alignment\n- Aggregate reports show >99% legitimate mail passing DMARC\n- Spoofed messages from unauthorized senders are rejected\n- No legitimate mail blocked after full p=reject enforcement\n- Subdomain policy (sp=) also set to reject\n",{"name":5,"domain":38,"description":7},"main","a91f1293287ffa9f4f1b8f486cd6e835a1568c84","skills\u002Fcompliance-email-dmarcrollout","https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace","https:\u002F\u002Fgithub.com\u002FDCx7C5","#Python","2026-09-01 11:21:00",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":73},[63,66,69],{"tool":64,"command":65},"npx","npx skills add DCx7C5\u002Fai-marketplace --skill compliance-email-dmarcrollout",{"tool":67,"command":68},"bunx","bunx skills add DCx7C5\u002Fai-marketplace --skill compliance-email-dmarcrollout",{"tool":70,"command":71},"pnpm","pnpm dlx skills add DCx7C5\u002Fai-marketplace --skill compliance-email-dmarcrollout","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fcompliance-email-dmarcrollout\u002FSKILL.md",true,[75],{"path":76,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":79,"sourceHtmlUrl":80},"index.json","REFERENCE","参考文档",686,"https:\u002F\u002Fgithub.com\u002FDCx7C5\u002Fai-marketplace\u002Fblob\u002Fmain\u002Fskills\u002Fcompliance-email-dmarcrollout\u002Findex.json",[82,107,130,152,174,190],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":49},"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",[],[89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,38,106],"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":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":49},"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",[],[114,89,115,92,116,117,118,38,119,120,121,122,123,124,94,125,126,127,128,129],"exploit","services wmi exec exploit","exec","remote","traffic","Bash","analysis","team","across","crackmapexec","native","command","lateral movement","read","lateral-movement","Impacket",{"skillNo":131,"name":132,"nameZh":6,"description":133,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":134,"categories":135,"keywords":136,"publishedAt":49},"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",[],[137,138,139,140,141,142,38,119,143,120,144,145,94,127,146,147,148,149,150,151],"artifact","registry","registry artifact extract","extract","evidence-collection","artifact-analysis","collection","analyze","uncover","software","activity","digital-forensics","windows-registry","regripper","sonnet",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":158,"publishedAt":49},"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",[],[90,159,160,161,162,163,164,95,165,38,106,166,167,168,169,170,171,172,173,94],"processes token impersonate detect","token","processes","attacks","windows","escalation","techniques","privilege-escalation","seimpersonate","token-impersonation","printspoofer","exploitation","potato","impersonation","via",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":180,"publishedAt":49},"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",[],[181,182,90,183,161,163,184,95,185,165,38,106,120,186,187,188,189,173,94,96],"thread","processes thread injection detect","injection","memory","process-injection","api","apc-injection","thread-injection","nt-api",{"skillNo":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":194,"categories":195,"keywords":196,"publishedAt":49},"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",[],[197,90,161,198,184,95,199,200,38,106,201,202,203,204,205,206,94,96,207,208],"processes hollow technique detect","tree","memory-forensics","process-hollow","peb","runpe","image","pe-header","in memory","with","mismatched","headers"]