// All content data — easy to swap. const PROFILE = { alias: "SPECIAL-K", realName: "Karl Fox", role: "Red Team AI Engineer", location: "USA · Remote", status: "Active @ KPMG · Offensive AI Security", years: "16", email: "kfoxirl@gmail.com", signal: "919.453.8267", gpgFp: "HIPAA · GDPR · AI · SEC", kanji: "狐", // 影 shadow · 刃 blade · 鬼 demon · 赤 red · 侍 samurai · 闇 darkness · 狐 fox kanjiRomaji: "kitsune", kanjiMeaning: "fox", }; const MANIFESTO = [ { n: "00", text: "Models are systems. Systems have seams. My work lives in the seams." }, { n: "01", text: "I think like the attacker so the defender doesn't have to guess. Threat models are written, not assumed." }, { n: "02", text: "An exploit you can't reproduce is a story. An exploit you can automate is a finding. Findings ship with PoCs." }, { n: "03", text: "Disclosure is a craft. Quiet when it must be, loud when it should be, always on the record." }, ]; const WORK = [ { id: "01", year: "2026", target: "KPMG · Offensive AI Security", classification: "ACTIVE", title: "Project Deployment: Red Team AI Engineer", summary: "Currently embedded within KPMG's Offensive AI Security division. Engagement focus: adversarial robustness testing, LLM jailbreak research, and multi-agent system threat modelling. Methodology involves mapping the latent attack surface of enterprise-tuned models.", impact: ["Day 03", "Deployment: Active", "Status: Onboarding"], accent: "var(--accent)", }, ]; const CAPABILITIES = [ { group: "OFFENSIVE", items: ["Prompt injection (direct / indirect / multi-turn)", "Jailbreak research & taxonomy", "Tool-use & agent hijacking", "Training-data extraction", "Model fingerprinting"] }, { group: "ADVERSARIAL ML", items: ["Gradient-based attacks (PGD, C&W)", "Black-box transfer attacks", "Embedding-space adversarials", "Membership inference", "Backdoor / poisoning audits"] }, { group: "INFRASTRUCTURE", items: ["MLOps supply-chain review", "Inference-server pentest", "Sandbox escape (Python, JS, shell)", "Secrets & SSRF in agent fleets", "Eval-harness integrity"] }, { group: "PROCESS", items: ["Threat modelling (STRIDE / LINDDUN-AI)", "Red-team playbook authoring", "Coordinated disclosure", "Eval design for safety teams", "Tabletop exercises"] }, ]; const RECOGNITION = [ { kind: "RANK", venue: "National Cyber League", year: "2025", title: "Diamond Ranking (Top 1%) · Special-K", logo: "uploads/diamondrank.png?v=2" }, { kind: "CERT", venue: "Red Hat", year: "2023", title: "RHCSA — Red Hat Certified System Administrator", logo: "uploads/rhcsa.png" }, { kind: "DEGREE", venue: "Western Governors University", year: "2028 (EST)", title: "B.S. Cybersecurity & Information Assurance", logo: "uploads/wgu.png" }, { kind: "CERT", venue: "CompTIA", year: "2026", title: "Network+", logo: "uploads/Network+-png.png" }, { kind: "CERT", venue: "CompTIA", year: "2025", title: "A+", logo: "uploads/A+-png.png" }, { kind: "CERT", venue: "Wake Technical Community College", year: "2016", title: "Programming Certification", logo: "uploads/waketech.png" }, { kind: "DEGREE", venue: "Dundalk Institute of Technology", year: "2007", title: "B.A. Communications with Creative Multimedia", logo: "uploads/Dundalk-Institute-of-Technology-Logo-600x394.jpg" }, ]; const WRITING = [ { n: "01", year: "2024", t: "On disclosure without theatre", tag: "essay", body: "Security research is often overshadowed by the desire for spectacle. Real impact is found in the quiet, methodical mapping of a system's boundaries. Disclosure should not be a theatrical performance, but a professional handover of actionable intelligence. When we prioritize the 'show' over the 'fix', we fail the very systems we aim to protect." }, { n: "02", year: "2025", t: "Threat models for agent fleets", tag: "essay", body: "As we move toward autonomous agentic swarms, the attack surface expands exponentially. It is no longer enough to secure the model; we must secure the communication channels, the planning loops, and the tool-use permissions. A single hijacked agent can become a Trojan horse for an entire enterprise network. We need a new taxonomy for agent-centric threats." }, { n: "03", year: "2025", t: "Why your refusal head forgets", tag: "essay", body: "Safety tuning in LLMs is often a thin veneer. Refusal heads can be bypassed by simply shifting the context window into a high-entropy state where the guardrails lose their anchor. By 'laundering' disallowed requests through nested personas, we can effectively erase the model's memory of its own constraints. The architecture of safety must be deeper than the top-k sampling." }, ]; const TIMELINE = [ { y: "2026", t: "Red Team AI Engineer, KPMG · current" }, { y: "2018", t: "Staff Systems Engineer, Siemens Healthineers · 2026" }, { y: "2013", t: "Senior Systems Engineer, Siemens Healthineers · 2018" }, { y: "2011", t: "Product Quality Lead, Hill-Rom IT Solutions · 2013" }, { y: "2010", t: "Product Quality Analyst, Hill-Rom IT Solutions · 2011" }, ]; Object.assign(window, { PROFILE, MANIFESTO, WORK, CAPABILITIES, RECOGNITION, WRITING, TIMELINE });