Skip to content

15.3 Tabletop Exercises for Supply Chain Incidents

When Log4Shell emerged in December 2021, organizations that had practiced supply chain incident response mobilized within hours—they knew who to call, what to inventory, and how to communicate. Those without practiced response plans spent days determining basic questions: Which applications use Log4j? Who owns them? Can we update, and if not, what mitigations exist? Tabletop exercises—discussion-based simulations where teams walk through incident scenarios—build the muscle memory and coordination needed for real incidents. For supply chain security, where incidents cascade across systems and teams, this preparation is essential.

This section guides you through designing and conducting tabletop exercises specifically focused on software supply chain incidents.

Tabletop Exercise Design Principles

Tabletop exercises are facilitated discussions where participants walk through a hypothetical incident scenario, describing how they would respond. Unlike red team exercises (which test technical controls), tabletops test processes, communication, and decision-making.

Design Principles:

1. Realism Over Complexity:

Base scenarios on real incidents. Participants engage more deeply with plausible situations.

Good Basis Poor Basis
Log4Shell-style vulnerability Nation-state with unlimited capabilities
Dependency confusion attack Multiple simultaneous zero-days
Compromised maintainer All systems compromised at once

2. Inject Uncertainty:

Real incidents unfold with incomplete information. Include: - Conflicting reports - Unknown scope - Vendor silence - Time pressure

3. Test Decision Points:

Design scenarios that force difficult decisions: - Do we shut down production? - Do we notify customers now or wait? - Do we trust this patch? - Who has authority to decide?

4. Include External Factors:

Supply chain incidents involve external parties: - Upstream maintainers - Vendor support - Media coverage - Regulatory notifications

5. Scale Appropriately:

Match exercise complexity to organizational maturity:

Maturity Exercise Scope
Beginning Single team, simple scenario, 1 hour
Developing Cross-functional, moderate complexity, 2 hours
Advanced Enterprise-wide, multiple injects, half day

Participant Selection and Role Assignment

Effective tabletops include diverse perspectives. Supply chain incidents touch many functions.

Core Participant Matrix:

Role Why Include Key Contributions
Security/IR lead Coordinates response Incident process, technical triage
Engineering lead Owns affected systems Impact assessment, remediation
DevOps/SRE Manages infrastructure Deployment, rollback, monitoring
Legal counsel Advises on liability Notification, contracts, disclosure
Communications Manages messaging Customer, media, internal comms
Executive sponsor Makes resource decisions Priorities, escalation, authority
Product management Understands customer impact Feature implications, roadmap
Procurement/Vendor Manages suppliers Vendor contacts, contract terms

Role Assignments:

Assign explicit roles during exercises:

# Exercise Roles

### Participants (Responding to Scenario)
- Incident Commander: [Name]
- Technical Lead: [Name]
- Communications Lead: [Name]
- Legal Advisor: [Name]
- Executive Decision Maker: [Name]

### Exercise Staff
- Facilitator: [Name] - Guides discussion, introduces injects
- Recorder: [Name] - Captures decisions, action items
- Subject Matter Expert: [Name] - Answers technical questions
- Observer: [Name] - Notes process effectiveness

Avoiding Common Mistakes:

  • Too technical: Don't make it only engineers; include business functions
  • Too senior: Include people who do the work, not just executives
  • Missing stakeholders: If they'd be involved in real incident, include them
  • No decision authority: Include someone who can authorize actions

A common early mistake is including only security and engineering in tabletop exercises. Without legal, communications, and executive participation, teams often stall on decisions like customer notification that fall outside technical expertise. Effective tabletops require cross-functional representation.

Facilitation Techniques

Good facilitation determines exercise value. Poorly facilitated tabletops become lectures or arguments.

Facilitation Best Practices:

1. Set Ground Rules:

## Exercise Ground Rules

- No judgment—this is practice, not evaluation
- Stay in role—respond as you would in real incident
- Phones away—be fully present
- One conversation—no side discussions
- Timebox discussions—we'll move on when needed
- Assume best intent—focus on process, not blame

2. Use Timed Phases:

Structure exercises to maintain momentum:

Introduction (10 min)
└── Rules, scenario setup, role confirmation

Phase 1: Discovery (20 min)
└── Initial notification, assessment

Phase 2: Containment (30 min)
└── Immediate response, scope determination

Phase 3: Communication (20 min)
└── Internal/external messaging

Phase 4: Recovery (20 min)
└── Remediation, return to normal

Debrief (30 min)
└── What worked, what didn't, action items

3. Use Injects to Add Pressure:

Introduce new information to complicate response:

Inject Purpose
"Twitter is reporting this" Test communications pressure
"Vendor is not responding" Test contingency plans
"Another system is affected" Test scope expansion handling
"Executive asks for status" Test upward communication
"Customer calls about breach" Test external communication

4. Ask Probing Questions:

Drive deeper thinking: - "Who specifically would do that?" - "How long would that take?" - "What if that person isn't available?" - "What information would you need?" - "Who makes that decision?"

5. Capture Everything:

Assign a dedicated recorder:

## Exercise Log

### [Timestamp] Decision Point
- Scenario state: [What was happening]
- Options discussed: [List]
- Decision made: [What and why]
- Owner: [Who]
- Dependencies: [What's needed]
- Gaps identified: [Missing capability/process]

Scenario Examples

The following scenarios are ready for immediate use.

Scenario 1: Critical Dependency Vulnerability

## Scenario: "LogShock" - Critical Logging Library Vulnerability

### Setup (Read to Participants)
It's Tuesday at 2 PM. Your security monitoring detects unusual traffic 
from social media—security researchers are discussing a critical 
vulnerability (CVE-2024-XXXXX) in "CommonLog," a logging library used 
by most Java applications. CVSS 10.0, remote code execution, actively 
exploited in the wild. Patches are not yet available.

### Phase 1 Inject
Your inventory shows 47 applications potentially using CommonLog, but 
versions are unclear. The dependency is often transitive (pulled in by 
other libraries). Some applications are customer-facing.

**Discussion Questions:**
- How do we inventory affected systems quickly?
- Do we have SBOMs? Are they current?
- Who owns each application?

### Phase 2 Inject
A workaround is published but requires configuration changes. Meanwhile, 
your WAF vendor announces they've deployed blocking rules. One hour later,
a patch is released but security researchers express concern about its 
completeness.

**Discussion Questions:**
- Do we apply the workaround, wait for patch, or both?
- Do we trust the WAF protection?
- Who decides whether to patch immediately?

### Phase 3 Inject
A journalist contacts your communications team asking if you're affected. 
Your largest customer's security team emails asking for your response status.

**Discussion Questions:**
- What do we tell the journalist?
- How do we communicate with customers?
- What information do we share vs. withhold?

### Phase 4 Inject
Three days later, 42 of 47 applications are patched. The remaining 5 are 
legacy systems with complex dependencies. One is a critical internal 
finance system.

**Discussion Questions:**
- How do we handle systems that can't be easily patched?
- What compensating controls exist?
- When do we declare the incident "closed"?

Scenario 2: Compromised Dependency (Supply Chain Attack)

## Scenario: "PoisonedPipe" - Malicious Package Update

### Setup
It's Friday at 5 PM (of course). GitHub Security Advisory reports that 
a popular npm package, "data-validator," was compromised. Versions 
2.3.1-2.3.3 (released this week) contain a backdoor that exfiltrates 
environment variables during install. You use this package.

### Phase 1 Inject
Your CI/CD logs show "data-validator@2.3.2" was installed in builds 
over the past 3 days. At least 12 builds used this version. These 
builds had access to production deployment credentials.

**Discussion Questions:**
- What credentials might be compromised?
- What systems could be affected?
- Do we have build logs detailed enough to know?

### Phase 2 Inject
You determine that AWS deployment keys and a database connection string 
were potentially exposed. You don't know if the data was actually 
exfiltrated—the backdoor phones home to a server that's now offline.

**Discussion Questions:**
- Do we rotate all potentially exposed credentials?
- How do we rotate without causing outage?
- Do we assume breach and invoke full IR?

### Phase 3 Inject
It's now Saturday morning. An anonymous researcher claims to have 
evidence of data sales on a dark web forum from a "major breach this 
week." Your team cannot verify whether this relates to your exposure.

**Discussion Questions:**
- How do we investigate this claim?
- Do we notify customers of potential breach?
- What are our legal obligations?

### Phase 4 Inject
Forensic analysis of affected build servers shows no evidence of 
lateral movement or data access beyond the build environment. The 
exfiltrated credentials were rotated before any unauthorized use 
was detected.

**Discussion Questions:**
- How do we document this incident?
- What process changes prevent recurrence?
- Do we still notify customers/regulators?

Scenario 3: Maintainer Account Compromise

## Scenario: "TrustedInsider" - Internal Package Compromise

### Setup
Your internal security team discovers that a developer's NPM account 
was compromised (phished two weeks ago). This developer maintains 
several internal packages used across your organization. Analysis 
shows one package, "@company/auth-utils," received an unusual update 
three days ago.

### Phase 1 Inject
The suspicious update added a postinstall script that writes to a 
temp file. Initial analysis is inconclusive—it might be malicious 
or might be legitimate debugging code. The developer is on vacation 
and unreachable.

**Discussion Questions:**
- How do we determine if the update is malicious?
- Do we revert without confirmation?
- How do we reach the developer urgently?

### Phase 2 Inject
Security determines the code is likely malicious—it appears to 
collect and encode environment data. Artifact repository logs show 
the package was downloaded by 87 projects in the past three days.

**Discussion Questions:**
- How do we notify 87 project teams?
- Do we block the package? What breaks?
- How do we determine which builds were affected?

### Phase 3 Inject
Leadership asks for a briefing. They want to know: Was customer 
data compromised? Should we notify customers? What's our legal 
exposure?

**Discussion Questions:**
- What can we tell leadership with confidence?
- What do we not know, and how do we find out?
- What decisions need executive authority?

Scenario 4: Build System Breach

## Scenario: "BuildBreaker" - CI/CD Infrastructure Compromise

### Setup
During routine log review, your SOC notices unusual activity on Jenkins 
servers: logins at 3 AM local time, new jobs created, credentials accessed. 
Initial investigation suggests an attacker has had access for approximately 
two weeks.

### Phase 1 Inject
The attacker created a hidden Jenkins job that runs nightly, modifying 
build artifacts for your flagship product. You've shipped three releases 
in the past two weeks.

**Discussion Questions:**
- How do we verify integrity of shipped releases?
- Do we have pre-modification artifacts to compare?
- Do we initiate customer notification?

### Phase 2 Inject
Artifact comparison shows a 200-byte difference in one library included 
in your product. Analysis is ongoing but initial assessment suggests 
backdoor capability. The affected releases are running in production at 
approximately 2,000 customer sites.

**Discussion Questions:**
- Do we issue emergency recall/patch?
- How do we communicate the scope to customers?
- What regulatory notifications are required?

### Phase 3 Inject  
Media is reporting on your incident based on "anonymous sources." Your 
stock price drops 8% in pre-market trading. Board members are calling 
the CEO.

**Discussion Questions:**
- How do we get ahead of the narrative?
- Who speaks publicly?
- What information do we disclose?

Capturing Lessons and Action Items

Exercise value comes from follow-through, not just discussion.

Lesson Capture Template:

## Tabletop Exercise: [Name] - Lessons Learned

### Date: [Date]
### Participants: [List]
### Scenario: [Brief description]

### What Worked Well
1. [Process/capability that functioned]
2. [Team/coordination that was effective]

### Gaps Identified
| Gap | Impact | Severity |
|-----|--------|----------|
| [Gap 1] | [What couldn't we do?] | High/Med/Low |
| [Gap 2] | [What couldn't we do?] | High/Med/Low |

### Process Improvements Needed
1. [Process that doesn't exist or failed]
2. [Communication that broke down]

### Technical Improvements Needed
1. [Tool/system needed]
2. [Capability missing]

### Action Items
| Action | Owner | Due Date | Priority |
|--------|-------|----------|----------|
| [Action 1] | [Name] | [Date] | P1/P2/P3 |
| [Action 2] | [Name] | [Date] | P1/P2/P3 |

Action Item Categories:

Category Examples
Documentation Playbooks, contact lists, procedures
Technical Tools, monitoring, access controls
Process Decision authority, escalation paths
Training Skills gaps, awareness needs
Communication Templates, channels, stakeholders

Exercise Frequency and Iteration

Regular exercises build and maintain readiness.

Recommended Frequency:

Exercise Type Frequency Audience
Team tabletop Quarterly IR team, engineering
Cross-functional Semi-annually All stakeholders
Executive Annually C-suite, board
Unannounced drill As needed Varies

Scenario Rotation:

Vary scenarios to cover different threats:

## Annual Exercise Calendar

Q1: Dependency vulnerability (Log4Shell-style)
Q2: Supply chain attack (compromised package)
Q3: Build infrastructure breach
Q4: Insider threat / maintainer compromise

Annual: Full-scale executive exercise with external stakeholders

Iteration and Improvement:

After each exercise:

  1. Complete all action items before next exercise
  2. Incorporate lessons into scenario updates
  3. Increase complexity as maturity grows
  4. Retest previously identified gaps

Recommendations

For Security Managers:

  1. Start simple. A 1-hour tabletop with the right people beats a complex exercise that never happens. Begin and iterate.

  2. Use real incidents. Base scenarios on actual supply chain attacks. Real stories engage participants and provide realistic complexity.

  3. Track action items to completion. Exercises without follow-through build false confidence. Close every action item.

For Facilitators:

  1. Stay neutral. Don't lead participants to "correct" answers. Real incidents don't have answer keys.

  2. Create pressure. Use time limits and injects to simulate real incident stress. Comfortable tabletops don't prepare for uncomfortable reality.

  3. Probe decisions. Ask "who specifically" and "how exactly" to uncover assumptions that hide gaps.

For Organizations:

  1. Make exercises mandatory. Key stakeholders must participate, not delegate. Build this into expectations.

  2. Include external parties. Involve legal counsel, PR, and executives. Supply chain incidents are business crises, not just technical problems.

  3. Exercise supply chain specifically. Generic incident response exercises don't cover supply chain nuances. Dedicate exercises to this attack surface.

Tabletop exercises transform theoretical incident response plans into practical readiness. When a real supply chain incident occurs—and it will—teams that have practiced together respond faster, communicate better, and make sounder decisions than those encountering the chaos for the first time.