<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Hackicker — writing</title>
  <subtitle>Research notes and verified-finding breakdowns. Newest first.</subtitle>
  <link href="https://hackicker.com/writing.html"/>
  <link rel="self" href="https://hackicker.com/feed.xml"/>
  <id>https://hackicker.com/</id>
  <updated>2026-09-02T00:00:00Z</updated>
  <entry>
    <title>Inner-Parser SSRF</title>
    <link href="https://sin99xx.medium.com/inner-parser-ssrf-e940b76514e7"/>
    <id>https://sin99xx.medium.com/inner-parser-ssrf-e940b76514e7</id>
    <published>2026-06-06T00:00:00Z</published>
    <updated>2026-06-06T00:00:00Z</updated>
    <summary>The bug class your URL validator was never going to catch.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>Race Conditions Are Not Race Conditions</title>
    <link href="https://sin99xx.medium.com/race-conditions-are-not-only-race-conditions-e80ab397d93e"/>
    <id>https://sin99xx.medium.com/race-conditions-are-not-only-race-conditions-e80ab397d93e</id>
    <published>2026-06-04T00:00:00Z</published>
    <updated>2026-06-04T00:00:00Z</updated>
    <summary>Concurrency is the cheapest way to wedge a state machine apart. The window is never the bug.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>CVE-2026-48840 — Uninitialised Stack Leak in Exim's PROXY Parser</title>
    <link href="https://sin99xx.medium.com/cve-2026-48840-uninitialised-stack-leak-in-exims-proxy-parser-e2d1336b3e16"/>
    <id>https://sin99xx.medium.com/cve-2026-48840-uninitialised-stack-leak-in-exims-proxy-parser-e2d1336b3e16</id>
    <published>2026-06-04T00:00:00Z</published>
    <updated>2026-06-04T00:00:00Z</updated>
    <summary>Half the mail servers on the internet, reachable before auth.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>Stylesheets Are Code: Hunting a Build-Time RCE Primitive Hidden in Plain Sight for Four Years</title>
    <link href="https://github.com/sin99xx/researchlab/blob/main/angular-less-rce.md"/>
    <id>https://github.com/sin99xx/researchlab/blob/main/angular-less-rce.md</id>
    <published>2026-05-03T00:00:00Z</published>
    <updated>2026-05-03T00:00:00Z</updated>
    <summary>What the supply-chain checkboxes don't check — the stylesheet compiler runs code.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>OIDC and OAuth 2.0 for People Looking for Bugs</title>
    <link href="https://sin99xx.medium.com/oidc-and-oauth-2-0-for-people-looking-for-bugs-03b45e2b9aad"/>
    <id>https://sin99xx.medium.com/oidc-and-oauth-2-0-for-people-looking-for-bugs-03b45e2b9aad</id>
    <published>2026-03-19T00:00:00Z</published>
    <updated>2026-03-19T00:00:00Z</updated>
    <summary>If a product uses OAuth artifacts to answer OIDC questions, you are already in bug territory.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>Cookies and CORS for People Looking for Bugs</title>
    <link href="https://sin99xx.medium.com/cookies-and-cors-for-people-looking-for-bugs-6a67de67784f"/>
    <id>https://sin99xx.medium.com/cookies-and-cors-for-people-looking-for-bugs-6a67de67784f</id>
    <published>2026-03-18T00:00:00Z</published>
    <updated>2026-03-18T00:00:00Z</updated>
    <summary>Most teams do not have a cookie model or a CORS model. They have folklore.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>JWTs for People Who Hunt Bugs, Not Blog Posts</title>
    <link href="https://sin99xx.medium.com/jwts-for-people-who-hunt-bugs-not-blog-posts-3c7020d2d7d8"/>
    <id>https://sin99xx.medium.com/jwts-for-people-who-hunt-bugs-not-blog-posts-3c7020d2d7d8</id>
    <published>2026-03-17T00:00:00Z</published>
    <updated>2026-03-17T00:00:00Z</updated>
    <summary>A serialized cryptographic object carrying attacker-controlled metadata — the question is what the verifier permits.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>When a Composite Checkout Keeps Pricing From a State That No Longer Exists</title>
    <link href="https://sin99xx.medium.com/when-a-composite-checkout-keeps-pricing-from-a-state-that-no-longer-exists-edffe47cba64"/>
    <id>https://sin99xx.medium.com/when-a-composite-checkout-keeps-pricing-from-a-state-that-no-longer-exists-edffe47cba64</id>
    <published>2026-03-15T00:00:00Z</published>
    <updated>2026-03-15T00:00:00Z</updated>
    <summary>Breaking a transaction invariant in a bundled checkout flow.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>Most Bug Bounty Writeups Are Recycled. Real Bugs Are Hiding in the Specs.</title>
    <link href="https://sin99xx.medium.com/most-bug-bounty-writeups-are-recycled-real-bugs-are-hiding-in-the-specs-ded73f6dd06e"/>
    <id>https://sin99xx.medium.com/most-bug-bounty-writeups-are-recycled-real-bugs-are-hiding-in-the-specs-ded73f6dd06e</id>
    <published>2026-03-14T00:00:00Z</published>
    <updated>2026-03-14T00:00:00Z</updated>
    <summary>An account takeover through a Google login flow, found by reading the OIDC spec.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>The Header No One Was Watching</title>
    <link href="https://sin99xx.medium.com/the-header-no-one-was-watching-a-quiet-idor-in-a-financial-system-0fcba65e2ace"/>
    <id>https://sin99xx.medium.com/the-header-no-one-was-watching-a-quiet-idor-in-a-financial-system-0fcba65e2ace</id>
    <published>2025-11-19T00:00:00Z</published>
    <updated>2025-11-19T00:00:00Z</updated>
    <summary>A quiet IDOR in a financial system — found because something felt too clean.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
  <entry>
    <title>Google Gemini iOS: Public Link Sharing Silently Leaks Entire Conversations</title>
    <link href="https://sin99xx.medium.com/google-gemini-ios-vulnerability-public-link-sharing-silently-leaks-entire-conversations-e1f80cbea25c"/>
    <id>https://sin99xx.medium.com/google-gemini-ios-vulnerability-public-link-sharing-silently-leaks-entire-conversations-e1f80cbea25c</id>
    <published>2025-04-14T00:00:00Z</published>
    <updated>2025-04-14T00:00:00Z</updated>
    <summary>Share a snippet, leak the conversation. Now CVE-2025-5009.</summary>
    <author><name>Warisjeet Singh (sin99xx)</name></author>
  </entry>
</feed>
