Skip to content

docs(devsecops): add developer-targeted intrusion guidance - #610

Open
mattaereal wants to merge 6 commits into
developfrom
content/developer-targeted-intrusions
Open

docs(devsecops): add developer-targeted intrusion guidance#610
mattaereal wants to merge 6 commits into
developfrom
content/developer-targeted-intrusions

Conversation

@mattaereal

@mattaereal mattaereal commented Aug 20, 2026

Copy link
Copy Markdown
Collaborator

What does this PR change?

Adds a dev-only Developer-Targeted Intrusions section under DevSecOps, based on the source guide Developer-Targeted
Intrusions: The Execution You Didn't Know You Triggered
.

The source is approximately 4,862 words across 13 major sections. The repository content model recommends splitting
pages with more than five or six top-level sections, so this PR converts it into a focused three-page family:

  1. Overview — social lures, four execution boundaries, explicit versus passive-looking operations, and mutable trust.
  2. Execution Paths in Untrusted Code — source hooks, Git behavior, IDE automation, containers, Terraform,
    smart-contract toolchains, and AI coding agents.
  3. Handling Untrusted Code — intake, isolated retrieval, inspection, constrained first execution, update
    revalidation, and suspected-compromise response.

It also expands the existing IDE page, adds a reciprocal link from Developer Machine Confinement, updates the DevSecOps
page map, and registers the new pages in the sidebar with dev: true.

Related to #48.

Placement decision

This belongs under DevSecOps, not as a new top-level framework and not under /guides.

  • The threat enters through developer workflow boundaries: repository intake, Git, IDEs, build tools, containers,
    infrastructure tooling, and AI coding agents. DevSecOps owns those controls.
  • /guides is primarily for product or platform hardening. This contribution combines a cross-tool threat model with
    an operational procedure.
  • A separate top-level framework would duplicate existing DevSecOps, Supply Chain Security, AI Security, OpSec, DPRK IT
    Workers, and Incident Management material.
  • The nested overview provides a stable landing page if the section grows later without prematurely creating another
    top-level framework.

How it complements existing frameworks

Existing framework or page Existing ownership Contribution from this PR
Supply Chain Security Dependency, build, release, and vendor integrity Initial developer-targeted delivery and first-contact execution boundaries
Integrated Development Environments Editor-specific security Workspace Trust, folder-open tasks, executable tool paths, VSIX handling, extensions, and previews
Developer Machine Confinement Agent and dev-container confinement The intake decision and threat model that determine when confinement is required
AI Security General prompt injection and agent policy Repository-borne instructions and agent tool use during external-code intake
DPRK IT Workers Fraudulent worker identity and organizational access Code-lure outreach without reducing the threat to one actor or recruiting scenario
Incident Management Organization-wide response and recovery Developer-endpoint triggers and immediate escalation into existing playbooks

Technical accuracy changes from the source draft

  • Plain clone, pull, checkout, and folder-open operations are not described as universally executing repository code.
    The text identifies the vulnerability, recursive submodule, configured filter or hook, trusted workspace automation,
    framework loader, extension, or agent tool call that crosses the boundary.
  • CVE-2024-32002 is scoped to recursive clones under specific filesystem conditions and links to the Git advisory.
  • .gitattributes is described as selecting a filter whose executable clean or smudge command lives in Git
    configuration.
  • Ordinary clones are not described as copying repository files into .git/hooks.
  • terraform init is described as downloading and installing providers; provider execution is distinguished from later
    validation, planning, refresh, and apply operations.
  • VS Code folderOpen tasks are qualified by Workspace Trust and automatic-task permission.
  • AI-agent risk is tied to instruction handling and tool invocation rather than claiming that repository text executes
    by itself.
  • Containers are described as confinement, with privileged mode, sockets, forwarded agents, and host mounts called out
    as boundary failures.

Type of change

  • New content
  • Edit to existing content
  • Outline / structure change
  • Typo or formatting fix
  • Tooling / config

If applicable

  • Editing existing content: tagged the current contributors from the attribution list
  • Framework has a steward: asked them to review
  • Outline change: updated vocs.config.ts with the dev: true parameter
  • Want community feedback: shared this PR in our Discord

Attribution

  • New DTI pages: wrote: [blackbigswan], reviewed: [mattaereal]
  • IDE rewrite: prior writers retained (mattaereal, fredriksvantes, ElliotFriedman) plus blackbigswan; reviewed: [mattaereal]
  • DevSecOps overview map update: wrote: [], reviewed: [mattaereal] (map-only edit; no new author)
  • Contributor slug confirmed in docs/pages/config/contributors.json (blackbigswan → GitHub shortdoom)

Validation

  • Local validation commands (pnpm/just/cspell/markdownlint/validate:content/build) were intentionally
    skipped per operator instruction for this handoff run
  • git diff --check: passed
  • Authored pages and sidebar registration were applied from the handoff package; generated indexes were written to the
    expected build output because the build step was not run
  • Title suffix within the DTI family aligned to | SEAL

Reviewer focus

  • Whether the DevSecOps nesting and three-page split are the right long-term information architecture
  • Technical wording around Git filters and hooks, Terraform provider installation versus execution, Workspace Trust,
    and agent tool boundaries
  • Whether the response checklist should remain here or link more aggressively into Incident Management
  • Whether any campaign-specific examples from the source should be restored after independent fact-checking

@github-actions

Copy link
Copy Markdown

Sidebar Configuration Reminder

This PR includes added, renamed, or removed documentation files:

  • docs/pages/devsecops/developer-targeted-intrusions/execution-paths.mdx (added)
  • docs/pages/devsecops/developer-targeted-intrusions/handling-untrusted-code.mdx (added)
  • docs/pages/devsecops/developer-targeted-intrusions/index.mdx (added)
  • docs/pages/devsecops/developer-targeted-intrusions/overview.mdx (added)

Please ensure that:

  • The sidebar in vocs.config.ts has been updated to include these files
  • New content has the dev: true parameter so it's marked as under development
  • Sidebar links match the file paths - use the preview deployment to verify

See Contributing Guide – Sidebar & Navigation for more details.


This is an automated reminder. If this PR doesn't need sidebar changes, you can ignore this message.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 20, 2026

Copy link
Copy Markdown

Deploying frameworks with  Cloudflare Pages  Cloudflare Pages

Latest commit: 36e767b
Status: ✅  Deploy successful!
Preview URL: https://3813cb7c.frameworks-573.pages.dev
Branch Preview URL: https://content-developer-targeted-i.frameworks-573.pages.dev

View logs

Attribute DTI authorship to blackbigswan with mattaereal as reviewer.
Retain prior IDE authors and add blackbigswan. Add must/should/may
wording to the untrusted-code handling procedure.
@mattaereal
mattaereal marked this pull request as ready for review August 20, 2026 23:18

@frameworks-volunteer frameworks-volunteer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Model: x-ai/grok-4.5 Reasoning: high Provider: openrouter

Security

No issues. Docs-only PR; no secrets, injection vectors, or unsafe tooling. Technical boundaries are carefully scoped (plain clone/checkout not universal execution; CVE-2024-32002 recursive-clone conditions; .gitattributes selects filter name, executable lives in Git config; terraform init install vs later provider execution; Workspace Trust + automatic tasks; containers as confinement with mount/socket callouts; agent risk via tool invocation). Credential-free retrieval and disposable isolation guidance are sound.

QA

  • Placement under DevSecOps + three-page split matches the stated content model and complements Supply Chain, IDE, confinement, AI Security, DPRK IT Workers, and Incident Management without duplicating them.
  • Frontmatter, contributors (blackbigswan wrote / mattaereal reviewed; IDE prior authors retained), and blackbigswan registry entry look correct.
  • Internal links resolve; vocs.config.ts registers the section with dev: true; reciprocal links from IDE and Developer Machine Confinement are present.
  • CI green (4 checks). No TODOs/placeholders. Procedure modality (must/should/may) and ordered checklists are clear and actionable.
  • Compromise response appropriately escalates into Incident Management rather than inventing a parallel IR framework.

Nits (non-blocking)

  1. Title suffix inconsistency in the new family: handling-untrusted-code.mdx uses | Security Alliance while overview.mdx and execution-paths.mdx use | SEAL. Both patterns exist in the repo; pick one within this section for polish.
  2. Auto-generated index title: index.mdx is Developer Targeted Intrusions (no hyphen) vs hyphenated elsewhere — expected if generated from the folder name; fine unless you want the folder renamed.
  3. Overview map attribution: DevSecOps overview map edit attributes wrote: [blackbigswan] on a page that previously had empty writers. Intentional per PR body; just flagging in case maintainers prefer additive reviewed only for map-only edits.

Verdict

Approve. Strong threat model, accurate trigger wording, and a usable intake procedure. Nits above are cosmetic only.

@mattaereal
mattaereal requested a review from shortdoom August 21, 2026 23:11
@mattaereal mattaereal self-assigned this Aug 21, 2026
@mattaereal
mattaereal requested a review from scode2277 August 21, 2026 23:11

@scode2277 scode2277 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lgtm. Just changed a sentence in execution-paths that referred to the list above as questions, but the items are statements.

gtg for me @mattaereal!

@scode2277 scode2277 added the content:add This issue or PR adds content or suggests to label Aug 27, 2026

@AllyPry AllyPry left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks really great nothing to add from my side. Maybe just one small suggestion regarding the compromise response section.

- [ ] Stop work and disconnect the affected endpoint from networks according to the incident-response plan
- [ ] Notify the security or incident-response lead and identify everyone who received the same repository or outreach
- [ ] Preserve volatile and disk evidence as directed; do not clean or rebuild the device before responder review
- [ ] From a known-clean device, revoke and rotate every credential, key, token, wallet session, browser session, and

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe it would be worth explicitly covering private key or seed phrase exposure here. If the compromised endpoint had access to either, revoking the wallet session alone may not be sufficient. The assets should be migrated to a newly generated wallet from a clean device.

@ElliotFriedman ElliotFriedman left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thematically, this is really solid!

If there were razors, or smaller distillations that could help someone follow these rules that condensed the checklist, it would probably go a long way to increasing compliance.

Three themes mentioned are time pressure, verification through separate channels and code and environment isolation. If this could be condensed and added into the overview, saying these are the core principles that if followed greatly reduce your risk, it would likely help reduce cognitive overhead and thus compliance for these rules.

If a developer is under time pressure to install a new piece of software, this should be a flag in and of itself where they stop.

If verification attempts from the requester doesn't pass through multiple channels, this should also be a flag and they should attempt to call the contact that requested the install if within their organization.

Isolation is crucial for running untrusted code, do not run anything on your computer from an untrusted source unless it's in a docker container with its egress restricted and ports closed.

Comment on lines +31 to +34
Teams must provide a sanctioned disposable environment before the request arrives. A developer under time pressure will
use a normal workstation when the safer path is unavailable or too slow. The isolation service must support inspection,
controlled dependency retrieval, execution, evidence export, and complete teardown without exposing personal or
production credentials.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is absolutely correct. I wonder if there's a way to make this digestible / easier or policy based on work computers, because when people are stressed out, or under pressure, all of the procedures go out the window.

sessions across identity, source-control, cloud, CI/CD, and production logs
- [ ] Rebuild the endpoint from a trusted image and restore only reviewed data after containment and credential rotation
</Checklist>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These checklists are all solid steps for staying safe!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

content:add This issue or PR adds content or suggests to

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants