The 2026 InfoSec Playbook · Daniel Ramos

#Chapter 11 — Third-Party and Supply Chain Risk

How to know who is inside your estate, rank them by the access they hold rather than the money they cost, verify their claims properly, write terms that still bite at renewal, and survive the day the breach is theirs.

Who needs this: CISO, Head of Procurement/Vendor Management, Legal Liaison, Platform and Application Engineering leads, SaaS/IT Operations, Enterprise Risk | Read time: 26 min | Maps to: CSF 2.0 GOVERN (GV.SC), IDENTIFY (ID.AM, ID.RA), PROTECT (PR.AA, PR.PS) | CIS Controls 2, 15 | ISO/IEC 27001:2022 A.5.19–A.5.23

Cyber-friends, the most expensive thing in your environment right now is probably a token you forgot you issued.

Between 8 and 17 August 2025, attackers tracked as UNC6395 used OAuth refresh tokens that customers had voluntarily issued to Drift — a conversational marketing tool bolted onto Salesforce — to query and export records from more than 700 organizations, including Cloudflare, Google, PagerDuty, Palo Alto Networks, Proofpoint, Tanium and Zscaler. The attackers had first reached Salesloft's GitHub environment months earlier, pivoted into Drift's AWS environment, and helped themselves to the token store. No customer had a vulnerability to patch. No customer's MFA failed. No customer's password would have helped. And the highest-value loss was secondary: API keys, Snowflake tokens, cloud credentials and passwords that customers' own staff had pasted into support-case text over the years (AppOmni; Cloud Security Alliance; FINRA).

That is what third-party risk looks like in practice, and it is why the discipline has stopped being a procurement formality. Third-party involvement now appears in roughly 48% of confirmed breaches — about a 60% year-over-year increase — and of the third parties studied, only 23% had fully remediated their known MFA issues (DBIR 2026 via SecurityWeek; Help Net Security). ENISA measured supply chain at 10.6% of all EU threats in its 2025 Threat Landscape (ENISA ETL 2025).

Here is the governing idea for this entire chapter, and if you take nothing else, take this: your blast radius is defined by standing trust, not by the size of the vendor's breach. A twelve-person startup with an AllPrincipals mailbox grant can cost you more than a nine-figure infrastructure contract with read-only access to a reporting database. Every control in this chapter exists to make standing trust visible, small, time-boxed, and revocable in an afternoon.

#1. The inventory you do not have

Every third-party program is built on one artefact, and almost nobody has it: a list of who is inside your estate and what they can reach. Ask procurement and you will get a supplier master keyed on payment terms. Ask IT and you will get an application catalog that stops at the things IT bought. Neither one knows about the marketing team's transcription tool with full calendar and mailbox scope, because it cost forty dollars a month on a corporate card and nobody signs a contract for that.

The record you need is small. Twelve fields, and every one of them earns its place because a control or a decision reads it.

FieldWhy it existsWhere you actually get it
Legal entity, product, and your tenant/account IDYou cannot serve an evidence demand on "the CRM thing"Contract, invoice, admin console
Business owner (a named person, not a department)Someone has to answer at T+0Procurement or the requesting team
Data classes accessed, using your Chapter 8 tiersDrives tier, DPA and notification analysisDesign review, admin console scopes
Access mechanism(s) — OAuth grant, API key, SSO/SCIM, VPN peer, SFTP, human loginThis is the containment list on a bad dayIdP, SaaS admin, network config
Direction of keys — issued by you, issued to you, or bothRotation is asymmetric; people forget the reverse directionSecrets store, vendor console
Operational dependency — what stops if they stopDrives tier and continuity planningBusiness owner, in writing
Tier (1–4)Sets every downstream requirementCalculated, §2
Assurance held and its expiry dateStops silent expiry of your evidenceDiligence file
Contract, DPA and security addendum locationsLegal needs these in minutes, not daysContract repository
Sub-processor list URL and last-reviewed dateFourth-party exposure, §7Vendor's trust page
Named security contact and escalation pathThe generic support inbox is not a channelContract or account team
Last review date and next due dateMakes staleness auditableThe register itself

When procurement will not help — and often they genuinely cannot — build the list from telemetry instead of from paperwork. Five sources, in the order that gives you the most coverage per hour:

  1. The accounts-payable export and the corporate card statements. Twelve months, every vendor at any amount. Finance will give you a CSV without a project plan, and it finds the shadow SaaS that IT never saw.
  2. Your identity provider's application list. Every SAML/OIDC app, every enterprise application, every service principal with an assignment. If it federates, it is a third party.
  3. The OAuth grant enumeration. Chapter 4, Section 9 has the tenant-wide inventory method and the queries. Treat every non-Microsoft, non-Google publisher as an inventory row, and flag ConsentType = AllPrincipals — that grant reaches every user's content.
  4. Egress DNS and proxy logs, deduplicated by second-level domain and sorted by unique internal clients. Crude, and it works.
  5. The contract repository. Anything carrying a data-protection schedule is processing personal data by definition and starts in the top two tiers.

Reconcile those five into one list. You will find duplicates, ghosts, and at least one integration whose owner left the company. That is not a failure of the exercise; that is the exercise.

Actionable takeaway: Produce a single reconciled vendor register from AP data, your IdP application list, OAuth grants, egress DNS and the contract repository — this quarter, in a spreadsheet if necessary — and refuse to accept any row where the business owner field says a department name instead of a person.

#2. Tier by access and dependency, not by spend

Most tiering models are contract value with a security hat on. That is how a $400-a-month meeting-transcription tool with full mailbox and calendar scope ends up in Tier 4 while a facilities-management contract with read-only access to a badge database sits in Tier 1 getting an annual questionnaire it does not need. The money is not the risk. The access is the risk, and the dependency is the other risk.

Score each vendor on two independent axes, and take the higher of the two as the tier:

TierDefinitionDiligenceContractOngoing
Tier 1 — CriticalRestricted data, or write access to a system of record, or an outage stops revenue/safety/regulated serviceFull evidence review, architecture and integration review, named security contact, referencesFull security addendum, audit rights, breach notice measured in hours, sub-processor notice with objection rightQuarterly review, continuous monitoring of grants and scopes, annual joint exercise
Tier 2 — SignificantInternal data at volume, or read access to a system of record, or a multi-day outage is materially disruptiveEvidence review with a scoping call; exceptions triagedSecurity addendum, breach notice, sub-processor list, right to evidenceAnnual review, semi-annual grant/scope check
Tier 3 — LimitedLimited internal data, no standing production credentials, replaceable within daysShort questionnaire plus current assurance report or certificateStandard terms plus breach notice and data-deletion clauseAnnual attestation refresh
Tier 4 — MinimalPublic data only, no integration, trivially replaceableRecord it and move onStandard termsRe-confirm at renewal

Two rules keep this honest. First, any vendor holding an OAuth grant with tenant-wide scope is Tier 1 or Tier 2 regardless of price — that is the Drift lesson written as a policy line. Second, tier is a property of the integration, not of the company. The same vendor can hold a Tier 1 integration into your CRM and a Tier 4 marketing microsite. Tier the connection.

Actionable takeaway: Re-tier your whole register against data access and operational dependency this quarter, ignore contract value entirely while you do it, and expect the top tier to shrink and change membership. A program that reviews everything reviews nothing well.

#3. Reading a SOC 2 like an auditor, not like a checkbox

A SOC 2 report is the most commonly presented and least commonly read document in this discipline. Someone asks for one, the vendor sends 90 pages, procurement confirms it exists, and it goes in a folder. The AICPA — which promulgates the professional standards for these engagements — has itself published on the risks of quick-turn work under the headline "Promises of 'fast and easy' threaten SOC credibility" (AICPA SOC 2 resources). When the standard-setter is worried about report quality, "they sent us their SOC 2" is not an answer.

Start with what the thing actually is. SOC 2 reports against the 2017 Trust Services Criteria with Revised Points of Focus (2022), TSP Section 100. There are five categories — Security (the mandatory one, the Common Criteria), Availability, Processing Integrity, Confidentiality and Privacy — and the Common Criteria are built on COSO's 17 principles plus supplemental criteria. Critically, points of focus are guidance, not requirements: they are not all relevant to every service organization, and treating them as a checklist is a common and expensive mistake (AICPA TSC 2017 with 2022 points of focus). For your purposes the incident-response hooks live in CC7.x (system operations — monitoring, incident detection and response) and CC9.x (risk mitigation); A1.x covers recovery and backup if Availability is in scope.

Now open the report and answer six questions in this order. The order matters, because questions one and two can make the rest irrelevant.

  1. Which categories are in scope? If only Security is in scope and you bought the vendor for uptime, the report says nothing about availability. Many buyers never check.
  2. Which systems and products are in scope? Vendors with multiple products routinely scope the report to the mature one. If the product you are buying is not named in the system description, you are holding a report about somebody else's problem.
  3. Type 1 or Type 2, and what period? A Type 1 is a point-in-time opinion on control design; a Type 2 covers operating effectiveness across a stated period. Only Type 2 tells you the controls actually ran. Then check the period against your period: a report covering January to June, presented to you in the following March, leaves nine months uncovered. Ask for the bridge letter, and understand that a bridge letter is management's assertion, not the auditor's opinion.
  4. What is in the exceptions? This is the section people skip and the only section that contains news. Read every exception and every management response. One access-review exception is noise; a pattern of exceptions in logical access, change management and monitoring is a story. Ask what changed since.
  5. Which subservice organizations are carved out? Most reports carve out the cloud providers and sometimes far more. Carved-out means not tested here. If the vendor's entire data platform sits with a subservice organization that is carved out, your assurance stops at the door.
  6. What are the complementary user entity controls? These are the controls the auditor assumed you operate. They are usually a short list near the back and they typically include things like "user entities are responsible for provisioning and deprovisioning their users" and "user entities are responsible for configuring MFA." If you are not doing them, the report's conclusions do not transfer to you. This is the single most under-read page in the document.

And be equally clear about what a SOC 2 does not tell you. It is not a penetration test. It is not a vulnerability assessment. It says nothing about the security of a product that is out of scope, nothing about periods outside the report, and nothing about how this vendor compares to another vendor with a report from a different firm. It is an opinion on whether described controls were suitably designed and — in a Type 2 — operating effectively during a stated window. That is genuinely useful. It is not a warranty, and the auditor is not your indemnitor.

The other evidence types, briefly and with the same scepticism:

Actionable takeaway: For every Tier 1 and Tier 2 vendor, record six fields against their assurance report — categories, in-scope products, type, period end, exception count, and whether the complementary user entity controls are implemented on your side — and make the CUEC field mandatory. If nobody on your side owns the controls the auditor assumed you were running, the report is decorative.

#4. Contract terms that survive renewal

Here is the sequencing rule, and getting it backwards is why so many security addenda are worthless: your leverage exists before signature and at renewal, and essentially nowhere else. Once the integration is live, the data has migrated and the business depends on the vendor, a request to add audit rights is a request for a favor. Security has to be in the room before the commercial terms close, which means the tiering in §2 must be done at intake, not after go-live.

ClauseWhat to requireWhy the weak version fails
Breach notificationNotice without undue delay and no later than a stated number of hours from the vendor becoming aware, with awareness defined as reasonable belief, not confirmed conclusion"Prompt notice upon confirmation" lets the vendor's counsel run your regulatory clock. Your GDPR and NIS2 clocks start when you have the facts
Notification contentMinimum contents specified: systems affected, your data categories, time window, whether your tenant is confirmed in scope, IoCs, and a named contactA one-line "we are investigating" satisfies a vague clause and tells you nothing you can act on
Cooperation and evidenceObligation to provide logs, forensic findings and a written incident report on a defined timetable, and to preserve evidenceWithout it you are asking nicely during the worst week of their year
Sub-processorsCurrent list maintained, advance notice of changes, and a right to object with a defined consequenceA list with no notice duty is a snapshot of a moving target
Audit and assessmentAnnual assurance report delivered without asking, plus a right to assess or to receive evidence on request; on-site rights for Tier 1"Available upon reasonable request" plus a fee schedule is a refusal in a suit
Security requirementsReferenced to a named standard and version, with a floor: MFA for all vendor personnel accessing your data, encryption in transit and at rest, personnel screening, secure developmentAspirational language ("industry standard measures") is unenforceable and unmeasurable
Scope of accessIntegration scopes named and a duty to seek written approval before expanding themVendors expand OAuth scopes in product releases. Without this clause it is a changelog entry, not a change request
Data return and deletionReturn in a usable format and certified deletion within a stated period after termination, including from backups on a stated schedule"Deleted in accordance with our retention policy" is their policy, not yours
FlowdownThe vendor imposes equivalent terms on its own subcontractorsFourth parties inherit nothing by default
Termination assistanceDefined exit period with continued service at agreed ratesConcentration risk (§7) is unmanageable if you cannot leave
SurvivalConfidentiality, deletion, audit and notification obligations survive terminationOtherwise your obligations end exactly when your exposure peaks

Two structural traps. The security addendum must be incorporated into the agreement and must win the order-of-precedence clause — a beautifully drafted schedule that the MSA subordinates to the vendor's standard terms is expensive theatre. And terms must survive renewal: auto-renewal on the vendor's then-current terms quietly deletes everything you negotiated. Put a renewal review in the register with a date and an owner, and check the terms you have, not the terms you remember.

Some of this is not optional. NYDFS 23 NYCRR Part 500 §500.17(a) requires notice to the Superintendent no later than **72 hours after determining that a cybersecurity incident has occurred at the covered entity, its affiliates, or a third-party service provider (23 NYCRR 500.17). New York's amended breach law (S2659B, effective 21 December 2024) requires vendors to notify the data owner within 30 days (Hunton). If you handle CUI, DFARS 252.204-7012 — a separate and older obligation than the CMMC program rules, and live today — already requires rapid reporting to DoD at DIBNet within 72 hours of discovery**, and that obligation flows down your own supply chain (DoD DIBNet).

Actionable takeaway: Write one security addendum with the eleven clauses above, make it mandatory for Tier 1 and Tier 2 at intake, and add a renewal-review date with a named owner to every register row — because auto-renewal on the vendor's current terms is how negotiated protection silently disappears.

#5. The software supply chain: SBOM, SLSA, SSDF, and the registry

Your vendors are not only companies. Some of them are packages, base images, GitHub Actions and models, and they are onboarded by a developer running one command with no purchase order and no review. This is the part of third-party risk that procurement structurally cannot see.

#The three documents to know

SBOM. The federal baseline was replaced in July 2026 by 2026 Minimum Elements for a Software Bill of Materials, issued jointly by CISA, NSA, FBI, ASD's ACSC, the Canadian Cyber Centre, NKIB and ANSSI, superseding NTIA's 2021 document. Scope now explicitly covers all software including open source, AI systems, and SaaS. The accepted formats are SPDX and CycloneDX — and SWID tags were removed, on the stated basis that they are not a widely used SBOM format with multiple tools (CISA; PDF). Guidance still listing SWID is out of date.

The new baseline has 17 data fields, and three of them change what an SBOM is worth to you:

New elementWhy it matters to a buyer
SBOM Author SignatureThe integrity of the document, not just the software. An unsigned SBOM is an assertion in a text file
SBOM Generation ContextA build-time SBOM and a post-build binary-analysis SBOM have very different trustworthiness. Now the vendor must say which you have
Component Hash (algorithm and value)Makes component identity verifiable rather than merely claimed

SLSA v1.2 is the current approved release, organized into tracks with the Build track most mature (slsa.dev):

LevelWhat it buys you
Build L0Nothing. L0 is the absence of SLSA
Build L1Provenance exists describing how the package was built; signatures not yet required
Build L2Builds run on a hosted platform that generates and cryptographically signs provenance
Build L3Hardened platform: builds cannot interfere with each other, and secret signing material is inaccessible to user-defined build steps

(SLSA levels) The threat SLSA addresses is tampering between source and consumer — which neither SAST nor an SBOM addresses on its own.

SSDF (NIST SP 800-218 v1.1) organises secure development into four practice groups: PO Prepare the Organization, PS Protect the Software, PW Produce Well-Secured Software, RV Respond to Vulnerabilities (NIST SSDF). It is the framework behind federal secure-software attestation, which is why it shows up in procurement questionnaires far outside government. If you buy or build anything with generative AI or foundation models in it, SP 800-218A is the community profile that augments SSDF with AI-specific practices, final since 26 July 2024 (NIST).

#What is actually attacking this layer

The 2025–2026 record is not theoretical, and the pattern is consistent: the attacker takes the build system, because CI runners hold more standing privilege than any human user and authenticate with long-lived secrets.

Add dependency confusion as a design flaw rather than an incident: when a build resolves an internal package name against both a private and a public registry, a public package with the same name and a higher version can win. The fix is configuration, not vigilance — scope internal packages to a namespace you own, and configure the client so internal names resolve only against the internal registry.

#The controls, in the order that matters

Sequence matters here for one specific reason: pinning before cooldown, and cooldown before scanning. If versions float, a cooldown window is meaningless because the build can still pull whatever is newest at build time; and scanning tells you about known-bad after you have already executed install scripts.

#ControlWhoDone whenEvidence to capture
1Pin every third-party dependency and every CI Action to an immutable identifier — a commit SHA for Actions, a digest for container images, a committed lockfile for packagesPlatform EngineeringNo floating tags or version ranges remain in build configurationDiff showing tags replaced by SHAs/digests; lockfile enforcement setting
2Enable an adoption cooldown so newly published versions are not pulled immediately. GitHub's Dependabot waits at least three days after a release is published before opening a pull request, and "the cooldown configuration option in the dependabot.yml still controls the behavior," so you can set a window that fits the project (The Hacker News)Platform Engineeringcooldown configured in every repository's dependabot config, or the equivalent in your dependency botThe config file; a PR showing the delay applied
3Disable automatic install scripts in CI where the ecosystem allows it, and run untrusted installs in a network-restricted jobPlatform EngineeringInstall-script execution disabled or explicitly allow-listedCI config; job network policy
4Replace long-lived registry and cloud credentials in CI with short-lived OIDC-federated credentialsPlatform EngineeringNo static publishing token remains in any repository or runner secretSecret inventory before/after; OIDC trust policy
5Isolate publish jobs — separate workflow, separate runner, separate credentials, human approval, and no third-party Actions in that workflowPlatform EngineeringPublishing cannot be triggered from a build jobWorkflow definition; approval configuration
6Restrict what a runner can reach: egress allow-list, no cloud metadata access, least-privilege job tokensPlatform EngineeringRunner cannot reach the metadata endpoint or arbitrary internet hostsNetwork policy; a negative test result
7Ingest SBOMs and dependency inventories somewhere queryable, and wire the query into exposure managementSecurity EngineeringA named component can be traced to products and versions in under an hourThe query and its runtime, dated
8Secret-scan the repository, the CI logs and the free-text stores your vendors can readSecurity EngineeringScan runs on a schedule with a triaged rotation queueRedacted findings; rotation queue with owners

The cheap version, if you have no platform team and no budget: steps 1, 2 and 4 are free and available in the tools you already pay for. Pinning is a text change. Cooldown is a configuration flag. OIDC federation replaces a stored token with a trust policy at no license cost. Those three would have blunted every incident listed above.

Actionable takeaway: Pin by digest, turn on a cooldown of at least three days, and delete every long-lived publishing token from CI in favor of short-lived OIDC credentials. Not next quarter. This sprint.

#6. SaaS-to-SaaS and OAuth: the invisible supply chain

Most organizations have an inventory of the SaaS applications they buy. Almost none have an inventory of which SaaS applications hold tokens into their other SaaS applications. That second list is the one attackers work from, because an OAuth grant is a spare key you cut for a contractor: it keeps working after you change the locks, after the project ends, and after somebody lifts it out of their van.

The mechanics of consent abuse, the detection queries and the revocation commands are Chapter 4, Section 9. The incident procedure is Chapter 14.5. What belongs here is the governance layer — treating each grant as a third-party record with a lifecycle.

The integration register. For every grant, record: the publisher and application ID; the granting tenant; whether consent is delegated or application-level and whether it is AllPrincipals; the exact scopes; who approved it and when; the business owner; the data classes reachable through those scopes; and a review-or-expiry date. Then apply four rules:

  1. No standing consent without an owner and an expiry date. An integration with no named owner gets revoked at the next review, not investigated. Ownerless standing access is the thing that killed 700 organizations' Tuesday in August 2025.
  2. Scope minimization at approval, and re-approval on scope change. Vendors expand scopes in product releases. Your contract clause (§4) makes that a change request; your review process is what notices it.
  3. Re-attestation on a fixed cadence — quarterly for Tier 1 and Tier 2, annually below. The owner confirms the integration is still used, still needed, and still correctly scoped. Non-response is a revocation, not a reminder.
  4. Offboarding has an order, and the order is not obvious. Revoke the OAuth grant first, then remove the application assignment in your IdP, then disable SCIM and any integration accounts, then close the network path, then request data deletion. Reversing the first two is the classic mistake: disabling the account or removing the SSO assignment does not revoke an existing grant, so the vendor's application keeps reading your data through a token that no longer depends on any user session. Chapter 4 documents the same failure in the containment context — a password reset does not touch a refresh token.

Two more things the Drift case put beyond argument. Support tickets, CRM notes and chat exports are a credential store — your staff paste keys into them and your vendors can read them, so secret-scan those fields on a schedule and rotate what you find. And AI integrations are the fastest-growing population in this register: copilots, meeting notetakers, agent frameworks and MCP servers all onboard through the same consent screen, often with broader scopes than the human tools they replace. Chapter 7 owns AI governance; the grant is a row here like any other.

Actionable takeaway: Build the SaaS-to-SaaS grant register this month, revoke every grant with no named owner, and put quarterly re-attestation on the calendar with non-response defaulting to revocation. If you can only do one thing, filter your tenant-wide grant export to AllPrincipals and work that list first.

#7. Fourth parties and concentration

Your vendor has vendors. Their sub-processor list is a real document with real consequences, and reading it is the cheapest fourth-party control available. The Trivy → LiteLLM chain is the illustration: a compromised security scanner poisoned a build that shipped poisoned wheels to everyone downstream. Nobody in that chain had a relationship with the attacker's actual entry point.

Then there is the harder problem: everyone depends on the same vendor. Concentration risk is not about a single supplier failing — it is about a single supplier failing for everyone at once, which means your fallback plan and your competitors' fallback plans and your recovery vendor's fallback plan all fire simultaneously.

The documented cases in the 2024–2026 window make the shape clear:

What to do about it, at a realistic budget. Nobody is going to fund a second identity provider. So do the analysis, then buy the cheap mitigation:

  1. Map by function, not by vendor. Build a one-page table of critical business functions and the vendor each one depends on. Concentration shows up as one name appearing in four rows — authentication, email, file storage and your ticketing system are frequently one company.
  2. Include the fourth parties you can see. Pull the sub-processor lists for Tier 1 vendors and note where they converge. Two independent vendors on the same underlying cloud region is one failure, not two.
  3. Write a degraded-mode procedure, not a redundant architecture. For each single point of dependency, document what the business does for five days without it: the manual process, who runs it, what capacity it has and what breaks first. Collins Aerospace forced manual check-in — the airports that recovered fastest were the ones for whom manual was a known procedure rather than an improvisation.
  4. Test the exit. Termination assistance and data-return clauses (§4) are what make the alternative real. A vendor you cannot leave is a vendor whose renewal terms you will accept.
  5. Put concentration on the risk register as its own line, owned by the business, not buried inside vendor-by-vendor scores.

Actionable takeaway: Build the function-to-vendor map, find the names that appear more than twice, and write and test a five-day degraded-mode procedure for each. Redundancy is expensive; a rehearsed manual process is nearly free and it is what actually gets used.

#8. When the breach is theirs

The full incident procedure is Chapter 14.5 and I will not duplicate it. What belongs in the control chapter is the honest boundary of your authority, because teams waste the first six hours discovering it.

What you cannot do: investigate their network, direct their responders, set their disclosure timeline, or verify their claims independently. You will be told less than you want, later than you want, in language written by their counsel.

What you can do, immediately: cut standing access, hunt their identity across your own estate, preserve your own logs before retention kills them, and run your own regulatory analysis on your own clock. Your notification obligations start when you have the facts, not when the vendor confirms your tenant was in scope.

The evidence demand. Issue it in writing, through the single vendor channel, in parallel with your containment — never instead of it. Ask for: whether your tenant or account is confirmed in scope; the precise window of unauthorized access; the data categories and record counts involved for you specifically; which of your credentials, tokens or keys were exposed; indicators of compromise you can hunt with; whether their sub-processors were involved; what they have remediated; and a written incident report by a stated date. Log every request and response with timestamps — that log is what turns "the vendor was unhelpful" into a documented fact.

Prepare it in peacetime. NIST SP 800-61r3 rates ID.IM-02 — improvements identified from tests and exercises "including those done in coordination with suppliers and relevant third parties" — as High priority, and ties supplier inclusion in exercises explicitly to GV.SC-08 (NIST SP 800-61r3). Read that as an instruction: once a year, run a tabletop with your Tier 1 vendors in the room, or at minimum a joint call that walks the notification path end to end. The first time you use a vendor's security contact should not be during an incident, and a vendor security contact that has not been dialled since onboarding is a phone number, not a control. Chapter 18 owns exercise design.

Actionable takeaway: Pre-draft the evidence demand as a template, store it with the vendor register, and confirm the named security contact for every Tier 1 vendor twice a year by actually contacting them. A contact you have never used is a hypothesis.

#9. The regulatory floor, briefly

Chapter 15 owns the notification clocks in full. Three obligations belong here because they are specifically about third parties and they change how you write contracts.

The common thread: regulators have stopped accepting "it was our vendor" as an answer. CSF 2.0 made cybersecurity supply chain risk management its own Category (GV.SC) under the new GOVERN Function precisely because it is a governance obligation, not a procurement task (NIST CSF 2.0), and CIS Control 15 (Service Provider Management) carries the same expectation in the control catalog (CIS Controls).

Actionable takeaway: Map your vendor register against the regimes that bind you, and where a regime imposes a clock, make the contractual notice window shorter than the regulatory one. If your vendor has 72 hours to tell you and you have 72 hours to tell a regulator, you have zero hours to work with.

#10. The ninety-day version, with no budget

Starting from nothing, in this order — each step makes the next one cheaper:

  1. Days 1–15. Pull the AP export, the IdP application list and a tenant-wide OAuth grant export. Reconcile into one spreadsheet. Assign a human owner to every row.
  2. Days 16–30. Tier by access and dependency. Expect Tier 1 to be fewer than twenty rows.
  3. Days 31–45. Revoke every grant with no owner or no current use. Highest-value hour in the program, and it costs nothing.
  4. Days 46–60. Pin dependencies and Actions by digest, enable a three-day cooldown, remove long-lived publishing tokens from CI.
  5. Days 61–75. Read the Tier 1 assurance reports properly — scope, period, exceptions, carve-outs, complementary user entity controls.
  6. Days 76–90. Draft the security addendum and the evidence-demand template, and confirm a named security contact for every Tier 1 vendor by contacting them.

Ninety days, no licences, and you will be ahead of most organizations several times your size. Not because you bought anything. Because you finally know who has the keys.

#Chapter checklist

#Sources

  1. AppOmni, Salesloft Drift / Salesforce UNC6395 analysis — https://appomni.com/blog/drift-breach-salesforce-unc6395-saas-prevention/
  2. Cloud Security Alliance, the Salesloft Drift OAuth supply chain attack — https://cloudsecurityalliance.org/blog/2025/09/25/the-salesloft-drift-oauth-supply-chain-attack-cross-industry-lessons-in-third-party-access-visibility
  3. FINRA, Salesloft Drift AI supply chain attack alert — https://www.finra.org/rules-guidance/guidance/salesloft-drift-AI-supply-chain-attack
  4. SecurityWeek on Verizon DBIR 2026 — https://www.securityweek.com/verizon-dbir-2026-vulnerability-exploitation-overtakes-credential-theft-as-top-breach-vector/
  5. Help Net Security, Verizon 2026 DBIR findings — https://www.helpnetsecurity.com/2026/05/20/verizon-2026-dbir-findings/
  6. ENISA Threat Landscape 2025 — https://www.enisa.europa.eu/sites/default/files/2026-01/ENISA%20Threat%20Landscape%202025_v1.2.pdf
  7. AICPA, SOC 2 resources — https://www.aicpa-cima.com/topic/audit-assurance/audit-and-assurance-greater-than-soc-2
  8. AICPA, 2017 Trust Services Criteria with Revised Points of Focus (2022) — https://www.aicpa-cima.com/resources/download/2017-trust-services-criteria-with-revised-points-of-focus-2022
  9. ISO/IEC 27001:2022 — https://www.iso.org/standard/88435.html
  10. 23 NYCRR 500.17 (Cornell LII) — https://www.law.cornell.edu/regulations/new-york/23-NYCRR-500.17
  11. Hunton, New York data breach notification law updated — https://www.hunton.com/privacy-and-information-security-law/new-york-data-breach-notification-law-updated
  12. DoD DIBNet, DFARS 252.204-7012 cyber incident reporting — https://dibnet.dod.mil
  13. CISA et al., 2026 Minimum Elements for a Software Bill of Materials (SBOM) — https://www.cisa.gov/resources-tools/resources/2026-minimum-elements-software-bill-materials-sbom
  14. CISA et al., 2026 SBOM minimum elements (PDF) — https://www.cisa.gov/sites/default/files/2026-07/2026_cisa_sbom_minimum_elements_508c.pdf
  15. SLSA specification — https://slsa.dev/spec/
  16. SLSA levels — https://slsa.dev/spec/v1.1/levels
  17. NIST Secure Software Development Framework (SP 800-218) — https://csrc.nist.gov/projects/ssdf
  18. NIST SP 800-218A, Secure Software Development Practices for Generative AI and Dual-Use Foundation Models — https://csrc.nist.gov/pubs/sp/800/218/a/final
  19. CISA Alert, widespread supply chain compromise impacting the npm ecosystem — https://www.cisa.gov/news-events/alerts/2025/09/23/widespread-supply-chain-compromise-impacting-npm-ecosystem
  20. Unit 42, npm supply chain attack analysis — https://unit42.paloaltonetworks.com/npm-supply-chain-attack/
  21. Microsoft Security, Shai-Hulud 2.0 guidance — https://www.microsoft.com/en-us/security/blog/2025/12/09/shai-hulud-2-0-guidance-for-detecting-investigating-and-defending-against-the-supply-chain-attack/
  22. CSA Labs research note, Shai-Hulud and the AI supply chain — https://labs.cloudsecurityalliance.org/research/csa-research-note-shai-hulud-ai-supply-chain-20260517-csa-st/
  23. Singapore CSA advisory AD-2026-009 — https://www.csa.gov.sg/alerts-and-advisories/advisories/ad-2026-009/
  24. Cycode, GitHub Actions supply chain attack (tj-actions/changed-files) — https://cycode.com/blog/github-actions-supply-chain-attack/
  25. LiteLLM, security update March 2026 — https://docs.litellm.ai/blog/security-update-march-2026
  26. Resecurity, the LiteLLM supply chain attack (TeamPCP "SANDCLOCK") — https://www.resecurity.com/blog/article/the-litellm-supply-chain-attack-teampcp-sandclock-cicd-credential-harvesting-campaign-via-a-backdoored-trivy-github-action
  27. GitGuardian, the Nx s1ngularity attack — https://blog.gitguardian.com/the-nx-s1ngularity-attack-inside-the-credential-leak/
  28. The Hacker News, malicious Nx packages in the s1ngularity attack — https://thehackernews.com/2025/08/malicious-nx-packages-in-s1ngularity.html
  29. The Hacker News, GitHub adds 3-day Dependabot cooldown — https://thehackernews.com/2026/07/github-adds-3-day-dependabot-cooldown.html
  30. CISA, Emergency Directive on F5 devices — https://www.cisa.gov/news-events/news/cisa-issues-emergency-directive-address-critical-vulnerabilities-f5-devices
  31. Zscaler, F5 security incident advisory — https://www.zscaler.com/blogs/security-research/f5-security-incident-advisory
  32. CNN, cyberattack disruption at European airports — https://www.cnn.com/2025/09/22/travel/cyberattack-european-airports-hack-disruption-intl
  33. Jaguar Land Rover cyberattack, summary of press reporting — https://en.wikipedia.org/wiki/Jaguar_Land_Rover_cyberattack
  34. Regulation (EU) 2022/2554 (DORA) — https://eur-lex.europa.eu/eli/reg/2022/2554/oj/eng
  35. Commission Delegated Regulation (EU) 2025/301 — https://eur-lex.europa.eu/eli/reg_del/2025/301/oj
  36. Directive (EU) 2022/2555 (NIS2) — https://eur-lex.europa.eu/legal-content/EN/TXT/HTML/?uri=CELEX:32022L2555
  37. NIST CSF 2.0 (NIST CSWP 29) — https://nvlpubs.nist.gov/nistpubs/CSWP/NIST.CSWP.29.pdf
  38. NIST SP 800-61r3 — https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-61r3.pdf
  39. CIS Critical Security Controls list — https://www.cisecurity.org/controls/cis-controls-list

You will never audit your way to a secure supply chain, and you will never afford a second copy of everything. What you can do is know exactly who holds a key, take back the ones nobody can name an owner for, and make sure the ones that remain expire on a date you chose. Stay pinned, stay scoped, and revoke like you mean it.

This page is one chapter of The 2026 InfoSec Playbook, a free field manual by Daniel Ramos. Checklist statuses and the live coverage model are in the full manual. Free, in full, no email wall.