41554 blogs · [ { "id": "01a0d8ba-2f63-70ff-9eba-534ca36f0314", "title": "Why Hidden Data Dies in Chat Apps: LSB vs a Robust Watermark, Measured", "url": "https://harrisonsec.com/blog/hidden-data-dies-in-chat-apps-measured/", "published_at": "2026-09-23T08:00:00+00:00" }, { "id": "01a0d8ba-2f63-70ff-9eba-534ca259ddd2", "title": "WaxSeal: Robust Image Watermarking for Secret Delivery", "url": "https://harrisonsec.com/projects/waxseal/", "published_at": "2026-09-23T00:00:00+00:00" }, { "id": "01a0b8af-778c-726a-a677-f543ed1d97ce", "title": "Pi Ships Zero Lines of MCP. Codex Ships 53,713.", "url": "https://harrisonsec.com/blog/mcp-is-a-schema-stability-trade/", "published_at": "2026-09-18T08:00:00+00:00" }, { "id": "01a0b8af-778c-726a-a677-f543edd4584c", "title": "Your Agent Session Is a Tree. Your Code Thinks It Is a List.", "url": "https://harrisonsec.com/blog/durable-unit-of-agent-state/", "published_at": "2026-09-15T08:00:00+00:00" }, { "id": "01a09504-3a41-7172-91e0-5f577a4d371e", "title": "550 Tokens of Prompt, 588 Tokens of Tools", "url": "https://harrisonsec.com/blog/system-prompt-token-floor/", "published_at": "2026-09-11T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17114b22f", "title": "Same Model, 13.3% to 38.3%", "url": "https://harrisonsec.com/blog/the-benchmark-was-measuring-the-harness/", "published_at": "2026-09-08T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1715c7b07", "title": "Building a Bootloader from Scratch — Just Assembly, No OS", "url": "https://harrisonsec.com/blog/bootloader-from-scratch-assembly-no-os/", "published_at": "2026-09-07T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17255cdc0", "title": "Debugging a Real-Mode Bootloader in GDB — When CS Changes, Symbols Break", "url": "https://harrisonsec.com/blog/real-mode-bootloader-gdb-symbols-broken/", "published_at": "2026-09-07T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec172925b51", "title": "Debugging the Ubuntu 6.8 Kernel in GDB & QEMU — Without Rebuilding It", "url": "https://harrisonsec.com/blog/ubuntu-6-8-x86-64-kernel-debug-gdb-qemu/", "published_at": "2026-09-07T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec172d594d3", "title": "Building & Debugging a Custom ARM64 Linux Kernel — Yocto, QEMU, GDB", "url": "https://harrisonsec.com/blog/arm64-linux-kernel-debug-yocto-qemu-gdb/", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1734a024c", "title": "Cache Miss, TLB Miss, False Sharing — Three Killers Your Profiler Won't Name", "url": "https://harrisonsec.com/blog/cache-miss-tlb-false-sharing-coretracer/", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1736e005a", "title": "eBPF on Linux — kprobe vs fentry: Hooking Internals & What Production Observability Misses", "url": "https://harrisonsec.com/blog/ebpf-kprobe-vs-fentry-kernel-observability/", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec173f5c2fa", "title": "From Real Mode to Protected Mode — What the GDT and IDT Actually Define", "url": "https://harrisonsec.com/blog/from-real-mode-to-protected-mode-gdt-idt/", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1745f03b6", "title": "How x86 Conditional Jumps Really Work — EFLAGS, Not Operands", "url": "https://harrisonsec.com/blog/x86-jumps-eflags-gdb-pwndbg/", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec174914f63", "title": "Store→Load Reordering: x86 vs ARM64, and the Bug Intel Was Hiding", "url": "https://harrisonsec.com/blog/store-load-reordering-x86-vs-arm64/", "published_at": "2026-09-06T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec174eccad9", "title": "The Approval Prompt Is Not the Sandbox", "url": "https://harrisonsec.com/blog/agent-harness-is-not-a-sandbox/", "published_at": "2026-09-04T01:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec175b70455", "title": "Three Agent Harnesses, One Loop", "url": "https://harrisonsec.com/blog/three-harnesses-one-loop/", "published_at": "2026-09-01T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17652f25f", "title": "Your Model File Is Untrusted Input", "url": "https://harrisonsec.com/blog/gguf-loader-untrusted-model-files/", "published_at": "2026-08-26T09:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17710fda0", "title": "Merged Is Not Shipped: Why a Year-Old Fix Never Reached You", "url": "https://harrisonsec.com/blog/merged-is-not-shipped/", "published_at": "2026-08-22T09:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec177c4092e", "title": "The Log Printed Exactly What I Wanted. The Fix Was Still Wrong.", "url": "https://harrisonsec.com/blog/evidence-that-isnt-evidence/", "published_at": "2026-08-19T09:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17858568b", "title": "Your VPN Is Fine. iOS Swapped the Address.", "url": "https://harrisonsec.com/blog/nat64-vpn-raw-socket-address-substitution/", "published_at": "2026-08-15T09:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec178abd3fd", "title": "Tool Calls Need Completion Ownership: Why Your Agent's 200 OK Lies", "url": "https://harrisonsec.com/blog/tool-calls-need-completion-ownership/", "published_at": "2026-08-13T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1798c4e9b", "title": "Your AI Bill Is a Distributed Systems Problem, Not a Model-Pricing Problem", "url": "https://harrisonsec.com/blog/your-ai-bill-is-a-distributed-systems-problem/", "published_at": "2026-08-04T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17a4d57f2", "title": "Validation Is a Loop, Not an Assertion: Why Your AI Agent Reports Success It Never Achieved", "url": "https://harrisonsec.com/blog/validation-is-a-loop-not-an-assertion/", "published_at": "2026-07-28T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17ae7ddf4", "title": "A Wrong Ruler Is Worse Than No Ruler: Verifying the Checks You Trust", "url": "https://harrisonsec.com/blog/a-wrong-ruler-is-worse-than-no-ruler/", "published_at": "2026-07-17T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17b48d3c7", "title": "Determinism Where You Can, Judgement Where You Must: The Technique Boundary for AI Systems", "url": "https://harrisonsec.com/blog/the-technique-boundary/", "published_at": "2026-07-09T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17bd66077", "title": "Shrink the Stochastic Surface: A Design Standard for Probabilistic Systems", "url": "https://harrisonsec.com/blog/shrink-the-stochastic-surface/", "published_at": "2026-06-24T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17cccc0a8", "title": "Generative AI Builds Shapes, Not Games: The Constraint Gap and the Architecture That Closes It", "url": "https://harrisonsec.com/blog/generative-ai-builds-shapes-not-games/", "published_at": "2026-06-20T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17d6257c4", "title": "I Tested Higgsfield's Minecraft 'Prompt-to-Build.' It Generates Shapes, Not Scenes.", "url": "https://harrisonsec.com/blog/i-tested-higgsfield-minecraft-prompt-to-build/", "published_at": "2026-06-18T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17e3f08d6", "title": "Agent Architecture Is a Compute Allocation Problem: The Advisor Strategy, Cost-Curve Frame Recursed", "url": "https://harrisonsec.com/blog/agent-architecture-compute-allocation-advisor-strategy/", "published_at": "2026-06-15T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17eecf19e", "title": "Agent Retrieval Above the Crossover: A First-Principles Read of CodeGraph", "url": "https://harrisonsec.com/blog/codegraph-architecture-first-principles-llm-retrieval/", "published_at": "2026-06-08T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17f012741", "title": "I Tested CodeGraph on Hono. The Tool-Call Savings Reproduce — the Cost Savings Don't.", "url": "https://harrisonsec.com/blog/i-tested-codegraph-on-hono-benchmark/", "published_at": "2026-06-01T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17fc32f70", "title": "Agent Memory Is a Cache Coherence Problem", "url": "https://harrisonsec.com/blog/agent-memory-is-a-cache-coherence-problem/", "published_at": "2026-05-28T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec17fd57293", "title": "Agent Retrieval Is a Cost Curve Problem: Why Claude Code Doesn't Use RAG", "url": "https://harrisonsec.com/blog/agent-retrieval-cost-curve-claude-code-grep-vs-rag/", "published_at": "2026-05-25T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1809f9d31", "title": "Channels Aren't Message Passing — How Parked Goroutines OOM-Killed a Pod", "url": "https://harrisonsec.com/blog/channels-arent-message-passing/", "published_at": "2026-05-12T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec180c41daa", "title": "How I Improved an AI Agent from 40% to 60% — With A/B Test Data", "url": "https://harrisonsec.com/blog/ai-agent-40-to-60-percent-with-ab-data/", "published_at": "2026-05-12T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec180c7a74a", "title": "Don't Pick One AI. Run Three Against Each Other.", "url": "https://harrisonsec.com/blog/dont-pick-one-ai-run-three/", "published_at": "2026-05-03T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1812bca17", "title": "Node Turns Waiting Into Events. Go Moves Context Switching Into User Space.", "url": "https://harrisonsec.com/blog/node-go-concurrency-event-loop-vs-user-space-scheduling/", "published_at": "2026-04-27T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec181643871", "title": "Why Your AI Agent Keeps Failing — The 90% Problem", "url": "https://harrisonsec.com/videos/why-your-ai-agent-keeps-failing/", "published_at": "2026-04-20T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18215b5e9", "title": "The 90% AI Agent Problem", "url": "https://harrisonsec.com/podcast-ai/the-90-percent-ai-agent-problem/", "published_at": "2026-04-18T18:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec182233af8", "title": "The 90% AI Agent Problem (Podcast Episode)", "url": "https://harrisonsec.com/videos/the-90-percent-ai-agent-problem-podcast/", "published_at": "2026-04-18T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18281d9b0", "title": "The 90% Problem: Why Most AI Agents Are Still Broken", "url": "https://harrisonsec.com/blog/ai-agent-90-percent-problem/", "published_at": "2026-04-17T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1832e3780", "title": "Claude Code + Codex Plugin: Two AI Brains, One Terminal", "url": "https://harrisonsec.com/blog/claude-code-codex-plugin-two-brains/", "published_at": "2026-04-07T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec183e102fe", "title": "Why Claude Code's Agent Loop Is 1,421 Lines", "url": "https://harrisonsec.com/videos/claude-code-deep-dive-query-loop/", "published_at": "2026-04-06T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1843272f0", "title": "Claude Code Deep Dive Part 4: Why It Uses Markdown Files Instead of Vector DBs", "url": "https://harrisonsec.com/blog/claude-code-memory-first-principles-tradeoffs/", "published_at": "2026-04-05T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec184a8499e", "title": "How Claude Code Compresses Context — The 5-Level Pipeline", "url": "https://harrisonsec.com/blog/claude-code-context-engineering-compression-pipeline/", "published_at": "2026-04-04T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec184f444f8", "title": "Claude Code Deep Dive Part 2: The 1,421-Line While Loop That Runs Everything", "url": "https://harrisonsec.com/blog/claude-code-deep-dive-query-loop/", "published_at": "2026-04-03T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec185e3a11c", "title": "Observability and Billing for AI API Calls: A T-Shaped Architecture", "url": "https://harrisonsec.com/blog/observability-billing-t-architecture-ai-api-calls/", "published_at": "2026-04-01T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec186d2a513", "title": "Claude Code MEMORY.md Spec: The 4 Frontmatter Types Decoded (user / feedback / project / reference)", "url": "https://harrisonsec.com/blog/claude-code-memory-simpler-than-you-think/", "published_at": "2026-04-01T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18715a039", "title": "Claude Code Source Leaked: Kairos, Undercover Mode, Ultraplan — 5 Hidden Features (510K Lines)", "url": "https://harrisonsec.com/blog/claude-code-source-leaked-hidden-features/", "published_at": "2026-03-31T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec187734072", "title": "The AI Stack Explained — Extended Podcast (22 min)", "url": "https://harrisonsec.com/videos/ai-stack-explained-extended-podcast/", "published_at": "2026-03-29T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec187f2792e", "title": "The Complete AI Architecture Deep Dive — From LLM to Autonomous Agent (48 min)", "url": "https://harrisonsec.com/videos/complete-ai-architecture-deep-dive/", "published_at": "2026-03-29T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18844914b", "title": "The Complete AI Architecture Deep Dive: From LLM to Autonomous Agent (48 min)", "url": "https://harrisonsec.com/podcast-ai/llm-token-agent-complete-deep-dive/", "published_at": "2026-03-28T09:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18845c09d", "title": "Consistency in Distributed Systems: Scenarios, Trade-offs, and What Actually Works", "url": "https://harrisonsec.com/blog/consistency-scenarios-and-approaches-production/", "published_at": "2026-03-28T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18897066d", "title": "The AI Stack Explained: LLM Talks, Program Walks", "url": "https://harrisonsec.com/blog/ai-stack-explained-llm-talks-program-walks/", "published_at": "2026-03-28T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1896f595a", "title": "The AI Stack Explained: LLM, Token, Context, Function Calling, MCP, Agent, Skill — They're All the Same Thing", "url": "https://harrisonsec.com/podcast-ai/llm-token-agent-same-thing/", "published_at": "2026-03-28T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18a208440", "title": "The AI Stack Explained: LLM Talks, Program Walks", "url": "https://harrisonsec.com/videos/ai-stack-explained/", "published_at": "2026-03-28T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18aedc8d8", "title": "gRPC Interceptors in Production: Design Patterns That Survive Real Load", "url": "https://harrisonsec.com/blog/grpc-interceptors-design-patterns-production/", "published_at": "2026-03-24T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18b6e6ea0", "title": "Go Generics, One Year In: Which Promises Held, Which Didn't", "url": "https://harrisonsec.com/blog/go-generics-one-year-in-production/", "published_at": "2026-03-18T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18bc46919", "title": "Go Profiling in Anger: pprof, Escape Analysis, and Inlining Without Magic", "url": "https://harrisonsec.com/blog/go-profiling-pprof-escape-analysis-inlining/", "published_at": "2026-03-12T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18c039143", "title": "sync.Pool in Go: When It Actually Helps, and When It Quietly Hurts", "url": "https://harrisonsec.com/blog/go-sync-pool-buffer-reuse-when-it-helps/", "published_at": "2026-03-05T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18c63dfd3", "title": "Why Failing Fast Triggers Cascading Failures in Distributed Systems", "url": "https://harrisonsec.com/podcast/fail-fast-bounded-resilience/", "published_at": "2026-03-04T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18d3ad3d6", "title": "Why Your \"Fail-Fast\" Strategy is Killing Your Distributed System (and How to Fix It)", "url": "https://harrisonsec.com/blog/fail-fast-bounded-resilience-distributed-systems/", "published_at": "2026-03-04T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18df2dc27", "title": "RPC vs NATS: It's Not About Sync vs Async — It's About Who Owns Completion", "url": "https://harrisonsec.com/blog/rpc-vs-nats-who-owns-completion/", "published_at": "2026-02-28T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18ed143ec", "title": "NATS vs Kafka vs MQTT: Same Category, Very Different Jobs", "url": "https://harrisonsec.com/blog/nats-kafka-mqtt-same-category-different-jobs/", "published_at": "2026-02-24T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec18f8f1fe4", "title": "Docker × Kubernetes: What They Really Changed (It's Not What You Think)", "url": "https://harrisonsec.com/blog/docker-kubernetes-what-they-really-changed/", "published_at": "2026-02-21T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1905f26f5", "title": "Scale-Up vs Scale-Out: Why Every Language Wins Somewhere", "url": "https://harrisonsec.com/blog/scale-up-scale-out-every-language-wins-somewhere/", "published_at": "2026-02-20T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19108039e", "title": "Testing Real-World Go Backends Isn't What Many People Think", "url": "https://harrisonsec.com/blog/testing-real-world-go-backends/", "published_at": "2026-02-18T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec191402370", "title": "Observability and Cost Attribution: Why One Pipeline Isn't Enough", "url": "https://harrisonsec.com/blog/observability-cost-attribution-dual-path-architecture/", "published_at": "2026-02-15T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec191f1d80d", "title": "Go Context in Distributed Systems: What Actually Works in Production", "url": "https://harrisonsec.com/blog/go-context-distributed-systems-production/", "published_at": "2026-02-13T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19253c9fa", "title": "Go's Concurrency Is About Structure, Not Speed: chan and context as Lifecycle Primitives", "url": "https://harrisonsec.com/blog/go-chan-context-structure-not-speed/", "published_at": "2025-11-21T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19321f49a", "title": "IronSys: A Production Blueprint for Modern Concurrency", "url": "https://harrisonsec.com/blog/ironsys-blueprint-modern-concurrency-in-production/", "published_at": "2025-10-22T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1940626f2", "title": "From Locks to Actors: The Four Pillars of Modern Concurrency", "url": "https://harrisonsec.com/blog/four-pillars-modern-concurrency-locks-to-actors/", "published_at": "2025-10-20T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec194320838", "title": "Why Go Handles Millions of Connections: User-Space Context Switching, Explained", "url": "https://harrisonsec.com/blog/go-millions-connections-user-space-context-switching/", "published_at": "2025-10-13T08:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1950f8f8e", "title": "From Real Mode to Protected Mode: Building Custom GDT & IDT for x86 Security", "url": "https://harrisonsec.com/videos/from-real-mode-to-protected-mode-gdt-idt/", "published_at": "2025-08-13T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19554d294", "title": "How to Build & Debug a Custom ARM64 Linux Kernel with Yocto, QEMU, and GDB", "url": "https://harrisonsec.com/videos/arm64-linux-kernel-debug-yocto-qemu-gdb/", "published_at": "2025-08-05T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1961a2c01", "title": "eBPF on Linux: kprobe vs fentry (tracing) — Hooking Internals & Assembly Analysis", "url": "https://harrisonsec.com/videos/ebpf-kprobe-vs-fentry-kernel-observability/", "published_at": "2025-08-04T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec196e78dcf", "title": "Rust vs C: Assembly Comparison — Ownership & Bounds Checking", "url": "https://harrisonsec.com/videos/rust-vs-c-assembly-ownership-bounds-checking/", "published_at": "2025-08-04T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec197b05342", "title": "SentinelEdge: Advanced eBPF Kernel Security & Systems Architecture", "url": "https://harrisonsec.com/videos/sentineledge-ebpf-kernel-security/", "published_at": "2025-08-04T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec1989000b2", "title": "Cache Miss, TLB Miss & False Sharing — The Performance Killers in 3 Minutes", "url": "https://harrisonsec.com/videos/cache-miss-tlb-false-sharing-coretracer/", "published_at": "2025-08-03T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec199807dc7", "title": "Store→Load Reordering: x86 vs ARM64 Real-World Test", "url": "https://harrisonsec.com/videos/store-load-reordering-x86-vs-arm64/", "published_at": "2025-08-03T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec199e83068", "title": "Debugging Real-Mode Bootloader in GDB (CS Changed, Symbols Broken)", "url": "https://harrisonsec.com/videos/real-mode-bootloader-gdb-symbols-broken/", "published_at": "2025-08-02T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19a53f5ad", "title": "Debugging Ubuntu 6.8 x86_64 Kernel with GDB & QEMU — Disable KASLR Without Rebuild", "url": "https://harrisonsec.com/videos/ubuntu-6-8-x86-64-kernel-debug-gdb-qemu/", "published_at": "2025-08-02T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19b4729c8", "title": "How x86 Jumps REALLY Work: EFLAGS Truth with GDB + pwndbg", "url": "https://harrisonsec.com/videos/x86-jumps-eflags-gdb-pwndbg/", "published_at": "2025-07-11T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19b61cb6f", "title": "Rust vs C Assembly: Complete Performance and Safety Analysis - Panic or Segfault?", "url": "https://harrisonsec.com/blog/rust-vs-c-assembly-performance-safety-analysis/", "published_at": "2025-07-08T10:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19bcc0189", "title": "How to Build a Bootloader from Scratch — Just Assembly, No OS", "url": "https://harrisonsec.com/videos/bootloader-from-scratch-assembly-no-os/", "published_at": "2025-06-18T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19c63341e", "title": "Legacy Compatibility Lab: My Full Stack for Reviving Dead Software", "url": "https://harrisonsec.com/blog/legacy-compatibility-lab-full-stack/", "published_at": "2025-05-30T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19cf50424", "title": "Placed 2nd at BSides Vancouver 2025 Blue Team CTF – With Just ChatGPT and Stubbornness", "url": "https://harrisonsec.com/blog/bsides-vancouver-2025-blue-team-ctf-2nd-place-chatgpt/", "published_at": "2025-05-25T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19d4e1ade", "title": "HarrisonSec Lab Tour | A Journey Through Computing Evolution", "url": "https://harrisonsec.com/videos/security-lab-tour/", "published_at": "2025-05-17T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec170471a8c", "title": "Secured VLAN", "url": "https://harrisonsec.com/projects/secured-vlan/", "published_at": "2025-05-16T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19d606e95", "title": "Complete Secure Company Network Design", "url": "https://harrisonsec.com/videos/secure-company-network-design/", "published_at": "2025-05-12T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19e03ce73", "title": "Buffer Overflow Attack Explained", "url": "https://harrisonsec.com/videos/buffer-overflow-attack/", "published_at": "2025-05-10T00:00:00+00:00" }, { "id": "01a08781-9699-7223-a910-b84201c5912b", "title": "StegoSafe", "url": "https://harrisonsec.com/projects/distributed-key-storage/", "published_at": "2025-05-08T00:00:00+00:00" }, { "id": "01a08781-969a-7159-9040-bec19ee763b3", "title": "LegacyOps™ | Expert Legacy Software Recovery & Security", "url": "https://harrisonsec.com/projects/legacyops/", "published_at": "2025-05-05T00:00:00+00:00" }, { "id": "01a08781-9699-7223-a910-b8420129ae18", "title": "QuantumVault", "url": "https://harrisonsec.com/projects/quantumvault/", "published_at": "2025-05-01T00:00:00+00:00" } ] posts Claim your blog
Back to harrisonsec.com
Blog · corpus.blog/blogs/harrisonsec.com/posts

harrisonsec.com

harrisonsec.com

2026

2025