July 21, 2026
I Broke Into Websites for Fun -Here’s Everything I Learned
Understanding the web isn’t about memorizing tools it’s about understanding a conversation. Once you see that, bug hunting starts to make…

By Whoami
3 min read
Understanding the web isn't about memorizing tools it's about understanding a conversation. Once you see that, bug hunting starts to make sense
Every time you open a website, something invisible and beautiful happens in under a second that is your browser asks a question, a server answers, and a page appears. Most people never think about it. Bug hunters live inside that moment.
Here's the story of how the web actually works and why almost every security vulnerability you'll ever find is just a broken promise somewhere in this chain
It starts with a question
When you type a URL, your browser first asks DNS the internet's phonebook "where does this website actually live?" It gets back an IP address, opens a connection, and if it's HTTPS, negotiates encryption so nobody snooping on the network can read the conversation.
Then it sends one simple request: give me this page. The server replies with HTML, and your browser paints it on screen.
That's it. That's the entire web, at its core a request, and a response. Everything else is decoration on top of this loop.
JavaScript turned documents into apps
For years, that was basically all a website did. You clicked a link, the whole page reloaded, you waited.
Then came AJAX a small technical trick that let JavaScript quietly talk to the server in the background, without reloading the page. Gmail used it. Google Maps used it. And almost overnight, the web stopped being a stack of documents and became something closer to software.
That single shift explains almost everything that followed: React and Vue turning interfaces into reusable components, Node.js letting JavaScript run on servers too, JSON becoming the universal language between browser and backend, and modern apps quietly moving huge chunks of their logic into your browser, where — if you know where to look — you can actually read it.
Which brings me to the part that matters if you're hunting for bugs.
The web is a trust chain — and bugs live in the gaps
Behind every website sits a stack of trust: the frontend trusts the backend to check permissions properly, the backend trusts the database, the server trusts the proxy in front of it, the app trusts its cloud provider's default settings.
Nearly every vulnerability I've studied comes down to one sentence: something trusted input it shouldn't have.
- SQL injection happens when a database query trusts your typed text as safe code.
- Cross-site scripting happens when a page trusts your input enough to render it as HTML.
- IDOR happens when a server trusts that you'd only ever ask for your own data.
- SSRF happens when a server trusts a URL enough to go fetch it for you — even an internal one it should never touch.
- Cloud breaches happen when a company trusts a storage bucket's default settings a little too much.
Once this clicked for me, bug hunting stopped feeling like guessing random payloads and started feeling like detective work: find where trust was assumed, and test whether it was earned.
Before touching anything, read the machine
The best hunters I've studied don't attack randomly — they understand the target first. Before sending a single payload, they:
- Check the response headers and cookies to figure out the backend language
- Run the site through a fingerprinting tool to see the frameworks in use
- Read the JavaScript files line by line, because modern apps leak API routes and sometimes even secrets right there in plain sight
- Watch the network tab while clicking around normally, quietly mapping every API call the app makes
- Check old, forgotten pages through the Wayback Machine, and old subdomains through certificate logs
By the time they actually start testing, they already know roughly what they're dealing with — a PHP session cookie means one class of bugs, a GraphQL endpoint with introspection enabled hands you the entire API on a plate.
The part nobody tells beginners
You will never "finish" learning this. New frameworks appear every year, cloud misconfigurations are their own evolving universe, and there's now an entirely new category of vulnerabilities emerging around AI-integrated apps.
But that's not discouraging — it's actually the fun part. The web is one of the largest, most interconnected systems humans have ever built, and every layer of it — from DNS to a JavaScript event loop to a Kubernetes cluster — is something you can genuinely learn to read like a story.
Once you see it that way, you stop feeling lost in the complexity. You start seeing the pattern underneath it: a conversation, built in layers, each one trusting the one below it a little more than it probably should.
And your job, as someone learning this, isn't to memorize a hundred tools. It's to understand that conversation well enough to notice exactly where the trust breaks down.
If this resonated, I'm documenting my full journey into web security and bug hunting — follow along if you want the deeper breakdowns as I go.