Building a Chrome Extension That Bridges Three SaaS ToolsBuilding a Chrome Extension That Bridges Three SaaS Tools Chrome extensions live in a strange place. They're not quite apps. They're not quite scripts. They run in a browser context, talk to a backendJun 10 · 9 min readhammad-khan.hashnode.dev
From Singleton AuditService to Event-Driven AuditModule: A Decoupling StoryFrom Singleton AuditService to Event-Driven AuditModule: A Decoupling Story Every codebase I've worked on for more than six months has an AuditTrailService somewhere. It starts life as a helpful singlMay 23 · 10 min readhammad-khan.hashnode.dev
CSRF Double-Submit Cookies: The Underrated Defense for Same-Origin SaaSThe first time a pen tester filed a CSRF finding against a portal I owned, my reaction was the same as everyone else's: "We're SameSite=Lax. Aren't we fine?" We weren't fine. And the fix wasn't the frMay 22 · 10 min readhammad-khan.hashnode.dev
CSP Headers in Practice: Lessons From a Real Security Audit PassCSP Headers in Practice: Lessons From a Real Security Audit Pass The first time I deployed a strict Content Security Policy in production, the application broke in three places nobody had ever thoughtMay 16 · 8 min readhammad-khan.hashnode.dev
HMAC Request Signing for Third-Party Webhook SecurityHMAC Request Signing for Third-Party Webhook Security Webhook endpoints are the most under-secured class of route in most codebases. They take requests from the internet, often without a session, ofteMay 13 · 8 min readhammad-khan.hashnode.dev