create-vasvibe 2.3.1 → 2.5.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/README.md +170 -167
- package/bin/cli.mjs +9 -9
- package/package.json +44 -44
- package/src/git.mjs +47 -47
- package/src/index.mjs +228 -228
- package/src/prompts.mjs +113 -113
- package/src/scaffold.mjs +74 -74
- package/src/upgrade.mjs +121 -121
- package/src/utils.mjs +91 -91
- package/template/.agents/agents/analyst/agent.json +43 -43
- package/template/.agents/agents/backend/agent.json +44 -44
- package/template/.agents/agents/data-architect/agent.json +43 -43
- package/template/.agents/agents/devops/agent.json +44 -44
- package/template/.agents/agents/discovery/agent.json +43 -43
- package/template/.agents/agents/document/agent.json +43 -43
- package/template/.agents/agents/fixer/agent.json +44 -44
- package/template/.agents/agents/frontend/agent.json +44 -44
- package/template/.agents/agents/fullstack/agent.json +44 -44
- package/template/.agents/agents/initiator/agent.json +41 -41
- package/template/.agents/agents/manual-tester/agent.json +44 -0
- package/template/.agents/agents/orchestrator/agent.json +44 -44
- package/template/.agents/agents/pm/agent.json +42 -42
- package/template/.agents/agents/qa/agent.json +44 -44
- package/template/.agents/agents/reliability/agent.json +44 -44
- package/template/.agents/agents/security/agent.json +44 -44
- package/template/.agents/agents/sysarch/agent.json +44 -44
- package/template/.agents/agents/tester/agent.json +44 -44
- package/template/.agents/agents/toolsmith/agent.json +44 -44
- package/template/.agents/agents/ux-designer/agent.json +43 -43
- package/template/.agents/skills/find-skills/SKILL.md +142 -142
- package/template/.agents/skills/fullstack/SKILL.md +89 -89
- package/template/.agents/skills/penetration-testing/SKILL.md +94 -94
- package/template/.agents/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
- package/template/.agents/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
- package/template/.agents/skills/penetration-testing/scripts/security-checklist.sh +30 -30
- package/template/.agents/skills/pm/SKILL.md +170 -170
- package/template/.agents/skills/ui-ux-pro-max/SKILL.md +658 -658
- package/template/.agents/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
- package/template/.agents/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
- package/template/.agents/skills/ui-ux-pro-max/data/design.csv +1775 -1775
- package/template/.agents/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
- package/template/.agents/skills/ui-ux-pro-max/data/icons.csv +105 -105
- package/template/.agents/skills/ui-ux-pro-max/data/products.csv +162 -162
- package/template/.agents/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
- package/template/.agents/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
- package/template/.agents/skills/ui-ux-pro-max/data/typography.csv +74 -74
- package/template/.agents/skills/ui-ux-pro-max/scripts/core.py +262 -262
- package/template/.agents/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
- package/template/.agents/workflows/build-feature.md +21 -21
- package/template/.agents/workflows/daily-standup.md +16 -16
- package/template/.agents/workflows/deliver-feature.md +16 -16
- package/template/.agents/workflows/harden-release.md +21 -21
- package/template/.agents/workflows/plan-project.md +25 -25
- package/template/.agents/workflows/release.md +18 -18
- package/template/.agents/workflows/security-audit.md +19 -19
- package/template/.agents/workflows/setup-workspace.md +21 -21
- package/template/.agents/workflows/start-fix.md +17 -17
- package/template/.agents/workflows/test-feature.md +17 -17
- package/template/.claude/agents/analyst.md +75 -75
- package/template/.claude/agents/backend.md +61 -61
- package/template/.claude/agents/data-architect.md +43 -43
- package/template/.claude/agents/devops.md +44 -43
- package/template/.claude/agents/discovery.md +51 -51
- package/template/.claude/agents/document.md +51 -51
- package/template/.claude/agents/fixer.md +83 -82
- package/template/.claude/agents/frontend.md +58 -58
- package/template/.claude/agents/fullstack.md +84 -83
- package/template/.claude/agents/initiator.md +74 -74
- package/template/.claude/agents/manual-tester.md +108 -0
- package/template/.claude/agents/orchestrator.md +114 -113
- package/template/.claude/agents/pm.md +199 -199
- package/template/.claude/agents/qa.md +66 -65
- package/template/.claude/agents/reliability.md +48 -47
- package/template/.claude/agents/security.md +107 -106
- package/template/.claude/agents/sysarch.md +301 -301
- package/template/.claude/agents/tester.md +100 -100
- package/template/.claude/agents/toolsmith.md +77 -76
- package/template/.claude/agents/ux-designer.md +45 -45
- package/template/.claude/commands/build-feature.md +22 -22
- package/template/.claude/commands/daily-standup.md +16 -16
- package/template/.claude/commands/deliver-feature.md +17 -17
- package/template/.claude/commands/harden-release.md +22 -22
- package/template/.claude/commands/manual-test.md +19 -0
- package/template/.claude/commands/plan-project.md +26 -26
- package/template/.claude/commands/release.md +19 -19
- package/template/.claude/commands/security-audit.md +20 -20
- package/template/.claude/commands/setup-workspace.md +22 -22
- package/template/.claude/commands/start-fix.md +18 -18
- package/template/.claude/commands/test-feature.md +18 -18
- package/template/.claude/skills/find-skills +1 -0
- package/template/.claude/skills/penetration-testing/SKILL.md +94 -94
- package/template/.claude/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
- package/template/.claude/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
- package/template/.claude/skills/penetration-testing/scripts/security-checklist.sh +30 -30
- package/template/.claude/skills/ui-ux-pro-max/SKILL.md +658 -658
- package/template/.claude/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
- package/template/.claude/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
- package/template/.claude/skills/ui-ux-pro-max/data/design.csv +1775 -1775
- package/template/.claude/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
- package/template/.claude/skills/ui-ux-pro-max/data/icons.csv +105 -105
- package/template/.claude/skills/ui-ux-pro-max/data/products.csv +162 -162
- package/template/.claude/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
- package/template/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
- package/template/.claude/skills/ui-ux-pro-max/data/typography.csv +74 -74
- package/template/.claude/skills/ui-ux-pro-max/scripts/core.py +262 -262
- package/template/.claude/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
- package/template/.github/prompts/analyst.prompt.md +57 -57
- package/template/.github/prompts/backend.prompt.md +44 -44
- package/template/.github/prompts/data-architect.prompt.md +38 -38
- package/template/.github/prompts/devops.prompt.md +32 -32
- package/template/.github/prompts/discovery.prompt.md +39 -39
- package/template/.github/prompts/document.prompt.md +14 -14
- package/template/.github/prompts/fixer.prompt.md +90 -89
- package/template/.github/prompts/frontend.prompt.md +43 -43
- package/template/.github/prompts/fullstack.prompt.md +91 -91
- package/template/.github/prompts/initiator.prompt.md +55 -55
- package/template/.github/prompts/manual-tester.prompt.md +103 -0
- package/template/.github/prompts/orchestrator.prompt.md +75 -75
- package/template/.github/prompts/pm.prompt.md +186 -186
- package/template/.github/prompts/qa.prompt.md +57 -57
- package/template/.github/prompts/reliability.prompt.md +44 -44
- package/template/.github/prompts/security.prompt.md +41 -41
- package/template/.github/prompts/sysarch.prompt.md +351 -351
- package/template/.github/prompts/tester.prompt.md +107 -107
- package/template/.github/prompts/toolsmith.prompt.md +46 -46
- package/template/.github/prompts/ux-designer.prompt.md +41 -41
- package/template/.opencode/agents/analyst.md +75 -75
- package/template/.opencode/agents/backend.md +61 -61
- package/template/.opencode/agents/data-architect.md +43 -43
- package/template/.opencode/agents/devops.md +44 -41
- package/template/.opencode/agents/discovery.md +51 -51
- package/template/.opencode/agents/document.md +51 -51
- package/template/.opencode/agents/fixer.md +83 -82
- package/template/.opencode/agents/frontend.md +58 -58
- package/template/.opencode/agents/fullstack.md +84 -83
- package/template/.opencode/agents/initiator.md +74 -74
- package/template/.opencode/agents/manual-tester.md +107 -0
- package/template/.opencode/agents/orchestrator.md +116 -119
- package/template/.opencode/agents/pm.md +199 -199
- package/template/.opencode/agents/qa.md +66 -65
- package/template/.opencode/agents/reliability.md +48 -46
- package/template/.opencode/agents/security.md +107 -105
- package/template/.opencode/agents/sysarch.md +301 -301
- package/template/.opencode/agents/tester.md +100 -100
- package/template/.opencode/agents/toolsmith.md +77 -77
- package/template/.opencode/agents/ux-designer.md +45 -45
- package/template/.opencode/commands/build-feature.md +21 -21
- package/template/.opencode/commands/daily-standup.md +16 -16
- package/template/.opencode/commands/deliver-feature.md +16 -16
- package/template/.opencode/commands/harden-release.md +21 -21
- package/template/.opencode/commands/manual-test.md +18 -0
- package/template/.opencode/commands/plan-project.md +25 -25
- package/template/.opencode/commands/release.md +18 -18
- package/template/.opencode/commands/security-audit.md +19 -19
- package/template/.opencode/commands/setup-workspace.md +21 -21
- package/template/.opencode/commands/start-fix.md +17 -17
- package/template/.opencode/commands/test-feature.md +17 -17
- package/template/.opencode/skills/penetration-testing/SKILL.md +94 -94
- package/template/.opencode/skills/penetration-testing/references/automated-penetration-testing-framework.md +328 -328
- package/template/.opencode/skills/penetration-testing/references/burp-suite-automation-script.md +135 -135
- package/template/.opencode/skills/penetration-testing/scripts/security-checklist.sh +30 -30
- package/template/.opencode/skills/ui-ux-pro-max/SKILL.md +658 -658
- package/template/.opencode/skills/ui-ux-pro-max/data/_sync_all.py +414 -414
- package/template/.opencode/skills/ui-ux-pro-max/data/app-interface.csv +30 -30
- package/template/.opencode/skills/ui-ux-pro-max/data/design.csv +1775 -1775
- package/template/.opencode/skills/ui-ux-pro-max/data/draft.csv +1778 -1778
- package/template/.opencode/skills/ui-ux-pro-max/data/icons.csv +105 -105
- package/template/.opencode/skills/ui-ux-pro-max/data/products.csv +162 -162
- package/template/.opencode/skills/ui-ux-pro-max/data/react-performance.csv +45 -45
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/angular.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -53
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -56
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -53
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/laravel.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -53
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -59
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/react.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -61
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -51
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/threejs.csv +54 -54
- package/template/.opencode/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -50
- package/template/.opencode/skills/ui-ux-pro-max/data/typography.csv +74 -74
- package/template/.opencode/skills/ui-ux-pro-max/scripts/core.py +262 -262
- package/template/.opencode/skills/ui-ux-pro-max/scripts/design_system.py +1148 -1148
- package/template/AGENT_PERSONAS.md +595 -551
- package/template/GIT_STRUCTURE_GUIDE.md +270 -270
- package/template/PROJECT_README.example.md +81 -81
- package/template/QUICK-START.md +134 -131
- package/template/README.md +1942 -1919
- package/template/_gitignore +141 -141
- package/template/agent/workflows/_shared/change-management.md +70 -70
- package/template/agent/workflows/_shared/git-branch-management.md +25 -25
- package/template/agent/workflows/_shared/phases.md +88 -88
- package/template/agent/workflows/_shared/state-management.md +87 -87
- package/template/agent/workflows/_shared/work-depth.md +46 -46
- package/template/agent/workflows/analyst.md +75 -75
- package/template/agent/workflows/backend.md +61 -61
- package/template/agent/workflows/data-architect.md +43 -43
- package/template/agent/workflows/devops.md +44 -44
- package/template/agent/workflows/discovery.md +51 -51
- package/template/agent/workflows/document.md +51 -51
- package/template/agent/workflows/fixer.md +83 -82
- package/template/agent/workflows/frontend.md +58 -58
- package/template/agent/workflows/fullstack.md +84 -84
- package/template/agent/workflows/initiator.md +74 -74
- package/template/agent/workflows/manual-tester.md +103 -0
- package/template/agent/workflows/orchestrator.md +114 -114
- package/template/agent/workflows/pm.md +199 -199
- package/template/agent/workflows/qa.md +66 -66
- package/template/agent/workflows/reliability.md +48 -48
- package/template/agent/workflows/security.md +107 -107
- package/template/agent/workflows/sysarch.md +301 -301
- package/template/agent/workflows/tester.md +100 -100
- package/template/agent/workflows/toolsmith.md +77 -77
- package/template/agent/workflows/ux-designer.md +45 -45
- package/template/codes/.gitkeep +1 -1
- package/template/project_overview_example.md +54 -54
- package/template/schemas/adr.template.md +36 -36
- package/template/schemas/changelog.template.md +34 -34
- package/template/schemas/data-model.template.md +57 -57
- package/template/schemas/design-system.template.md +63 -63
- package/template/schemas/dev_log.template.md +20 -20
- package/template/schemas/product-ci.template.yml +50 -50
- package/template/schemas/requirements.template.md +64 -64
- package/template/schemas/security-standards.template.md +58 -58
- package/template/schemas/security_report.template.md +89 -89
- package/template/schemas/specification.template.md +57 -57
- package/template/schemas/style_guide.template.md +29 -29
- package/template/schemas/task_list.template.md +28 -28
- package/template/schemas/workspace-manifest.template.json +24 -24
- package/template/schemas/workspace-registry.json +94 -94
- package/template/skills-lock.json +11 -11
- package/template/specifications/.gitkeep +1 -1
- package/template/state/knowledge_base/.gitkeep +1 -1
- package/template/state/knowledge_base/requirements/.gitkeep +1 -1
- package/template/tests/.gitkeep +1 -1
- package/template/.agents/workflows/explorer.md +0 -78
- package/template/.agents/workflows/logger.md +0 -117
- package/template/.claude/settings.local.json +0 -35
- package/template/.claude/skills/find-skills/SKILL.md +0 -142
- package/template/.opencode/agents/explorer.md +0 -138
- package/template/.opencode/agents/logger.md +0 -143
package/template/.claude/skills/penetration-testing/references/burp-suite-automation-script.md
CHANGED
|
@@ -1,135 +1,135 @@
|
|
|
1
|
-
# Burp Suite Automation Script
|
|
2
|
-
|
|
3
|
-
## Burp Suite Automation Script
|
|
4
|
-
|
|
5
|
-
```javascript
|
|
6
|
-
// burp-automation.js - Node.js Burp Suite integration
|
|
7
|
-
const axios = require("axios");
|
|
8
|
-
const fs = require("fs").promises;
|
|
9
|
-
|
|
10
|
-
class BurpSuiteAutomation {
|
|
11
|
-
constructor(burpApiUrl = "http://127.0.0.1:1337") {
|
|
12
|
-
this.apiUrl = burpApiUrl;
|
|
13
|
-
this.taskId = null;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
async startScan(targetUrl) {
|
|
17
|
-
console.log(`Starting Burp scan for ${targetUrl}`);
|
|
18
|
-
|
|
19
|
-
const scanConfig = {
|
|
20
|
-
urls: [targetUrl],
|
|
21
|
-
scan_configurations: [
|
|
22
|
-
{
|
|
23
|
-
name: "Crawl and Audit - Lightweight",
|
|
24
|
-
type: "NamedConfiguration",
|
|
25
|
-
},
|
|
26
|
-
],
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
try {
|
|
30
|
-
const response = await axios.post(`${this.apiUrl}/v0.1/scan`, scanConfig);
|
|
31
|
-
|
|
32
|
-
this.taskId = response.data.task_id;
|
|
33
|
-
console.log(`Scan started with task ID: ${this.taskId}`);
|
|
34
|
-
|
|
35
|
-
return this.taskId;
|
|
36
|
-
} catch (error) {
|
|
37
|
-
console.error("Failed to start scan:", error.message);
|
|
38
|
-
throw error;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
async getScanStatus() {
|
|
43
|
-
if (!this.taskId) {
|
|
44
|
-
throw new Error("No active scan task");
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const response = await axios.get(`${this.apiUrl}/v0.1/scan/${this.taskId}`);
|
|
48
|
-
|
|
49
|
-
return {
|
|
50
|
-
taskId: this.taskId,
|
|
51
|
-
status: response.data.scan_status,
|
|
52
|
-
metrics: response.data.scan_metrics,
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
async waitForCompletion() {
|
|
57
|
-
console.log("Waiting for scan to complete...");
|
|
58
|
-
|
|
59
|
-
while (true) {
|
|
60
|
-
const status = await this.getScanStatus();
|
|
61
|
-
|
|
62
|
-
console.log(`Progress: ${status.metrics.crawl_requests_made} requests`);
|
|
63
|
-
|
|
64
|
-
if (status.status === "succeeded") {
|
|
65
|
-
console.log("Scan completed successfully");
|
|
66
|
-
break;
|
|
67
|
-
} else if (status.status === "failed") {
|
|
68
|
-
throw new Error("Scan failed");
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
await new Promise((resolve) => setTimeout(resolve, 10000));
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
async getIssues() {
|
|
76
|
-
if (!this.taskId) {
|
|
77
|
-
throw new Error("No active scan task");
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
const response = await axios.get(
|
|
81
|
-
`${this.apiUrl}/v0.1/scan/${this.taskId}/issues`,
|
|
82
|
-
);
|
|
83
|
-
|
|
84
|
-
return response.data.issues;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
async generateReport() {
|
|
88
|
-
const issues = await this.getIssues();
|
|
89
|
-
|
|
90
|
-
const report = {
|
|
91
|
-
summary: {
|
|
92
|
-
high: 0,
|
|
93
|
-
medium: 0,
|
|
94
|
-
low: 0,
|
|
95
|
-
info: 0,
|
|
96
|
-
},
|
|
97
|
-
issues: [],
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
for (const issue of issues) {
|
|
101
|
-
report.summary[issue.severity.toLowerCase()]++;
|
|
102
|
-
|
|
103
|
-
report.issues.push({
|
|
104
|
-
severity: issue.severity,
|
|
105
|
-
confidence: issue.confidence,
|
|
106
|
-
name: issue.name,
|
|
107
|
-
path: issue.path,
|
|
108
|
-
description: issue.description,
|
|
109
|
-
remediation: issue.remediation,
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
await fs.writeFile("burp-report.json", JSON.stringify(report, null, 2));
|
|
114
|
-
|
|
115
|
-
return report;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
// Usage
|
|
120
|
-
async function runBurpScan() {
|
|
121
|
-
const burp = new BurpSuiteAutomation();
|
|
122
|
-
|
|
123
|
-
await burp.startScan("https://example.com");
|
|
124
|
-
await burp.waitForCompletion();
|
|
125
|
-
|
|
126
|
-
const report = await burp.generateReport();
|
|
127
|
-
|
|
128
|
-
console.log("\n=== Burp Suite Scan Results ===");
|
|
129
|
-
console.log(`High: ${report.summary.high}`);
|
|
130
|
-
console.log(`Medium: ${report.summary.medium}`);
|
|
131
|
-
console.log(`Low: ${report.summary.low}`);
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
runBurpScan().catch(console.error);
|
|
135
|
-
```
|
|
1
|
+
# Burp Suite Automation Script
|
|
2
|
+
|
|
3
|
+
## Burp Suite Automation Script
|
|
4
|
+
|
|
5
|
+
```javascript
|
|
6
|
+
// burp-automation.js - Node.js Burp Suite integration
|
|
7
|
+
const axios = require("axios");
|
|
8
|
+
const fs = require("fs").promises;
|
|
9
|
+
|
|
10
|
+
class BurpSuiteAutomation {
|
|
11
|
+
constructor(burpApiUrl = "http://127.0.0.1:1337") {
|
|
12
|
+
this.apiUrl = burpApiUrl;
|
|
13
|
+
this.taskId = null;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
async startScan(targetUrl) {
|
|
17
|
+
console.log(`Starting Burp scan for ${targetUrl}`);
|
|
18
|
+
|
|
19
|
+
const scanConfig = {
|
|
20
|
+
urls: [targetUrl],
|
|
21
|
+
scan_configurations: [
|
|
22
|
+
{
|
|
23
|
+
name: "Crawl and Audit - Lightweight",
|
|
24
|
+
type: "NamedConfiguration",
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
try {
|
|
30
|
+
const response = await axios.post(`${this.apiUrl}/v0.1/scan`, scanConfig);
|
|
31
|
+
|
|
32
|
+
this.taskId = response.data.task_id;
|
|
33
|
+
console.log(`Scan started with task ID: ${this.taskId}`);
|
|
34
|
+
|
|
35
|
+
return this.taskId;
|
|
36
|
+
} catch (error) {
|
|
37
|
+
console.error("Failed to start scan:", error.message);
|
|
38
|
+
throw error;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
async getScanStatus() {
|
|
43
|
+
if (!this.taskId) {
|
|
44
|
+
throw new Error("No active scan task");
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
const response = await axios.get(`${this.apiUrl}/v0.1/scan/${this.taskId}`);
|
|
48
|
+
|
|
49
|
+
return {
|
|
50
|
+
taskId: this.taskId,
|
|
51
|
+
status: response.data.scan_status,
|
|
52
|
+
metrics: response.data.scan_metrics,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
async waitForCompletion() {
|
|
57
|
+
console.log("Waiting for scan to complete...");
|
|
58
|
+
|
|
59
|
+
while (true) {
|
|
60
|
+
const status = await this.getScanStatus();
|
|
61
|
+
|
|
62
|
+
console.log(`Progress: ${status.metrics.crawl_requests_made} requests`);
|
|
63
|
+
|
|
64
|
+
if (status.status === "succeeded") {
|
|
65
|
+
console.log("Scan completed successfully");
|
|
66
|
+
break;
|
|
67
|
+
} else if (status.status === "failed") {
|
|
68
|
+
throw new Error("Scan failed");
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
await new Promise((resolve) => setTimeout(resolve, 10000));
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
async getIssues() {
|
|
76
|
+
if (!this.taskId) {
|
|
77
|
+
throw new Error("No active scan task");
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const response = await axios.get(
|
|
81
|
+
`${this.apiUrl}/v0.1/scan/${this.taskId}/issues`,
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
return response.data.issues;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
async generateReport() {
|
|
88
|
+
const issues = await this.getIssues();
|
|
89
|
+
|
|
90
|
+
const report = {
|
|
91
|
+
summary: {
|
|
92
|
+
high: 0,
|
|
93
|
+
medium: 0,
|
|
94
|
+
low: 0,
|
|
95
|
+
info: 0,
|
|
96
|
+
},
|
|
97
|
+
issues: [],
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
for (const issue of issues) {
|
|
101
|
+
report.summary[issue.severity.toLowerCase()]++;
|
|
102
|
+
|
|
103
|
+
report.issues.push({
|
|
104
|
+
severity: issue.severity,
|
|
105
|
+
confidence: issue.confidence,
|
|
106
|
+
name: issue.name,
|
|
107
|
+
path: issue.path,
|
|
108
|
+
description: issue.description,
|
|
109
|
+
remediation: issue.remediation,
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
await fs.writeFile("burp-report.json", JSON.stringify(report, null, 2));
|
|
114
|
+
|
|
115
|
+
return report;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// Usage
|
|
120
|
+
async function runBurpScan() {
|
|
121
|
+
const burp = new BurpSuiteAutomation();
|
|
122
|
+
|
|
123
|
+
await burp.startScan("https://example.com");
|
|
124
|
+
await burp.waitForCompletion();
|
|
125
|
+
|
|
126
|
+
const report = await burp.generateReport();
|
|
127
|
+
|
|
128
|
+
console.log("\n=== Burp Suite Scan Results ===");
|
|
129
|
+
console.log(`High: ${report.summary.high}`);
|
|
130
|
+
console.log(`Medium: ${report.summary.medium}`);
|
|
131
|
+
console.log(`Low: ${report.summary.low}`);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
runBurpScan().catch(console.error);
|
|
135
|
+
```
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
# security-checklist.sh - Generate a security review checklist
|
|
3
|
-
# Usage: ./security-checklist.sh [--output checklist.md]
|
|
4
|
-
|
|
5
|
-
set -euo pipefail
|
|
6
|
-
|
|
7
|
-
OUTPUT="${{1:-/dev/stdout}}"
|
|
8
|
-
|
|
9
|
-
cat > "$OUTPUT" << 'CHECKLIST'
|
|
10
|
-
# Security Review Checklist
|
|
11
|
-
|
|
12
|
-
## Authentication & Authorization
|
|
13
|
-
- [ ] All endpoints require authentication
|
|
14
|
-
- [ ] Role-based access control implemented
|
|
15
|
-
- [ ] Session management is secure
|
|
16
|
-
|
|
17
|
-
## Input Validation
|
|
18
|
-
- [ ] All user inputs are validated
|
|
19
|
-
- [ ] SQL injection prevention
|
|
20
|
-
- [ ] XSS prevention
|
|
21
|
-
|
|
22
|
-
## Data Protection
|
|
23
|
-
- [ ] Sensitive data encrypted at rest
|
|
24
|
-
- [ ] Sensitive data encrypted in transit
|
|
25
|
-
- [ ] PII handling compliant
|
|
26
|
-
|
|
27
|
-
## TODO: Add domain-specific security checks
|
|
28
|
-
CHECKLIST
|
|
29
|
-
|
|
30
|
-
echo "Checklist generated: $OUTPUT" >&2
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# security-checklist.sh - Generate a security review checklist
|
|
3
|
+
# Usage: ./security-checklist.sh [--output checklist.md]
|
|
4
|
+
|
|
5
|
+
set -euo pipefail
|
|
6
|
+
|
|
7
|
+
OUTPUT="${{1:-/dev/stdout}}"
|
|
8
|
+
|
|
9
|
+
cat > "$OUTPUT" << 'CHECKLIST'
|
|
10
|
+
# Security Review Checklist
|
|
11
|
+
|
|
12
|
+
## Authentication & Authorization
|
|
13
|
+
- [ ] All endpoints require authentication
|
|
14
|
+
- [ ] Role-based access control implemented
|
|
15
|
+
- [ ] Session management is secure
|
|
16
|
+
|
|
17
|
+
## Input Validation
|
|
18
|
+
- [ ] All user inputs are validated
|
|
19
|
+
- [ ] SQL injection prevention
|
|
20
|
+
- [ ] XSS prevention
|
|
21
|
+
|
|
22
|
+
## Data Protection
|
|
23
|
+
- [ ] Sensitive data encrypted at rest
|
|
24
|
+
- [ ] Sensitive data encrypted in transit
|
|
25
|
+
- [ ] PII handling compliant
|
|
26
|
+
|
|
27
|
+
## TODO: Add domain-specific security checks
|
|
28
|
+
CHECKLIST
|
|
29
|
+
|
|
30
|
+
echo "Checklist generated: $OUTPUT" >&2
|