A notion about Idor Cheat Sheet :
https://jasper-join-7e5.notion.site/IDOR-Cheat-Sheet-9f7c9e3285bf4c7cae5ea38243cd0391
یه نوشن در رابطه با Idor
https://jasper-join-7e5.notion.site/IDOR-Cheat-Sheet-9f7c9e3285bf4c7cae5ea38243cd0391
یه نوشن در رابطه با Idor
jasper-join-7e5 on Notion
IDOR Cheat Sheet | Notion
What if I told you that there is a web application vulnerability so simple to exploit, that it could make bug hunting feel like a breeze?
حتماً دیدی که یه هانتر با اضافه کردن .json به انتهای URL به یه چیز باحالی رسیده و یا بای پس کرده.
ولی چرا این کار جواب میده؟
در Ruby on Rails، وقتی به /users/2.json درخواست میزنی، فریمورک از چیزی به اسم Content Negotiation استفاده میکنه تا جواب رو بر اساس پسوند بده. یعنی:
/users/2.json → خروجی JSON
/users/2.html → صفحه HTML
📌 بعضی وقتا /users/2 ارور میده یا محدودیت auth داره، ولی /users/2.json اطلاعات کامل میده! (حتی بدون لاگین)
این ترفند توی Ruby, Sinatra و حتی بعضی PHPها کاربرد داره و میتونه منجر به:
دور زدن محدودیتها
دیدن خروجی API مخفی
کشف مسیرهای بیشتر
پس حتماً روی اکثر endpointها پسوندهایی مثل .json, .xml, .html, .js رو تست کن — شاید در جدیدی باز شد!
ولی چرا این کار جواب میده؟
در Ruby on Rails، وقتی به /users/2.json درخواست میزنی، فریمورک از چیزی به اسم Content Negotiation استفاده میکنه تا جواب رو بر اساس پسوند بده. یعنی:
/users/2.json → خروجی JSON
/users/2.html → صفحه HTML
📌 بعضی وقتا /users/2 ارور میده یا محدودیت auth داره، ولی /users/2.json اطلاعات کامل میده! (حتی بدون لاگین)
این ترفند توی Ruby, Sinatra و حتی بعضی PHPها کاربرد داره و میتونه منجر به:
دور زدن محدودیتها
دیدن خروجی API مخفی
کشف مسیرهای بیشتر
پس حتماً روی اکثر endpointها پسوندهایی مثل .json, .xml, .html, .js رو تست کن — شاید در جدیدی باز شد!
🧩 وقتی یه IDOR از طریق UUID پیدا کردیم چجوری UUID های کاربر های دیگه رو پیدا کنیم ؟
بعضیها فکر میکنن UUID یعنی امنیت کامل! ولی نه همیشه...
1 - چک کن UUIDها واقعا رندوم باشن؛ گاهی Devها خودشون تولیدش میکنن و قابل حدس میشن!
2 - به جای UUID، مقادیر ساده مثل 0000-000... تست کن
3 - از آرشیو سایت (مثل Wayback Machine) و ابزار هایی که بهت URL میدن استفاده کن
4 - قسمتهایی مثل ریستپسورد، لاگین، کامنتها و پروفایلها رو بررسی کن
5 - گاهی توی فرومها یا دیسکورد سایت، یوزرها خودشون UUID لو میدن!
6 - لاگها، سورس صفحه، ارورها رو بخون؛ گاهی لو میدن
بعضیها فکر میکنن UUID یعنی امنیت کامل! ولی نه همیشه...
1 - چک کن UUIDها واقعا رندوم باشن؛ گاهی Devها خودشون تولیدش میکنن و قابل حدس میشن!
2 - به جای UUID، مقادیر ساده مثل 0000-000... تست کن
3 - از آرشیو سایت (مثل Wayback Machine) و ابزار هایی که بهت URL میدن استفاده کن
4 - قسمتهایی مثل ریستپسورد، لاگین، کامنتها و پروفایلها رو بررسی کن
5 - گاهی توی فرومها یا دیسکورد سایت، یوزرها خودشون UUID لو میدن!
6 - لاگها، سورس صفحه، ارورها رو بخون؛ گاهی لو میدن
Bugbountyhints
چجوری میتونیم Idor رو اتومیت کنیم ؟ https://www.youtube.com/watch?v=3K1-a7dnA60
احتمالا یه نسخه فارسی و متنیش رو بنویسم بزارم اینجا برای کسایی که انگلیسیشون ضعیف تره راحت بتونن استفاده کنن
یه سری بلاگ پست که تو باگ بانتی و ریسرچ فعالیت دارن و اکثراشون هم هکر های شناخته شده و خفنی هستن :
https://zhero-web-sec.github.io/writeups/
https://samcurry.net/
https://shubs.io/
https://dhiyaneshgeek.github.io/
https://bhavukjain.com/
https://rhynorater.github.io/
https://m0chan.github.io/
https://spaceraccoon.dev/
https://ott3rly.com/
https://www.jhaddix.com/blog
https://hackerrishad.me/
https://zhero-web-sec.github.io/writeups/
https://samcurry.net/
https://shubs.io/
https://dhiyaneshgeek.github.io/
https://bhavukjain.com/
https://rhynorater.github.io/
https://m0chan.github.io/
https://spaceraccoon.dev/
https://ott3rly.com/
https://www.jhaddix.com/blog
https://hackerrishad.me/
samcurry.net
Blog | Sam Curry
A technical blog
تو این ریپازیتوری یه سری دورک ها باهم ترکیب و جنریت شده و فقط کافیه دامین رو بدی و بعد رو چیزایی که نیاز داری کلیک کنی :
https://freelancermijan.github.io/reconengine/
https://freelancermijan.github.io/reconengine/
خیلی ها فکر میکنن wide recon فقط توی سرتیفیکیت سرچ و یه بروت فورس و چند تا ابزار خلاصه میشه. یه چند تا تاپیک میدم بهتون اگه دوست داشتید خودتون برید دنبالش :
۱ - پیدا کردن ساب دامین از طریق گیت هاب و گیت لب
۲ - پیدا کردن ساب دامین از طریق گوگل Analytics
۳ - پیدا کردن ساب دامین از طریق csp
۴ - پیدا کردن ساب دامین از طریق fav icon (این خیلی خفنه )
۱ - پیدا کردن ساب دامین از طریق گیت هاب و گیت لب
۲ - پیدا کردن ساب دامین از طریق گوگل Analytics
۳ - پیدا کردن ساب دامین از طریق csp
۴ - پیدا کردن ساب دامین از طریق fav icon (این خیلی خفنه )
Bugbountyhints
خیلی ها فکر میکنن wide recon فقط توی سرتیفیکیت سرچ و یه بروت فورس و چند تا ابزار خلاصه میشه. یه چند تا تاپیک میدم بهتون اگه دوست داشتید خودتون برید دنبالش : ۱ - پیدا کردن ساب دامین از طریق گیت هاب و گیت لب ۲ - پیدا کردن ساب دامین از طریق گوگل Analytics…
یه سری تکنیک بود که تو این یه هفته ای که داشتم واید ریکان میخوندم بهش برخوردم
یه سری موارد دیگه ای هم هست که کمتر کسی استفاده میکنه اونارو هم بزودی میزارم
یه سری موارد دیگه ای هم هست که کمتر کسی استفاده میکنه اونارو هم بزودی میزارم
سورس اصلی هم اینجاست و دورک های بیشتری رو میتونید پیدا کنید :
https://freedium.cfd/https://cybersecuritywriteups.com/how-to-update-your-fuzzing-wordlist-0b99da48d924
https://freedium.cfd/https://cybersecuritywriteups.com/how-to-update-your-fuzzing-wordlist-0b99da48d924
یه Idor جالب : امن برای کاربر لاگین کرده، ناامن برای مهمان!
یک نکته سریع از هانت اخیر:
روی یک سایت (example.ir)، اندپوینت /tickets/{ID} رو تست میکردم. وقتی لاگین بودم، دسترسی به تیکت بقیه 404 میداد (امن بود).
اما وقتی لاگ اوت کردم و همون URL رو زدم، اطلاعات حساس تیکت (شامل نام و شماره موبایل) رو کامل نشون داد!
درس کلیدی: همیشه Endpoints رو در حالتهای مختلف تست کنید (لاگین، لاگ اوت). گاهی کنترل دسترسی فقط برای یک حالت پیادهسازی شده.
یک نکته سریع از هانت اخیر:
روی یک سایت (example.ir)، اندپوینت /tickets/{ID} رو تست میکردم. وقتی لاگین بودم، دسترسی به تیکت بقیه 404 میداد (امن بود).
اما وقتی لاگ اوت کردم و همون URL رو زدم، اطلاعات حساس تیکت (شامل نام و شماره موبایل) رو کامل نشون داد!
درس کلیدی: همیشه Endpoints رو در حالتهای مختلف تست کنید (لاگین، لاگ اوت). گاهی کنترل دسترسی فقط برای یک حالت پیادهسازی شده.
sleep-patern.html
35 KB
برنامه ای در رابطه با اینکه چجوری میتونیم بهتر بخوابیم
Bugbountyhints
sleep-patern.html
اگه میخواید مطالعه عمیق تری داشته باشید میتونید به این لینک مراجعه کنید :
https://docs.google.com/document/d/1yT_xzBqwK4t8lcago0McLRhSlSRGG53D-BbtAwbcDak/edit?tab=t.0
https://docs.google.com/document/d/1yT_xzBqwK4t8lcago0McLRhSlSRGG53D-BbtAwbcDak/edit?tab=t.0
چجوری یه آسیب پذیری رو عمیق بشیم یا case study کنیم :
1 - ریپورت هکروان
2 - رایتاپ
3 - مقاله های توضیحی اون آسیب پذیری
4 - گشتن تو توییتر در رابطه با اون آسیب پذیری ( مهم ) ***
5 - یوتوب
6 - لایو هانت اون آسیب پذیری ( تو یوتوب هست معمولا )
7 - لب های پورت سوییگر
8 - هانت کردن با استفاده از اون آسیب پذیری روی یه تارگت
9 - بالا آوردن آسیب پذیری به کمک ai و تست اون ( این کار خیلی کمک میکنه تا لاجیک پشت آسیب پذیری رو یاد بگیرید )
10 - تو یه آسیب پذیری مثل oauth سعی کنید کلی کیس مختلف رو بررسی کنید و فلو رو متوجه شید
1 - ریپورت هکروان
2 - رایتاپ
3 - مقاله های توضیحی اون آسیب پذیری
4 - گشتن تو توییتر در رابطه با اون آسیب پذیری ( مهم ) ***
5 - یوتوب
6 - لایو هانت اون آسیب پذیری ( تو یوتوب هست معمولا )
7 - لب های پورت سوییگر
8 - هانت کردن با استفاده از اون آسیب پذیری روی یه تارگت
9 - بالا آوردن آسیب پذیری به کمک ai و تست اون ( این کار خیلی کمک میکنه تا لاجیک پشت آسیب پذیری رو یاد بگیرید )
10 - تو یه آسیب پذیری مثل oauth سعی کنید کلی کیس مختلف رو بررسی کنید و فلو رو متوجه شید
این ماه هم تقریبا با ۲۲۰ ساعت کار تموم شد تمرکز اصلیم روی هانت کردن بود که دیگه شهریور بیشتر میرم سمت js و مدرن اپ ها