<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Steven Foerster Notes</title><description>Hands-on technology executive and security architect. Built GovCon Enclave from concept to the platform behind Rimstorm&apos;s 2026 acquisition.</description><link>https://stevenfoerster.com/</link><item><title>CVE-2026-69321: Windows Power Dependency Coordinator Tampering</title><link>https://stevenfoerster.com/notes/cve-2026-69321/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/cve-2026-69321/</guid><description>Microsoft acknowledged my report of CVE-2026-69321, a Windows Power Dependency Coordinator tampering vulnerability published September 8, 2026.</description><pubDate>Tue, 08 Sep 2026 00:00:00 GMT</pubDate></item><item><title>Sound Obligations, Faltering Machinery: What Joseph II Teaches Us About the CMMC Pause</title><link>https://stevenfoerster.com/notes/joseph-ii-cmmc-reform/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/joseph-ii-cmmc-reform/</guid><description>Joseph II learned that good reforms stall when their machinery outruns their constituency. CMMC now faces the same test.</description><pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate></item><item><title>The base-rate analyst: why SOC intuition decays without feedback</title><link>https://stevenfoerster.com/notes/base-rate-analyst-feedback-loops/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/base-rate-analyst-feedback-loops/</guid><description>Good analysts run on calibrated priors. Those priors only stay calibrated when the triage queue talks back to them.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Copy Fail and Dirty Frag: A Shared-Fragment Invariant</title><link>https://stevenfoerster.com/notes/copy-fail-and-dirty-frag-page-ownership-invariant/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/copy-fail-and-dirty-frag-page-ownership-invariant/</guid><description>Copy Fail and Dirty Frag, three Linux CVEs in ten days, share one root cause: in-place crypto fast paths that write over paged fragments they do not own.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Compliance is kind. Threats are wicked. That&apos;s the CMMC problem.</title><link>https://stevenfoerster.com/notes/compliance-is-kind-threats-are-wicked/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/compliance-is-kind-threats-are-wicked/</guid><description>CMMC L2 is a kind sub-environment bolted onto a wicked one. The job is bridging the two without letting kind absorb wicked. The failure mode is theater.</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>The gap between red team findings and engineering fixes</title><link>https://stevenfoerster.com/notes/red-team-findings-engineering-fixes/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/red-team-findings-engineering-fixes/</guid><description>Red teams find vulnerabilities. Engineering teams ship features. The gap between finding and fixing is where security programs quietly fail.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate></item><item><title>Why Security Platforms Accumulate Operational Complexity</title><link>https://stevenfoerster.com/notes/why-most-security-platforms-collapse-under-operational-complexity/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/why-most-security-platforms-collapse-under-operational-complexity/</guid><description>The threat model is only the beginning. A security platform also has to survive telemetry growth, retention demands, index debt, and customer variance.</description><pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate></item><item><title>Defaults are the only security control that scales</title><link>https://stevenfoerster.com/notes/defaults-are-the-only-security-control-that-scales/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/defaults-are-the-only-security-control-that-scales/</guid><description>Every checkbox on the paved road taxes traffic off it. The real product of a platform team is the default every team inherits by doing nothing.</description><pubDate>Mon, 27 Apr 2026 00:00:00 GMT</pubDate></item><item><title>The unit economics of deception</title><link>https://stevenfoerster.com/notes/unit-economics-of-deception/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/unit-economics-of-deception/</guid><description>Deception is a rare defense where each detection burns attacker resources at near-zero defender cost. A week of data from my site, and why few programs use it.</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate></item><item><title>Why prompt injection is architecturally hard to solve</title><link>https://stevenfoerster.com/notes/why-prompt-injection-is-unsolvable/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/why-prompt-injection-is-unsolvable/</guid><description>Prompt injection is structural in any system that mixes instructions and untrusted data in one context, not a patchable prompting bug.</description><pubDate>Thu, 09 Apr 2026 00:00:00 GMT</pubDate></item><item><title>FHE and LLM inference: the hardest open problem in private AI</title><link>https://stevenfoerster.com/notes/fhe-llm-inference-the-hardest-problem-in-private-ai/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/fhe-llm-inference-the-hardest-problem-in-private-ai/</guid><description>Running LLMs on fully encrypted data is theoretically sound and practically brutal. Here is where the research stands and what actually works today.</description><pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate></item><item><title>What the LiteLLM Compromise Taught Me About Butler</title><link>https://stevenfoerster.com/notes/litellm-supply-chain-attack-and-the-case-for-butler/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/litellm-supply-chain-attack-and-the-case-for-butler/</guid><description>The LiteLLM compromise is a useful threat-model test for Butler, a smaller proxy I maintain for local Ollama deployments.</description><pubDate>Thu, 26 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Why Memory Safety Is a Language Property, Not a Compiler Feature</title><link>https://stevenfoerster.com/notes/why-memory-safety-is-a-language-property/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/why-memory-safety-is-a-language-property/</guid><description>Why Rust and Go are memory safe and type safe while C is not, and why you cannot simply fix this with a better C compiler.</description><pubDate>Tue, 24 Mar 2026 00:00:00 GMT</pubDate></item><item><title>What the xz Backdoor Says About Open Source</title><link>https://stevenfoerster.com/notes/open-source-vulnerability-visibility/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/open-source-vulnerability-visibility/</guid><description>The xz incident shows why inspectability, release provenance, and independent verification matter, not that open source is inherently safer.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate></item><item><title>The SolarWinds Supply Chain Attack</title><link>https://stevenfoerster.com/notes/solarwinds-teardown/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/solarwinds-teardown/</guid><description>How attackers compromised a closed-source build pipeline, shipped a backdoor to 18,000 organizations via a routine update, and hid for nine months.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate></item><item><title>Why Rust Is the Right Language for eBPF</title><link>https://stevenfoerster.com/notes/rust-ebpf-linux-observability/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/rust-ebpf-linux-observability/</guid><description>eBPF has meant writing C and fighting the verifier. Rust and the aya framework change that: type safety, no libbpf, one cargo build for kernel and userspace.</description><pubDate>Tue, 17 Mar 2026 00:00:00 GMT</pubDate></item><item><title>CVE-2014-6271: Shellshock</title><link>https://stevenfoerster.com/notes/shellshock-teardown/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/shellshock-teardown/</guid><description>How a 25-year-old Bash parsing bug allowed remote code execution through environment variables, and why it took multiple patches to fix.</description><pubDate>Fri, 13 Feb 2026 00:00:00 GMT</pubDate></item><item><title>CVE-2024-3094: How the xz Backdoor Crossed the Build Boundary</title><link>https://stevenfoerster.com/notes/xz-backdoor-teardown/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/xz-backdoor-teardown/</guid><description>A sourced teardown of the xz 5.6.0 and 5.6.1 backdoor, from release-tarball tampering to liblzma loading inside selected OpenSSH builds.</description><pubDate>Fri, 06 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Leading small teams that punch above their weight</title><link>https://stevenfoerster.com/notes/leading-small-teams-that-punch-above-their-weight/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/leading-small-teams-that-punch-above-their-weight/</guid><description>What leading eight missionaries through cyclone season taught me about building small engineering teams that outperform their headcount.</description><pubDate>Mon, 02 Feb 2026 00:00:00 GMT</pubDate></item><item><title>CVE-2021-44228: Log4Shell</title><link>https://stevenfoerster.com/notes/log4shell-teardown/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/log4shell-teardown/</guid><description>How a message interpolation feature in Log4j turned every Java app into an unauthenticated RCE target, and what the response revealed about supply chains.</description><pubDate>Fri, 23 Jan 2026 00:00:00 GMT</pubDate></item><item><title>The hidden cost of &apos;just one more exception&apos;</title><link>https://stevenfoerster.com/notes/hidden-cost-of-exceptions/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/hidden-cost-of-exceptions/</guid><description>Exceptions feel harmless in the moment. Over time they become the slow leak that drains security programs.</description><pubDate>Fri, 03 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Productizing Infrastructure: what surprised me most</title><link>https://stevenfoerster.com/notes/productizing-infrastructure/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/productizing-infrastructure/</guid><description>What cutting enclave deployment from two weeks to two hours taught me about one codebase, fleet operations, and saying no to forks.</description><pubDate>Fri, 19 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Security Architecture vs Security Operations: the gap that breaks teams</title><link>https://stevenfoerster.com/notes/security-architecture-vs-operations/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/security-architecture-vs-operations/</guid><description>Security architecture defines the promises; security operations keeps them. When those two drift, the organization pays the bill.</description><pubDate>Fri, 05 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Shellcode Under Constraints</title><link>https://stevenfoerster.com/notes/shellcode-under-constraints/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/shellcode-under-constraints/</guid><description>Techniques for crafting exploit payloads when buffer space is limited, bad characters are abundant, and mitigations restrict your options.</description><pubDate>Fri, 29 Aug 2025 00:00:00 GMT</pubDate></item><item><title>Private AI in Your SOC: How to Run LLMs Locally</title><link>https://stevenfoerster.com/notes/private-ai-in-your-soc-how-to-run-llms-locally/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/private-ai-in-your-soc-how-to-run-llms-locally/</guid><description>Operating LLMs locally can help analysts summarize and triage sensitive telemetry without shipping data to third-party services.</description><pubDate>Mon, 11 Aug 2025 00:00:00 GMT</pubDate></item><item><title>Multi-Tenant WireGuard: One VPN Server per Client, Orchestrated with iptables</title><link>https://stevenfoerster.com/notes/wireguard-multi-tenancy-with-iptables/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/wireguard-multi-tenancy-with-iptables/</guid><description>How Mistborn gave every WireGuard client its own server instance, generated firewall rules per device, and kept Docker from punching holes in the host.</description><pubDate>Mon, 10 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Automation Is How Zero Trust Survives Contact with Operations</title><link>https://stevenfoerster.com/notes/zero-trust-without-automation/</link><guid isPermaLink="true">https://stevenfoerster.com/notes/zero-trust-without-automation/</guid><description>Zero Trust needs sound identity, policy, and enforcement. Automation keeps those controls current as systems and people change.</description><pubDate>Mon, 01 Jan 2024 00:00:00 GMT</pubDate></item></channel></rss>