<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Masood Nfc on Medium]]></title>
        <description><![CDATA[Stories by Masood Nfc on Medium]]></description>
        <link>https://medium.com/@masood.nfc77?source=rss-04a3815b842a------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/0*Z89A0E1Ok7KuFPto</url>
            <title>Stories by Masood Nfc on Medium</title>
            <link>https://medium.com/@masood.nfc77?source=rss-04a3815b842a------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Tue, 19 May 2026 12:49:09 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@masood.nfc77/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[The Old Bug That Still Pays the Rent in 2026]]></title>
            <link>https://medium.com/@masood.nfc77/the-old-bug-that-still-pays-the-rent-in-2026-ae9d03ba7bb1?source=rss-04a3815b842a------2</link>
            <guid isPermaLink="false">https://medium.com/p/ae9d03ba7bb1</guid>
            <category><![CDATA[idor]]></category>
            <category><![CDATA[web-security]]></category>
            <category><![CDATA[cybersecurity]]></category>
            <category><![CDATA[bug-bounty]]></category>
            <category><![CDATA[hacking]]></category>
            <dc:creator><![CDATA[Masood Nfc]]></dc:creator>
            <pubDate>Mon, 18 May 2026 08:17:28 GMT</pubDate>
            <atom:updated>2026-05-18T08:17:28.708Z</atom:updated>
            <content:encoded><![CDATA[<p><em>Why IDOR is still your best bet as a beginner, and exactly how to find one.</em></p><p>Bug bounty hunters love chasing exotic vulnerabilities. SSRF chains. Prototype pollution. Race conditions in obscure auth flows. Meanwhile the people quietly paying their rent every month are doing something far less glamorous. They are finding IDORs.</p><p>Insecure Direct Object References. The bug where an application uses a user supplied ID to look up a resource and forgets to check whether you should be allowed to access it. They have been a known issue for well over a decade. They are also still everywhere.</p><h3>The simplest possible example</h3><p>Imagine an endpoint that loads your order history. The URL looks like this.</p><p>GET /api/orders/12345</p><p>Your order is 12345. So you decrement to 12344 and send the request again. If the server returns the previous user, that is an IDOR. The server trusted the ID without verifying ownership.</p><p>Trivial. Ancient. And shipping to production in 2026.</p><h3>Why they refuse to die</h3><p>Three reasons. First, every sprint adds new endpoints faster than security audits can catch up. Every release is a fresh attack surface. Second, microservice boundaries leak. Service A trusts that B authorized the request. B assumed A did. Neither actually checked.</p><p>Third, GraphQL. Per field authorization is a nightmare. Most teams get it wrong on at least one resolver. Find a target using GraphQL heavily and you have already filtered for opportunity.</p><h3>The five IDOR patterns that pay</h3><p>The first is sequential integer IDs. Spot any URL or API path with a plain number. Decrement, increment, see what happens. If you read a stranger user resource, you have a bug.</p><p>The second is UUID leakage. Teams convince themselves UUIDs are safe because they cannot be guessed. They are right about that. They are wrong about leakage. UUIDs end up in search results, public profile pages, shared comment threads, email previews. Once you find them in one place, try them in another.</p><p>The third is indirect IDOR. An endpoint takes a team_id. You are a member of team 7. You swap to team_id 8. The server checked you were logged in. It never checked you belonged to that team. Now you are reading another companys project list.</p><p>The fourth is mass assignment. An update endpoint accepts a JSON body with display_name. You add user_id and role to the JSON. Sometimes the server silently accepts them. The result is exactly as bad as it sounds.</p><p>The fifth is GraphQL object IDOR. Query by ID. No per field authorization check. You read another user email, phone, private documents. Full data leak from one query.</p><h3>The hunting workflow that works</h3><p>Always two accounts. Create user A and user B with different email aliases. Map every ID and UUID A produces. Switch to B session. Try every one of A IDs.</p><p>Document what comes back. Authorization errors are fine. A 200 OK with A data in B session is the bug.</p><p>Then escalate. Read only is a finding. Write or delete is bigger. Privilege escalation is the jackpot.</p><h3>What gets paid</h3><p>Read another user private data lands around three hundred to fifteen hundred dollars. Reading across organizations is one to five thousand. Modifying another user data is two to eight thousand. Privilege escalation via IDOR is five to twenty thousand. IDOR inside an admin only endpoint can land five to thirty thousand. These are real numbers from public reports.</p><h3>How to not waste your time</h3><p>Self referential IDOR is not a bug. Accessing your own resources via a different path proves nothing. Public resources are not IDOR. If a comment thread is meant to be public, reading it is not exploitation. Stale data from your own session is not IDOR.</p><p>Real IDOR means a clean session on account B, accessing data that belongs to account A, with neither account having any business relationship to the other.</p><p>Reports get closed for sloppy proof more often than for invalid findings. Take screenshots from a fresh browser profile. Save the raw HTTP request. Specify the impact in concrete terms. Not could be exploited. Can read any user invoice history.</p><h3>Where to start tonight</h3><p>Pick one program with a wide scope. Make two accounts. Open Burp. Hit every endpoint you can find that takes an ID. Replay each request swapping accounts. Note the responses.</p><p>You will not find a bug on night one. You probably will not find one on night three either. Somewhere in the second or third week, on a tired Tuesday at eleven at night, you will see a 200 response that should not exist. That is the moment everything changes.</p><p>The bug class is ancient. The money is current. Get to work.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ae9d03ba7bb1" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How I’d Start Bug Bounty Hunting if I Was Doing It Again in 2026]]></title>
            <link>https://medium.com/@masood.nfc77/how-id-start-bug-bounty-hunting-if-i-was-doing-it-again-in-2026-e0be02b4af7d?source=rss-04a3815b842a------2</link>
            <guid isPermaLink="false">https://medium.com/p/e0be02b4af7d</guid>
            <category><![CDATA[web-security]]></category>
            <category><![CDATA[hacking]]></category>
            <category><![CDATA[cybersecurity]]></category>
            <category><![CDATA[programming]]></category>
            <category><![CDATA[bug-bounty]]></category>
            <dc:creator><![CDATA[Masood Nfc]]></dc:creator>
            <pubDate>Mon, 18 May 2026 08:14:00 GMT</pubDate>
            <atom:updated>2026-05-18T08:14:00.717Z</atom:updated>
            <content:encoded><![CDATA[<p><em>The honest version. No fluff, no course pitch.</em></p><p>I keep getting asked the same question. Someone reads about a hunter pulling six figures, they want in, and they want a roadmap. So here it is.</p><p>This is the path I’d walk on day one if I was starting over. It assumes nothing. You don’t need a degree. You don’t need a fancy laptop. You need a quiet evening and the patience to keep showing up.</p><h3>What you’re actually doing</h3><p>Bug bounty programs pay you for finding real security issues in their systems. Not UX complaints. Not crashes that have no impact. Security flaws that, if a bad actor exploited them, would hurt the company or its users. That’s the product you’re selling.</p><p>Three platforms run most of the market. HackerOne is the biggest, very US friendly when it comes to payouts. Bugcrowd is a close second, with more European programs. Intigriti is Europe first, growing fast, and worth signing up for early.</p><p>Pick one. Make an account. Read the rules of every program you touch. People get banned in week one for skipping that step.</p><h3>The tools you actually need</h3><p>Forget the YouTube tool stack videos. The bare minimum looks like this.</p><p>Burp Suite Community Edition for inspecting and replaying HTTP traffic. Subfinder for discovering subdomains. Httpx for probing which of those are alive. Nuclei for templated vulnerability scanning. Ffuf for fuzzing directories and parameters.</p><p>Every one of those is free. They all run on Windows, Linux, and Mac. Install them today, before you read another tutorial.</p><h3>Pick one vulnerability class and own it</h3><p>The biggest mistake beginners make is chasing every kind of bug at once. Pick one class. Live in it for sixty days. Become the person who sees that pattern faster than anyone else.</p><p>My pick for a beginner in 2026 is IDOR. Insecure Direct Object References. The bug where an app trusts a user supplied ID without checking if you should be allowed to access that resource. They’re still everywhere. They pay anywhere from a hundred dollars to several thousand depending on impact. And once your eye is trained, you start seeing them in places no one else looks.</p><h3>Recon is where the bugs hide</h3><p>Beginners skip recon because it feels boring. That’s exactly why people who do it eat well.</p><p>The loop looks like this. Pick a program with a wide scope, the kind that covers anything under a big wildcard. Run subfinder. Pipe the results through httpx so you keep only the live hosts. Screenshot the lot with a tool like gowitness. Then sit back and read.</p><p>You are not looking for bugs yet. You are looking for forgotten infrastructure. The staging server someone spun up in 2021. The admin panel that someone forgot was indexed. The half migrated service that returns a stack trace if you breathe on it wrong. Those are where the bugs live.</p><h3>Reports are half the game</h3><p>A real bug with a bad report earns nothing. A clean report on a mediocre bug can still pay. Treat your writeup like a product. Title that says exactly what the bug is. One paragraph summary. Numbered repro steps a junior engineer could follow. Screenshots. Exact requests. A blunt impact statement.</p><p>The reports that get triaged fast share one trait. The person reading them never has to ask you a single follow up question.</p><h3>The timeline nobody wants to talk about</h3><p>Month one you will earn nothing. You will submit one or two reports and they will both probably come back as duplicates. That is normal.</p><p>Month two or three, with a bit of luck and a lot of hours, you land your first valid bounty. It will be small, maybe a hundred to five hundred dollars. The dopamine is worth more than the money.</p><p>Month four through six, if you kept going, something clicks. You start spotting patterns. You build a private list of programs you know how to attack. Part time you can realistically clear five hundred to two thousand dollars a month.</p><p>Past month twelve you are either committed or you have already quit. Most people quit. The ones who stay get good slowly.</p><p>If you need money this week, this is the wrong path. Take a freelance gig. If you want a skill that pays for decades, keep reading.</p><h3>The one habit that separates earners from lurkers</h3><p>Read public writeups every day. Not weekly. Daily.</p><p>HackerOne’s Hacktivity feed. The PentesterLand weekly newsletter. The InfoSec Write-ups publication on Medium. Every writeup is a pattern. Patterns compound. Three months in you will start spotting things in the wild that you would have walked past on day one.</p><p>That’s the whole roadmap. No paid course. No Discord required. Just a quiet evening, a real target inside scope, and the willingness to keep showing up after the first hundred failures.</p><p>The money is real. The path to it is unglamorous.</p><p>Go find something.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e0be02b4af7d" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>