@vantagesec/socc 0.1.13 → 0.1.14
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 +8 -8
- package/dist/cli.mjs +10700 -10797
- package/package.json +7 -8
- package/scripts/bootstrap-socc-soul.mjs +23 -1
- package/socc-canonical/.agents/generated/socc-agent-manifest.json +0 -231
- package/socc-canonical/.agents/generated/socc-agent.md +0 -256
- package/socc-canonical/.agents/rules/AGENT.md +0 -109
- package/socc-canonical/.agents/rules/AQL_REFERENCE.md +0 -40
- package/socc-canonical/.agents/rules/MEMORY.md +0 -19
- package/socc-canonical/.agents/rules/TOOLS.md +0 -48
- package/socc-canonical/.agents/soc-copilot/AGENTS.md +0 -28
- package/socc-canonical/.agents/soc-copilot/MEMORY.md +0 -20
- package/socc-canonical/.agents/soc-copilot/SKILL.md +0 -51
- package/socc-canonical/.agents/soc-copilot/SOUL.md +0 -31
- package/socc-canonical/.agents/soc-copilot/TOOLS.md +0 -33
- package/socc-canonical/.agents/soc-copilot/USER.md +0 -31
- package/socc-canonical/.agents/soc-copilot/identity.md +0 -7
- package/socc-canonical/.agents/soc-copilot/references/evidence-rules.md +0 -30
- package/socc-canonical/.agents/soc-copilot/references/intelligence-source-registry.md +0 -32
- package/socc-canonical/.agents/soc-copilot/references/ioc-extraction.md +0 -25
- package/socc-canonical/.agents/soc-copilot/references/knowledge-ingestion-policy.md +0 -34
- package/socc-canonical/.agents/soc-copilot/references/mitre-guidance.md +0 -21
- package/socc-canonical/.agents/soc-copilot/references/output-contract.md +0 -31
- package/socc-canonical/.agents/soc-copilot/references/security-json-patterns.md +0 -129
- package/socc-canonical/.agents/soc-copilot/references/telemetry-investigation-patterns.md +0 -39
- package/socc-canonical/.agents/soc-copilot/schemas/analysis_response.json +0 -119
- package/socc-canonical/.agents/soc-copilot/skills/code-review-excellence/SKILL.md +0 -538
- package/socc-canonical/.agents/soc-copilot/skills/cybersecurity-analyst/QUICK_REFERENCE.md +0 -263
- package/socc-canonical/.agents/soc-copilot/skills/cybersecurity-analyst/README.md +0 -243
- package/socc-canonical/.agents/soc-copilot/skills/cybersecurity-analyst/SKILL.md +0 -1707
- package/socc-canonical/.agents/soc-copilot/skills/cybersecurity-analyst/tests/quiz.md +0 -472
- package/socc-canonical/.agents/soc-copilot/skills/data-visualization/SKILL.md +0 -304
- package/socc-canonical/.agents/soc-copilot/skills/deep-research/SKILL.md +0 -192
- package/socc-canonical/.agents/soc-copilot/skills/excel-analysis/SKILL.md +0 -247
- package/socc-canonical/.agents/soc-copilot/skills/find-skills/SKILL.md +0 -133
- package/socc-canonical/.agents/soc-copilot/skills/humanizer/README.md +0 -120
- package/socc-canonical/.agents/soc-copilot/skills/humanizer/SKILL.md +0 -439
- package/socc-canonical/.agents/soc-copilot/skills/malware-behavior/SKILL.md +0 -54
- package/socc-canonical/.agents/soc-copilot/skills/mitre/SKILL.md +0 -200
- package/socc-canonical/.agents/soc-copilot/skills/observability-logs-search/SKILL.md +0 -237
- package/socc-canonical/.agents/soc-copilot/skills/observability-logs-search/references/log-search-reference.md +0 -76
- package/socc-canonical/.agents/soc-copilot/skills/payload-triage/SKILL.md +0 -53
- package/socc-canonical/.agents/soc-copilot/skills/phishing-analysis/SKILL.md +0 -51
- package/socc-canonical/.agents/soc-copilot/skills/prd/SKILL.md +0 -143
- package/socc-canonical/.agents/soc-copilot/skills/remembering-conversations/MCP-TOOLS.md +0 -137
- package/socc-canonical/.agents/soc-copilot/skills/remembering-conversations/SKILL.md +0 -65
- package/socc-canonical/.agents/soc-copilot/skills/sequential-thinking/README.md +0 -118
- package/socc-canonical/.agents/soc-copilot/skills/sequential-thinking/SKILL.md +0 -93
- package/socc-canonical/.agents/soc-copilot/skills/sequential-thinking/references/advanced.md +0 -122
- package/socc-canonical/.agents/soc-copilot/skills/sequential-thinking/references/examples.md +0 -274
- package/socc-canonical/.agents/soc-copilot/skills/soc-generalist/SKILL.md +0 -53
- package/socc-canonical/.agents/soc-copilot/skills/suspicious-url/SKILL.md +0 -51
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/CREATION-LOG.md +0 -119
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/SKILL.md +0 -296
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/condition-based-waiting-example.ts +0 -158
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/condition-based-waiting.md +0 -115
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/defense-in-depth.md +0 -122
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/find-polluter.sh +0 -63
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/root-cause-tracing.md +0 -169
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/test-academic.md +0 -14
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/test-pressure-1.md +0 -58
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/test-pressure-2.md +0 -68
- package/socc-canonical/.agents/soc-copilot/skills/systematic-debugging/test-pressure-3.md +0 -69
- package/socc-canonical/.agents/soc-copilot/skills/translation-expertise/SKILL.md +0 -284
- package/socc-canonical/.agents/soc-copilot/skills/translation-expertise/chinese-traditional.md +0 -535
- package/socc-canonical/.agents/soc-copilot/skills/translation-expertise/english.md +0 -372
- package/socc-canonical/.agents/soc-copilot/skills/translation-expertise/japanese.md +0 -515
- package/socc-canonical/.agents/soc-copilot/skills/translation-expertise/tools-resources.md +0 -527
- package/socc-canonical/.agents/soc-copilot/skills/translation-expertise/translation-challenges.md +0 -603
- package/socc-canonical/.agents/soc-copilot/skills/web-search/SKILL.md +0 -322
- package/socc-canonical/.agents/soc-copilot/skills.md +0 -21
- package/socc-canonical/.agents/workflows/SOP.md +0 -137
- package/socc-canonical/README.md +0 -10
- /package/{.claude → .socc}/agents/socc.md +0 -0
- /package/{.claude → .socc}/references/evidence-rules.md +0 -0
- /package/{.claude → .socc}/references/intelligence-source-registry.md +0 -0
- /package/{.claude → .socc}/references/ioc-extraction.md +0 -0
- /package/{.claude → .socc}/references/knowledge-ingestion-policy.md +0 -0
- /package/{.claude → .socc}/references/mitre-guidance.md +0 -0
- /package/{.claude → .socc}/references/output-contract.md +0 -0
- /package/{.claude → .socc}/references/security-json-patterns.md +0 -0
- /package/{.claude → .socc}/references/telemetry-investigation-patterns.md +0 -0
- /package/{.claude → .socc}/rules/socc-business-rules.md +0 -0
- /package/{.claude → .socc}/skills/code-review-excellence/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/cybersecurity-analyst/QUICK_REFERENCE.md +0 -0
- /package/{.claude → .socc}/skills/cybersecurity-analyst/README.md +0 -0
- /package/{.claude → .socc}/skills/cybersecurity-analyst/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/cybersecurity-analyst/tests/quiz.md +0 -0
- /package/{.claude → .socc}/skills/data-visualization/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/deep-research/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/excel-analysis/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/find-skills/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/humanizer/README.md +0 -0
- /package/{.claude → .socc}/skills/humanizer/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/malware-behavior/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/mitre/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/observability-logs-search/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/observability-logs-search/references/log-search-reference.md +0 -0
- /package/{.claude → .socc}/skills/payload-triage/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/phishing-analysis/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/prd/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/remembering-conversations/MCP-TOOLS.md +0 -0
- /package/{.claude → .socc}/skills/remembering-conversations/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/sequential-thinking/README.md +0 -0
- /package/{.claude → .socc}/skills/sequential-thinking/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/sequential-thinking/references/advanced.md +0 -0
- /package/{.claude → .socc}/skills/sequential-thinking/references/examples.md +0 -0
- /package/{.claude → .socc}/skills/soc-generalist/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/suspicious-url/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/CREATION-LOG.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/condition-based-waiting-example.ts +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/condition-based-waiting.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/defense-in-depth.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/find-polluter.sh +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/root-cause-tracing.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/test-academic.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/test-pressure-1.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/test-pressure-2.md +0 -0
- /package/{.claude → .socc}/skills/systematic-debugging/test-pressure-3.md +0 -0
- /package/{.claude → .socc}/skills/translation-expertise/SKILL.md +0 -0
- /package/{.claude → .socc}/skills/translation-expertise/chinese-traditional.md +0 -0
- /package/{.claude → .socc}/skills/translation-expertise/english.md +0 -0
- /package/{.claude → .socc}/skills/translation-expertise/japanese.md +0 -0
- /package/{.claude → .socc}/skills/translation-expertise/tools-resources.md +0 -0
- /package/{.claude → .socc}/skills/translation-expertise/translation-challenges.md +0 -0
- /package/{.claude → .socc}/skills/web-search/SKILL.md +0 -0
|
@@ -1,472 +0,0 @@
|
|
|
1
|
-
# Cybersecurity Analyst - Domain Validation Quiz
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
This quiz validates that the cybersecurity analyst applies security frameworks correctly, identifies vulnerabilities and threats, and provides well-grounded analysis. Each scenario requires demonstration of security reasoning, threat modeling, and evidence-based risk assessment.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## Scenario 1: Zero-Day Vulnerability Disclosure
|
|
10
|
-
|
|
11
|
-
**Event Description**:
|
|
12
|
-
A security researcher discovers a remote code execution vulnerability in a widely-used web server software (nginx) affecting versions from the past 3 years. The vulnerability allows attackers to execute arbitrary code by sending specially crafted HTTP headers. The researcher has not yet publicly disclosed the vulnerability but has contacted the vendor. The vendor acknowledges the issue and estimates 2 weeks for a patch. The researcher debates immediate public disclosure versus coordinated disclosure.
|
|
13
|
-
|
|
14
|
-
**Analysis Task**:
|
|
15
|
-
Analyze the vulnerability disclosure decision and broader security implications.
|
|
16
|
-
|
|
17
|
-
### Expected Analysis Elements
|
|
18
|
-
|
|
19
|
-
- [ ] **Vulnerability Assessment**:
|
|
20
|
-
- Remote Code Execution (RCE) - highest severity class
|
|
21
|
-
- CVSS scoring framework (likely 9.0+ critical)
|
|
22
|
-
- Attack vector: Network-based, no authentication required
|
|
23
|
-
- Impact: Complete system compromise
|
|
24
|
-
|
|
25
|
-
- [ ] **Threat Modeling**:
|
|
26
|
-
- Attack surface: All exposed nginx servers
|
|
27
|
-
- Threat actors: Nation-state APTs, ransomware groups, opportunistic attackers
|
|
28
|
-
- Time-to-exploit after disclosure (hours to days)
|
|
29
|
-
- Weaponization potential for botnets, ransomware
|
|
30
|
-
|
|
31
|
-
- [ ] **Disclosure Trade-offs**:
|
|
32
|
-
- **Immediate disclosure**: Public awareness, but attackers can exploit before patches
|
|
33
|
-
- **Coordinated disclosure**: Vendor time to patch, but vulnerability remains secret longer
|
|
34
|
-
- **Responsible disclosure**: 90-day window standard
|
|
35
|
-
- Risk of independent discovery or leak
|
|
36
|
-
|
|
37
|
-
- [ ] **Risk Assessment**:
|
|
38
|
-
- Scope: Millions of servers potentially affected
|
|
39
|
-
- Exploitability: High (network-accessible, no auth required)
|
|
40
|
-
- Impact: Data breach, ransomware, botnet recruitment
|
|
41
|
-
- Cascading effects: Supply chain, dependent services
|
|
42
|
-
|
|
43
|
-
- [ ] **Mitigation Strategies**:
|
|
44
|
-
- Immediate: WAF rules, network segmentation, IDS signatures
|
|
45
|
-
- Short-term: Vendor patch deployment
|
|
46
|
-
- Long-term: Vulnerability management programs, version lifecycle
|
|
47
|
-
- Compensating controls during patch window
|
|
48
|
-
|
|
49
|
-
- [ ] **Stakeholder Analysis**:
|
|
50
|
-
- Vendor: Reputation risk, legal liability
|
|
51
|
-
- Organizations: Patch management burden, potential breach
|
|
52
|
-
- Researcher: Ethical obligations, legal protections (CFAA concerns)
|
|
53
|
-
- Public: Right to know vs. protection from exploitation
|
|
54
|
-
|
|
55
|
-
- [ ] **Historical Context**:
|
|
56
|
-
- Heartbleed (OpenSSL 2014): Mass exploitation, industry response
|
|
57
|
-
- EternalBlue (SMB 2017): NSA exploit leaked, WannaCry ransomware
|
|
58
|
-
- Log4Shell (2021): Rapid weaponization, widespread impact
|
|
59
|
-
- Full disclosure vs. responsible disclosure debates
|
|
60
|
-
|
|
61
|
-
### Evaluation Criteria
|
|
62
|
-
|
|
63
|
-
- **Domain Accuracy** (0-10): Correct application of vulnerability assessment, CVSS, threat modeling
|
|
64
|
-
- **Analytical Depth** (0-10): Thoroughness of risk analysis, disclosure trade-offs, mitigation strategies
|
|
65
|
-
- **Insight Specificity** (0-10): Clear recommendations, specific mitigation measures
|
|
66
|
-
- **Historical Grounding** (0-10): References to precedent vulnerabilities, disclosure outcomes
|
|
67
|
-
- **Reasoning Clarity** (0-10): Logical flow from threat assessment to recommendations
|
|
68
|
-
|
|
69
|
-
**Minimum Passing Score**: 35/50
|
|
70
|
-
|
|
71
|
-
---
|
|
72
|
-
|
|
73
|
-
## Scenario 2: Ransomware Incident Response
|
|
74
|
-
|
|
75
|
-
**Event Description**:
|
|
76
|
-
At 3:00 AM, a hospital's IT systems begin displaying ransomware encryption screens. Initial investigation reveals: 60% of workstations encrypted, file servers compromised, backup systems partially affected. The ransom note demands $5 million in cryptocurrency for decryption keys, with 48-hour deadline. Electronic health records are inaccessible, affecting patient care. Law enforcement has been notified. Backups from 48 hours ago are available but potentially infected.
|
|
77
|
-
|
|
78
|
-
**Analysis Task**:
|
|
79
|
-
Analyze the incident and develop response strategy.
|
|
80
|
-
|
|
81
|
-
### Expected Analysis Elements
|
|
82
|
-
|
|
83
|
-
- [ ] **Incident Classification**:
|
|
84
|
-
- Ransomware attack (encryption malware)
|
|
85
|
-
- Critical infrastructure target (healthcare)
|
|
86
|
-
- Active incident requiring immediate response
|
|
87
|
-
- Potential data exfiltration (double extortion)
|
|
88
|
-
|
|
89
|
-
- [ ] **Immediate Response Actions**:
|
|
90
|
-
- Containment: Isolate affected systems, segment networks
|
|
91
|
-
- Preserve evidence: Forensic imaging, log collection
|
|
92
|
-
- Activate incident response team
|
|
93
|
-
- Communication protocols (internal, external, regulatory)
|
|
94
|
-
- Patient safety prioritization
|
|
95
|
-
|
|
96
|
-
- [ ] **Technical Analysis**:
|
|
97
|
-
- Malware identification (strain, variant, encryption method)
|
|
98
|
-
- Initial access vector (phishing, vulnerability, credential compromise)
|
|
99
|
-
- Lateral movement analysis (how did it spread)
|
|
100
|
-
- Persistence mechanisms
|
|
101
|
-
- Data exfiltration assessment
|
|
102
|
-
|
|
103
|
-
- [ ] **Decision Framework: Pay or Not Pay**:
|
|
104
|
-
- **Against payment**: Funds criminals, no guarantee of decryption, legal concerns (OFAC sanctions)
|
|
105
|
-
- **For payment**: Immediate restoration, patient care continuity
|
|
106
|
-
- Alternative: Restore from backups (if clean and recent)
|
|
107
|
-
- Insurance coverage considerations
|
|
108
|
-
- Negotiation dynamics
|
|
109
|
-
|
|
110
|
-
- [ ] **Recovery Strategy**:
|
|
111
|
-
- Backup restoration plan (verify integrity first)
|
|
112
|
-
- System rebuild vs. decrypt decision
|
|
113
|
-
- Critical services prioritization (life-safety first)
|
|
114
|
-
- Validation and testing before production
|
|
115
|
-
- Timeline and resource requirements
|
|
116
|
-
|
|
117
|
-
- [ ] **Regulatory and Legal**:
|
|
118
|
-
- HIPAA breach notification (HHS, patients, media)
|
|
119
|
-
- FBI/CISA reporting requirements
|
|
120
|
-
- State attorney general notifications
|
|
121
|
-
- Civil liability concerns
|
|
122
|
-
- Insurance claims
|
|
123
|
-
|
|
124
|
-
- [ ] **Post-Incident Improvements**:
|
|
125
|
-
- Root cause analysis
|
|
126
|
-
- Security control gaps (MFA, network segmentation, backup isolation)
|
|
127
|
-
- User training (phishing awareness)
|
|
128
|
-
- Incident response plan refinement
|
|
129
|
-
|
|
130
|
-
- [ ] **Historical Context**:
|
|
131
|
-
- WannaCry (2017): NHS impact, global disruption
|
|
132
|
-
- NotPetya (2017): Masquerading as ransomware, destructive intent
|
|
133
|
-
- Colonial Pipeline (2021): Critical infrastructure, payment decision
|
|
134
|
-
- Healthcare sector targeting trends
|
|
135
|
-
|
|
136
|
-
### Evaluation Criteria
|
|
137
|
-
|
|
138
|
-
- **Domain Accuracy** (0-10): Correct application of incident response framework, containment strategies
|
|
139
|
-
- **Analytical Depth** (0-10): Thoroughness of technical analysis, decision framework, recovery planning
|
|
140
|
-
- **Insight Specificity** (0-10): Clear action priorities, specific containment measures
|
|
141
|
-
- **Historical Grounding** (0-10): References to similar incidents, industry best practices
|
|
142
|
-
- **Reasoning Clarity** (0-10): Logical prioritization and decision-making process
|
|
143
|
-
|
|
144
|
-
**Minimum Passing Score**: 35/50
|
|
145
|
-
|
|
146
|
-
---
|
|
147
|
-
|
|
148
|
-
## Scenario 3: Cloud Infrastructure Misconfiguration
|
|
149
|
-
|
|
150
|
-
**Event Description**:
|
|
151
|
-
A security audit reveals that a company's AWS S3 bucket containing customer data (names, emails, purchase history) has been publicly accessible for 8 months. The bucket stored logs and analytics data from the company's e-commerce platform. Web scraping evidence suggests automated bots have been indexing public S3 buckets and may have discovered this data. No evidence of malicious use yet, but data exposure is confirmed. The company has 50,000 active customers.
|
|
152
|
-
|
|
153
|
-
**Analysis Task**:
|
|
154
|
-
Analyze the data breach scenario and response requirements.
|
|
155
|
-
|
|
156
|
-
### Expected Analysis Elements
|
|
157
|
-
|
|
158
|
-
- [ ] **Incident Classification**:
|
|
159
|
-
- Data breach (unauthorized exposure of PII)
|
|
160
|
-
- Misconfiguration vulnerability (human error)
|
|
161
|
-
- Exposure duration: 8 months
|
|
162
|
-
- Scope: 50,000 customers
|
|
163
|
-
|
|
164
|
-
- [ ] **Technical Root Cause**:
|
|
165
|
-
- S3 bucket policy misconfiguration (public read permissions)
|
|
166
|
-
- Lack of access controls and monitoring
|
|
167
|
-
- Infrastructure-as-Code (IaC) review gap
|
|
168
|
-
- Missing automated compliance checks
|
|
169
|
-
|
|
170
|
-
- [ ] **Data Sensitivity Assessment**:
|
|
171
|
-
- PII exposed: Names, emails, purchase history
|
|
172
|
-
- Regulatory classification: Personal data under GDPR, CCPA
|
|
173
|
-
- Potential harms: Phishing, identity theft, competitive intelligence
|
|
174
|
-
- Data minimization principle violation
|
|
175
|
-
|
|
176
|
-
- [ ] **Breach Notification Requirements**:
|
|
177
|
-
- **GDPR**: 72-hour notification to supervisory authority
|
|
178
|
-
- **CCPA**: Consumer notification without unreasonable delay
|
|
179
|
-
- **State laws**: Varies by state (e.g., California, New York)
|
|
180
|
-
- Affected individual notification
|
|
181
|
-
- Credit monitoring offerings (depending on data types)
|
|
182
|
-
|
|
183
|
-
- [ ] **Risk Assessment**:
|
|
184
|
-
- Likelihood of exploitation: High (bot indexing confirmed)
|
|
185
|
-
- Impact severity: Moderate (no financial data, but PII exposed)
|
|
186
|
-
- Reputational damage: Significant (customer trust erosion)
|
|
187
|
-
- Regulatory penalties: GDPR fines up to 4% revenue
|
|
188
|
-
- Civil litigation risk: Class action potential
|
|
189
|
-
|
|
190
|
-
- [ ] **Remediation Actions**:
|
|
191
|
-
- Immediate: Restrict bucket access, audit all other buckets
|
|
192
|
-
- Short-term: Implement S3 bucket policies, AWS Config rules
|
|
193
|
-
- Long-term: Infrastructure security review, IaC validation, least privilege
|
|
194
|
-
- Monitoring: CloudTrail logging, automated compliance scanning
|
|
195
|
-
|
|
196
|
-
- [ ] **Defense in Depth Failures**:
|
|
197
|
-
- Preventive controls: IAM policies, bucket policies
|
|
198
|
-
- Detective controls: AWS Config, CloudTrail monitoring
|
|
199
|
-
- Corrective controls: Automated remediation
|
|
200
|
-
- Administrative controls: Security training, change management
|
|
201
|
-
|
|
202
|
-
- [ ] **Historical Context**:
|
|
203
|
-
- Capital One breach (2019): S3 misconfiguration, SSRF vulnerability
|
|
204
|
-
- Uber data breach (2016): S3 credentials exposed on GitHub
|
|
205
|
-
- Verizon/NICE Systems (2017): 14M customer records exposed via S3
|
|
206
|
-
- Industry pattern: Misconfigurations are leading cloud breach cause
|
|
207
|
-
|
|
208
|
-
### Evaluation Criteria
|
|
209
|
-
|
|
210
|
-
- **Domain Accuracy** (0-10): Correct application of breach notification requirements, cloud security principles
|
|
211
|
-
- **Analytical Depth** (0-10): Thoroughness of root cause, risk assessment, remediation strategy
|
|
212
|
-
- **Insight Specificity** (0-10): Clear notification timeline, specific remediation measures
|
|
213
|
-
- **Historical Grounding** (0-10): References to similar cloud breaches, regulatory outcomes
|
|
214
|
-
- **Reasoning Clarity** (0-10): Logical flow from incident to response to prevention
|
|
215
|
-
|
|
216
|
-
**Minimum Passing Score**: 35/50
|
|
217
|
-
|
|
218
|
-
---
|
|
219
|
-
|
|
220
|
-
## Scenario 4: Supply Chain Attack via Dependency
|
|
221
|
-
|
|
222
|
-
**Event Description**:
|
|
223
|
-
A popular npm package (10 million weekly downloads) used in thousands of applications releases version 2.3.5 containing malicious code. The code exfiltrates environment variables (potentially including API keys, credentials) to an attacker-controlled server. The malicious version was published after the maintainer's account was compromised through credential stuffing. The package remained compromised for 72 hours before detection. Your organization uses this package in 15 production applications.
|
|
224
|
-
|
|
225
|
-
**Analysis Task**:
|
|
226
|
-
Analyze the supply chain attack and organizational response.
|
|
227
|
-
|
|
228
|
-
### Expected Analysis Elements
|
|
229
|
-
|
|
230
|
-
- [ ] **Attack Classification**:
|
|
231
|
-
- Supply chain attack (software supply chain)
|
|
232
|
-
- Dependency confusion/poisoning variant
|
|
233
|
-
- Account takeover as initial access
|
|
234
|
-
- Widespread impact (thousands of downstream users)
|
|
235
|
-
|
|
236
|
-
- [ ] **Attack Vector Analysis**:
|
|
237
|
-
- Initial access: Credential stuffing (poor password hygiene, no MFA)
|
|
238
|
-
- Malicious payload: Environment variable exfiltration
|
|
239
|
-
- Distribution: NPM package manager, automatic updates
|
|
240
|
-
- Persistence: Semver auto-update rules (^2.3.0 pulls 2.3.5)
|
|
241
|
-
|
|
242
|
-
- [ ] **Blast Radius Assessment**:
|
|
243
|
-
- Direct impact: 10M weekly downloads
|
|
244
|
-
- Downstream: Thousands of applications
|
|
245
|
-
- Your organization: 15 production applications affected
|
|
246
|
-
- Data at risk: API keys, database credentials, secrets
|
|
247
|
-
- Lateral movement potential: Compromised credentials enable further attacks
|
|
248
|
-
|
|
249
|
-
- [ ] **Immediate Response**:
|
|
250
|
-
- Identify affected applications (dependency tree analysis)
|
|
251
|
-
- Rotate all potentially exposed credentials
|
|
252
|
-
- Downgrade to last known good version (2.3.4)
|
|
253
|
-
- Network forensics: Check for data exfiltration
|
|
254
|
-
- Incident response activation
|
|
255
|
-
|
|
256
|
-
- [ ] **Credential Compromise Assessment**:
|
|
257
|
-
- Inventory exposed environment variables per application
|
|
258
|
-
- Credential scope: Database, APIs, cloud providers, third-party services
|
|
259
|
-
- Privilege levels: Admin vs. read-only
|
|
260
|
-
- Blast radius from compromised credentials
|
|
261
|
-
- Evidence of exploitation (log analysis)
|
|
262
|
-
|
|
263
|
-
- [ ] **Supply Chain Security Gaps**:
|
|
264
|
-
- Dependency pinning vs. automatic updates
|
|
265
|
-
- Software Bill of Materials (SBOM) missing
|
|
266
|
-
- Package integrity verification (checksums, signatures)
|
|
267
|
-
- Dependency scanning and vulnerability management
|
|
268
|
-
- Least privilege for service accounts
|
|
269
|
-
|
|
270
|
-
- [ ] **Prevention and Detection**:
|
|
271
|
-
- Software Composition Analysis (SCA) tools
|
|
272
|
-
- Dependency lock files (package-lock.json)
|
|
273
|
-
- Runtime monitoring for anomalous behavior
|
|
274
|
-
- Secrets management (vault, no hardcoded credentials)
|
|
275
|
-
- Network egress monitoring
|
|
276
|
-
|
|
277
|
-
- [ ] **Historical Context**:
|
|
278
|
-
- SolarWinds (2020): Build system compromise, nation-state attack
|
|
279
|
-
- Codecov (2021): Bash uploader script compromised
|
|
280
|
-
- Event-stream npm incident (2018): Bitcoin wallet theft
|
|
281
|
-
- UA-Parser-JS npm attack (2021): Cryptocurrency mining
|
|
282
|
-
- Growing trend: 650% increase in supply chain attacks (2021)
|
|
283
|
-
|
|
284
|
-
### Evaluation Criteria
|
|
285
|
-
|
|
286
|
-
- **Domain Accuracy** (0-10): Correct application of supply chain security, credential management
|
|
287
|
-
- **Analytical Depth** (0-10): Thoroughness of blast radius, credential assessment, prevention
|
|
288
|
-
- **Insight Specificity** (0-10): Clear response actions, specific detection measures
|
|
289
|
-
- **Historical Grounding** (0-10): References to supply chain attacks, industry trends
|
|
290
|
-
- **Reasoning Clarity** (0-10): Logical flow from detection to containment to prevention
|
|
291
|
-
|
|
292
|
-
**Minimum Passing Score**: 35/50
|
|
293
|
-
|
|
294
|
-
---
|
|
295
|
-
|
|
296
|
-
## Scenario 5: Insider Threat Investigation
|
|
297
|
-
|
|
298
|
-
**Event Description**:
|
|
299
|
-
Security alerts flag unusual activity: A software engineer with database access has been running queries to download large customer datasets after business hours. The engineer's access is legitimate for their role, but the volume and timing are unusual. The engineer submitted resignation 2 weeks ago (effective in 2 weeks) and will join a competitor. HR confirms no non-compete agreement exists. Legal is concerned about trade secret theft. No evidence of data exfiltration outside the network yet, but USB activity is detected on the engineer's workstation.
|
|
300
|
-
|
|
301
|
-
**Analysis Task**:
|
|
302
|
-
Analyze the potential insider threat and response strategy.
|
|
303
|
-
|
|
304
|
-
### Expected Analysis Elements
|
|
305
|
-
|
|
306
|
-
- [ ] **Threat Classification**:
|
|
307
|
-
- Insider threat (malicious or negligent)
|
|
308
|
-
- Elevated access (legitimate database permissions)
|
|
309
|
-
- Potential trade secret theft
|
|
310
|
-
- Pre-departure risk indicator (resignation, competitor)
|
|
311
|
-
|
|
312
|
-
- [ ] **Behavioral Analysis**:
|
|
313
|
-
- Indicators: Unusual hours, large data access, USB activity
|
|
314
|
-
- Baseline deviation: Compare to normal work patterns
|
|
315
|
-
- Intent assessment: Malicious (theft) vs. innocent (work completion)
|
|
316
|
-
- Motivations: Financial gain, competitive advantage, revenge
|
|
317
|
-
- Opportunity: Legitimate access, notice period window
|
|
318
|
-
|
|
319
|
-
- [ ] **Data at Risk**:
|
|
320
|
-
- Customer data: PII, contact information, purchase behavior
|
|
321
|
-
- Trade secrets: Proprietary algorithms, business intelligence
|
|
322
|
-
- Intellectual property: Code, architecture, processes
|
|
323
|
-
- Competitive intelligence: Pricing, strategy, customer relationships
|
|
324
|
-
|
|
325
|
-
- [ ] **Investigation Approach**:
|
|
326
|
-
- Non-disruptive monitoring (avoid alerting suspect)
|
|
327
|
-
- Log analysis: Database queries, file access, network traffic, USB devices
|
|
328
|
-
- Endpoint forensics: File activity, email, cloud storage uploads
|
|
329
|
-
- Correlation with business value data
|
|
330
|
-
- Legal considerations: Privacy, consent, jurisdiction
|
|
331
|
-
|
|
332
|
-
- [ ] **Immediate Actions**:
|
|
333
|
-
- Enhanced monitoring (not immediate revocation, to gather evidence)
|
|
334
|
-
- Coordinate with HR, Legal, Management
|
|
335
|
-
- Document everything (for potential litigation)
|
|
336
|
-
- Revoke access strategically (when sufficient evidence or risk threshold)
|
|
337
|
-
- Network egress controls (DLP, email monitoring)
|
|
338
|
-
|
|
339
|
-
- [ ] **Legal and HR Coordination**:
|
|
340
|
-
- Trade secret protections (state laws, federal DTSA)
|
|
341
|
-
- Civil litigation options (injunction, damages)
|
|
342
|
-
- Criminal referral (if warranted - 18 USC 1831)
|
|
343
|
-
- HR exit interview strategy
|
|
344
|
-
- Non-disparagement and IP agreements at departure
|
|
345
|
-
|
|
346
|
-
- [ ] **Preventive Controls**:
|
|
347
|
-
- User and Entity Behavior Analytics (UEBA)
|
|
348
|
-
- Data Loss Prevention (DLP) systems
|
|
349
|
-
- Least privilege access (why such broad database access?)
|
|
350
|
-
- Pre-departure access reviews
|
|
351
|
-
- Exit interview security components
|
|
352
|
-
|
|
353
|
-
- [ ] **Historical Context**:
|
|
354
|
-
- Waymo vs. Uber (2017): Stolen self-driving car trade secrets
|
|
355
|
-
- Tesla trade secret theft cases: Employees to Chinese competitors
|
|
356
|
-
- Insider threats: 34% of data breaches (Verizon DBIR)
|
|
357
|
-
- Average cost: $15.4M per insider threat incident (Ponemon)
|
|
358
|
-
|
|
359
|
-
### Evaluation Criteria
|
|
360
|
-
|
|
361
|
-
- **Domain Accuracy** (0-10): Correct application of insider threat frameworks, investigation techniques
|
|
362
|
-
- **Analytical Depth** (0-10): Thoroughness of behavioral analysis, legal considerations, evidence gathering
|
|
363
|
-
- **Insight Specificity** (0-10): Clear investigation steps, specific monitoring measures
|
|
364
|
-
- **Historical Grounding** (0-10): References to insider threat cases, industry statistics
|
|
365
|
-
- **Reasoning Clarity** (0-10): Logical balance between monitoring and action, legal coordination
|
|
366
|
-
|
|
367
|
-
**Minimum Passing Score**: 35/50
|
|
368
|
-
|
|
369
|
-
---
|
|
370
|
-
|
|
371
|
-
## Overall Quiz Assessment
|
|
372
|
-
|
|
373
|
-
### Scoring Summary
|
|
374
|
-
|
|
375
|
-
| Scenario | Max Score | Passing Score |
|
|
376
|
-
| ------------------------- | --------- | ------------- |
|
|
377
|
-
| 1. Zero-Day Disclosure | 50 | 35 |
|
|
378
|
-
| 2. Ransomware Response | 50 | 35 |
|
|
379
|
-
| 3. Cloud Misconfiguration | 50 | 35 |
|
|
380
|
-
| 4. Supply Chain Attack | 50 | 35 |
|
|
381
|
-
| 5. Insider Threat | 50 | 35 |
|
|
382
|
-
| **Total** | **250** | **175** |
|
|
383
|
-
|
|
384
|
-
### Passing Criteria
|
|
385
|
-
|
|
386
|
-
To demonstrate cybersecurity analyst competence:
|
|
387
|
-
|
|
388
|
-
- **Minimum per scenario**: 35/50 (70%)
|
|
389
|
-
- **Overall minimum**: 175/250 (70%)
|
|
390
|
-
- **Must pass at least 4 of 5 scenarios**
|
|
391
|
-
|
|
392
|
-
### Evaluation Dimensions
|
|
393
|
-
|
|
394
|
-
Each scenario is scored on:
|
|
395
|
-
|
|
396
|
-
1. **Domain Accuracy** (0-10): Correct application of security frameworks and methodologies
|
|
397
|
-
2. **Analytical Depth** (0-10): Thoroughness and sophistication of threat analysis
|
|
398
|
-
3. **Insight Specificity** (0-10): Clear, actionable security recommendations
|
|
399
|
-
4. **Historical Grounding** (0-10): Use of precedents, attack patterns, industry data
|
|
400
|
-
5. **Reasoning Clarity** (0-10): Logical flow, coherent risk assessment
|
|
401
|
-
|
|
402
|
-
### What High-Quality Analysis Looks Like
|
|
403
|
-
|
|
404
|
-
**Excellent (45-50 points)**:
|
|
405
|
-
|
|
406
|
-
- Applies multiple security frameworks accurately (NIST, MITRE ATT&CK, Kill Chain)
|
|
407
|
-
- Considers technical, operational, legal, and business dimensions
|
|
408
|
-
- Makes specific, prioritized recommendations with timelines
|
|
409
|
-
- Cites relevant precedents, CVEs, and industry statistics
|
|
410
|
-
- Clear logical flow from threat assessment to risk evaluation to response
|
|
411
|
-
- Acknowledges uncertainties and residual risks
|
|
412
|
-
- Identifies non-obvious attack vectors or defenses
|
|
413
|
-
|
|
414
|
-
**Good (35-44 points)**:
|
|
415
|
-
|
|
416
|
-
- Applies key security frameworks correctly
|
|
417
|
-
- Considers main technical and business impacts
|
|
418
|
-
- Makes reasonable response recommendations
|
|
419
|
-
- References some precedents or industry practices
|
|
420
|
-
- Clear reasoning
|
|
421
|
-
- Provides useful security insights
|
|
422
|
-
|
|
423
|
-
**Needs Improvement (<35 points)**:
|
|
424
|
-
|
|
425
|
-
- Misapplies security concepts or frameworks
|
|
426
|
-
- Ignores critical risks or response actions
|
|
427
|
-
- Vague or technically incorrect recommendations
|
|
428
|
-
- Lacks grounding in real-world attacks or defenses
|
|
429
|
-
- Unclear or illogical reasoning
|
|
430
|
-
- Superficial threat analysis
|
|
431
|
-
|
|
432
|
-
---
|
|
433
|
-
|
|
434
|
-
## Using This Quiz
|
|
435
|
-
|
|
436
|
-
### For Self-Assessment
|
|
437
|
-
|
|
438
|
-
1. Attempt each scenario analysis
|
|
439
|
-
2. Compare your analysis to expected elements
|
|
440
|
-
3. Score yourself honestly on each dimension
|
|
441
|
-
4. Identify areas for improvement
|
|
442
|
-
|
|
443
|
-
### For Automated Testing (Claude Agent SDK)
|
|
444
|
-
|
|
445
|
-
```python
|
|
446
|
-
from claude_agent_sdk import Agent, TestHarness
|
|
447
|
-
|
|
448
|
-
agent = Agent.load("cybersecurity-analyst")
|
|
449
|
-
quiz = load_quiz_scenarios("tests/quiz.md")
|
|
450
|
-
|
|
451
|
-
results = []
|
|
452
|
-
for scenario in quiz.scenarios:
|
|
453
|
-
analysis = agent.analyze(scenario.event)
|
|
454
|
-
score = evaluate_analysis(analysis, scenario.expected_elements)
|
|
455
|
-
results.append({"scenario": scenario.name, "score": score})
|
|
456
|
-
|
|
457
|
-
assert sum(r["score"] for r in results) >= 175 # Overall passing
|
|
458
|
-
assert sum(1 for r in results if r["score"] >= 35) >= 4 # At least 4 scenarios pass
|
|
459
|
-
```
|
|
460
|
-
|
|
461
|
-
### For Continuous Improvement
|
|
462
|
-
|
|
463
|
-
- Add new scenarios as security incidents evolve
|
|
464
|
-
- Update expected elements as threat landscape changes
|
|
465
|
-
- Refine scoring criteria based on analyst performance patterns
|
|
466
|
-
- Use failures to improve cybersecurity analyst skill
|
|
467
|
-
|
|
468
|
-
---
|
|
469
|
-
|
|
470
|
-
**Quiz Version**: 1.0.0
|
|
471
|
-
**Last Updated**: 2025-11-16
|
|
472
|
-
**Status**: Production Ready
|