Try Hack Box
4.76K subscribers
561 photos
63 videos
76 files
590 links
1 Nov 2020
1399/08/11
Learn penetration testing & Red Team
https://youtube.com/@tryhackbox
Channels :
@TryHackBoxOfficial ( RoadMap )
@TryHackBoxStory ( Story Hacking )
Contact : @Unique_exploitBot
ADS (Tablighat ) :
@THBADS
Download Telegram
🚀 آموزش Proxies (پارت 0)

📌 پروکسی‌ها در واقع واسطه‌هایی هستند که بین کلاینت‌ها و سرورها قرار می‌گیرند و به عنوان یک سرور پروکسی عمل می‌کنند. باهم درباره‌ی سرورهای پروکسی صحبت می‌کنیم که چگونه درخواست‌های HTTP را بین طرفین (کلاینت و سرور) به جلو و عقب منتقل می‌کنند.

🔍 مباحثی که در سری پست ها به آن‌ها پرداخته می‌شود:
نحوه قرارگیری پروکسی‌ها در مقابل دروازه‌ها و استقرار آن‌ها در HTTP
راه‌هایی که پروکسی‌ها می‌توانند مفید باشند و به ما کمک کنند
نحوه استقرار پروکسی‌ها در شبکه‌های واقعی و هدایت ترافیک به سرورهای پروکسی
روش پیکربندی مرورگر برای استفاده از پروکسی
تفاوت درخواست‌های پروکسی با درخواست‌های مستقیم به سرور و تأثیر پروکسی‌ها بر رفتار مرورگرها
چگونگی ردیابی مسیر درخواست‌ها با استفاده از هدرهای Via و متد TRACE
کنترل دسترسی مبتنی بر پروکسی در HTTP
تعامل پروکسی‌ها با سرورها و کلاینت‌هایی که نسخه‌ها و ویژگی‌های متفاوتی از HTTP را پشتیبانی می‌کنند

✍️نویسنده
@TryHackBox| The Chaos

#HTTP #Proxy #CyberSecurity
👍91
📌 پروکسی‌ها در واقع واسطه‌هایی هستند که بین کلاینت‌ها و سرورها قرار می‌گیرند و مانند یک نماینده عمل می‌کنند.

🌍 مثال روزمره:
فرض کنید می‌خواهید نامه‌ای به یک شرکت بفرستید، اما به جای ارسال مستقیم، آن را به دفتر پستی می‌سپارید. دفتر پستی نامه را دریافت می‌کند، آدرس را بررسی می‌کند، سپس آن را به مقصد نهایی می‌رساند. حتی ممکن است قبل از ارسال، محتوای نامه را بررسی کند یا آن را در یک پاکت جدید بگذارد.

🔹 پروکسی هم دقیقاً همین‌طور کار می‌کند!

وقتی شما به اینترنت متصل می‌شوید، درخواست‌های شما ابتدا به پروکسی می‌رود.

پروکسی می‌تواند درخواست را تغییر دهد، فیلتر کند یا کش کند و سپس به سرور اصلی ارسال کند.

پاسخ سرور هم ابتدا به پروکسی برمی‌گردد و بعد به شما می‌رسد.

💡 پروکسی مثل همان دفتر پستی است: واسطه‌ای که ارتباط شما با دنیای اینترنت را مدیریت می‌کند!

🔍 واسطه‌های وب (Web Intermediaries) چیستند؟

تصور کنید می‌خواهید با یک فروشگاه آنلاین ارتباط برقرار کنید:

📱 بدون پروکسی (ارتباط مستقیم):
شما (کلاینت) ← مستقیماً به فروشگاه (سرور)

🖥 با پروکسی (ارتباط با واسطه):
شما ← پروکسی ← فروشگاه

به زبان ساده:
پروکسی مثل یک رابط هوشمند عمل می‌کند که:

     - درخواست‌های شما را دریافت می‌کند

     - به جای شما با سرور اصلی ارتباط برقرار می‌کند

     - پاسخ را از سرور گرفته

     - و در نهایت آن را به شما تحویل می‌دهد

💡 مثل یک مترجم یا نماینده: دقیقاً همانطور که در مذاکرات بین‌المللی از مترجم استفاده می‌شود، پروکسی هم بین شما و سرورهای اینترنتی واسطه می‌شود تا ارتباط به بهترین شکل ممکن برقرار شود.

🌐 نحوه عملکرد:

     - بدون پروکسی، کلاینت‌ها مستقیماً با سرورهای HTTP ارتباط برقرار می‌کنند

     - با وجود پروکسی، کلاینت با سرور پروکسی صحبت می‌کند

     - پروکسی به نمایندگی از کلاینت با سرور اصلی ارتباط برقرار می‌نماید

     - کلاینت تراکنش را کامل انجام می‌دهد، اما از خدمات ارزشمند پروکسی بهره می‌برد

🔄 ویژگی‌های کلیدی:

     - هم به عنوان سرور وب (برای کلاینت)

     - هم به عنوان کلاینت وب (برای سرور اصلی) عمل می‌کند

     - درخواست‌های HTTP را به سرورهای مناسب ارسال می‌کند

     - اتصالات و درخواست‌ها را مدیریت می‌نماید

     - پاسخ‌ها را دقیقاً مانند یک وب سرور بازمی‌گرداند

⚙️ مهم‌ترین وظایف:

     - ارسال درخواست‌های HTTP به سرورها

     - دریافت و پردازش پاسخ‌ها

     - رعایت دقیق پروتکل‌های HTTP

     - مدیریت صحیح تراکنش‌ها بین کلاینت و سرور

✍️نویسنده
@TryHackBox| The Chaos

#HTTP #Proxy #CyberSecurity
🔥5
🚀 آموزش Proxies (پارت 1)

🔵 انواع پروکسی: اختصاصی، اشتراکی و عمومی

پروکسی اختصاصی (Private Proxy):
این نوع پروکسی به یک کاربر یا کلاینت خاص اختصاص داده میشود و به آن پروکسی خصوصی میگویند. مناسب برای استفاده های شخصی، افزایش امنیت و حفظ حریم خصوصی.

پروکسی اشتراکی (Shared Proxy):
این پروکسی بین چندین کاربر به اشتراک گذاشته میشود و به آن پروکسی معمولی میگویند. مقرون به صرفه تر است، اما ممکن است سرعت و امنیت کمتری داشته باشد.

پروکسی عمومی (Public Proxy):
رایگان و برای عموم قابل دسترس است. معمولاً توسط سرویسهای مختلف ارائه میشود، اما به دلیل استفادهی همزمان کاربران زیاد، ممکن است ناپایدار یا کند باشد.

🔹 کاربردها:

   - پروکسی اختصاصی: مناسب برای فعالیتهای حساس، مانند مدیریت چند اکانت یا دور زدن محدودیت ها.

   - پروکسی اشتراکی: گزینه ی اقتصادی برای کاربران عادی.

   - پروکسی عمومی: برای دسترسی سریع و موقت، اما با ریسک امنیتی بالاتر.

انتخاب هوشمندانه پروکسی = امنیت + سرعت + کارایی بهتر!

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
8
🔵 تفاوت Proxy و Gateway در یک نگاه

📌 Proxy:

* مانند یک واسطهٔ نامرئی عمل می‌کند.
* برنامه‌ها با پروتکل یکسان (مثل HTTP) را به هم متصل می‌کند.

مثال کاربردی:
وقتی از یک پروکسی برای عبور از فیلترینگ استفاده می‌کنید، مرورگر شما (کلاینت) و سرور مقصد هر دو از پروتکل HTTP/HTTPS استفاده می‌کنند. پروکسی در میان آنها قرار می‌گیرد تا ارتباط را تغییر مسیر دهد.



📌 Gateway:

* مانند یک مترجم بین دو سیستم با پروتکل‌های متفاوت عمل می‌کند.
* برنامه‌ها با پروتکل‌های مختلف (مثل HTTP به SMTP) را به هم متصل می‌کند.

مثال کاربردی:
وقتی ایمیل خود را از طریق مرورگر (HTTP) چک می‌کنید، Gateway پروتکل HTTP را به SMTP یا POP (پروتکل‌های ایمیل) تبدیل می‌کند تا بتوانید پیام‌ها را دریافت کنید.



🔵 مقایسه عملکرد

📌 Proxy:

* مرورگر (Browser) با پروتکل HTTP به پروکسی متصل می‌شود.
* پروکسی نیز با همان پروتکل HTTP به سرور وب ارتباط برقرار می‌کند.
* کاربرد: تغییر مسیر ترافیک، افزایش امنیت، یا دور زدن محدودیت‌ها.

[مرورگر (HTTP)] -> [پروکسی (HTTP)] -> [وب‌سرور (HTTP)]



📌 Gateway:

* مرورگر (Browser) با پروتکل HTTP به گیت‌وی متصل می‌شود.
* گیت‌وی، پروتکل HTTP را به POP (برای دریافت ایمیل) یا SMTP (برای ارسال ایمیل) تبدیل می‌کند.
* سپس با سرور ایمیل ارتباط برقرار می‌کند.
* کاربرد: دسترسی به ایمیل از طریق مرورگر، بدون نیاز به نرم‌افزار خاص.

[مرورگر (HTTP)] -> [Getway: تبدیل HTTP به POP] -> [سرور ایمیل (POP)]

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity #Getway
14👍2
🚀 آموزش Proxies (پارت 2)
🔹چرا از پراکسی استفاده می‌کنیم؟

سرورهای پراکسی می‌توانند امنیت را بهبود بخشند، عملکرد را افزایش دهند و در هزینه‌ها صرفه‌جویی کنند. از آنجا که سرورهای پراکسی می‌توانند تمام ترافیک عبوری را مشاهده و کنترل کنند، استفاده از آن‌ها در بسیاری از سرویس‌های مبتنی بر HTTP باعث بهبود عملکرد، نظارت، و تغییر مسیر ترافیک می‌شود.

به طور مثال:
🧒 فیلتر کودک
دسترسی مجاز به محتوای آموزشی:
[Child User] 


[Browser: Dinosaurs Online]


[School's Filtering Proxy]
│ → Analyzes requested content

OK → Access granted

[Internet] ───► [Educational Website Server]
(Content: Dinosaurs, science, etc.)


مسدودسازی دسترسی به محتوای نامناسب:
[Child User] 


[Browser: Adult Content Site]


[School's Filtering Proxy]
│ → Detects inappropriate content

DENY → Access blocked
✖️
(No connection to the server)


✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
5
🔹کنترل‌کنندهٔ دسترسی به اسناد (Document Access Controller)

سرورهای پراکسی می‌توانند برای پیاده‌سازی یک استراتژی متمرکز کنترل دسترسی در مجموعه‌های بزرگ از وب‌سرورها و منابع وب مورد استفاده قرار گیرند. این کاربرد در سازمان‌های بزرگ با ساختارهای بروکراتیک، بسیار رایج و مؤثر است.

مزیت اصلی:
امکان مدیریت متمرکز دسترسی بدون نیاز به پیکربندی مجزای هر سرور وب.

🔐 مثال: پراکسی کنترل دسترسی

در تصویر مفهومی زیر، یک پراکسی مرکزی تعیین می‌کند که کدام کلاینت به کدام منبع وب دسترسی داشته باشد:

[Client A] ─> [Proxy Access Controller] ─> [Server A: News Pages]

└── Allows access to news pages only


[Client B] ─> [Proxy Access Controller] ─> [All Internet Content]

└── Unlimited access allowed


[Client C] ─> [Proxy Access Controller] ─> [Server B: Requires Password]

└── Access granted only after password authentication



🔹فایروال امنیتی (Security Firewall)

مهندسان امنیت شبکه اغلب از پراکسی‌ها برای افزایش امنیت و اعمال سیاست‌های محدودکننده استفاده می‌کنند. این پراکسی‌ها به‌عنوان لایهٔ میانی بین داخل و خارج از سازمان، در نقاط امن شبکه قرار می‌گیرند.

ویژگی‌ها:

* کنترل پروتکل‌های سطح Application
* بررسی دقیق ترافیک عبوری
* امکان استفاده از Security Hooks
* قابلیت حذف یا بازنویسی درخواست‌های مخرب

🔹 کش وب (Web cache)

پراکسی کش (Proxy Cache) می‌تواند اسناد و فایل‌های محبوب را ذخیره کرده و هنگام درخواست مجدد، آن‌ها را مستقیماً ارائه دهد. این کار باعث کاهش بار شبکه و کاهش تأخیر کاربر می‌شود.

📦 مثال: اشتراک کش بین کاربران (Web Cache Sharing Example)
فرض کنید یک پراکسی کش در سازمان یا شبکه مدرسه‌ای قرار دارد. این پراکسی، اسناد و صفحات محبوبی را که کاربران قبلاً درخواست داده‌اند، در حافظهٔ خود نگه می‌دارد.

اکنون سه کاربر در شبکه هستند:

کاربر ۱ (Client 1) برای اولین بار یک سند وب (مثلاً یک مقاله یا تصویر) را درخواست می‌کند. چون این سند هنوز در کش موجود نیست، پراکسی آن را از سرور اصلی دریافت کرده و هم‌زمان، نسخه‌ای را در کش ذخیره می‌کند.

کاربر ۲ (Client 2) پس از مدتی همان سند را درخواست می‌کند. این بار پراکسی دیگر نیازی به تماس با سرور اصلی ندارد، بلکه نسخهٔ ذخیره‌شده در کش را مستقیماً برای کاربر ۲ ارسال می‌کند. این فرآیند سریع‌تر، کم‌هزینه‌تر و بهینه‌تر است.

کاربر ۳ (Client 3) می‌خواهد سندی را دریافت کند که هنوز در کش وجود ندارد یا دسترسی به آن برایش محدود شده است. بنابراین پراکسی یا باید سند را از سرور مبدا بگیرد، یا به دلیل محدودیت دسترسی (مثلاً کنترل دسترسی بر اساس نقش کاربر)، دسترسی را مسدود کند.


* کلاینت‌های 1 و 2 می‌توانند سند ذخیره‌شده در کش را دریافت کنند.
* کلاینت 3 به آن سند خاص دسترسی ندارد و باید از سرور مبدا درخواست کند.

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
👍2
🚀 آموزش Proxies (پارت 3)
🔹دسته بندی عملکردی پروکسی :
مطمئناً! در ادامه، متن شما به صورت روان، مرتب و حرفه‌ای بازنویسی شده و مفهوم Surrogate (پروکسی معکوس جانشین) نیز با وضوح کامل توضیح داده شده است:

🔁 پروکسی جایگزین (Surrogate Proxy)

Surrogateها نوعی از پروکسی‌های معکوس (Reverse Proxy) هستند که به‌گونه‌ای عمل می‌کنند که خود را به‌جای سرور اصلی وب معرفی می‌کنند. اما برخلاف یک سرور وب واقعی، ارتباط آن‌ها با سرور واقعی تنها در صورت نیاز (On-Demand) برقرار می‌شود.

به عبارت ساده، وقتی کاربر محتوایی را درخواست می‌کند، Surrogate درخواست را دریافت کرده و اگر محتوای مربوطه در کش یا حافظهٔ خود موجود نباشد، در لحظه آن را از سرور واقعی واکشی می‌کند.

🎯 کاربردهای Surrogate

* افزایش سرعت بارگذاری محتوا
* کاهش بار سرورهای اصلی
* بهینه‌سازی شبکه توزیع محتوا (CDN)

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity #Surrogate
👍32
🔄 مسیریاب محتوا (Content Router)

📌 نقش:
پروکسی به‌عنوان مسیریاب هوشمند، درخواست‌های کاربران را بر اساس نوع محتوا، ترافیک شبکه، یا سطح خدمات کاربران به سرورهای متفاوت هدایت می‌کند.

📍 کاربرد:

* ارائه خدمات سریع‌تر به کاربران Premium
* هدایت کاربران عادی به سرورهای با اولویت پایین‌تر
* ارسال درخواست‌ها به کش نزدیک به محل کاربر برای کاهش تأخیر

📤 مثال:
اگر کاربری اشتراک ویژه دارد، درخواستش به سریع‌ترین سرور با محتوای مشابه هدایت می‌شود.

🎞 تبدیل‌گر محتوا (Transcoder)

📌 نقش:
پروکسی می‌تواند محتوای در حال انتقال (مانند تصویر، ویدیو، متن) را *به‌صورت شفاف* به فرمتی بهینه‌تر تبدیل کند، بدون اینکه کاربر متوجه شود.

📍 کاربرد:

* تبدیل تصاویر از GIF به JPEG برای کاهش حجم
* فشرده‌سازی متن برای موبایل
* ترجمه اتوماتیک صفحات وب از انگلیسی به اسپانیایی
* سازگار کردن محتوا برای نمایش روی دستگاه‌های خاص

📤 مثال:
کاربر با گوشی وارد سایت می‌شود، و پروکسی به‌صورت خودکار و بی‌صدا نسخه فشرده‌شده‌ی تصاویر و متن را نمایش می‌دهد.

🕵️ پروکسی ناشناس‌ساز (Anonymizer Proxy)

📌 نقش:
با حذف مشخصات شناسایی‌شونده کاربر (IP، User-Agent، Referer، و غیره)، حریم خصوصی کاربران را افزایش می‌دهد.

📍 کاربرد:

* محافظت از هویت کاربر در وب
* جلوگیری از ردیابی توسط وب‌سایت‌ها
* عبور ناشناس از فایروال یا سانسور

📤 مثال:
کاربر به سایتی مراجعه می‌کند، اما وب‌سایت نمی‌تواند سیستم عامل، مرورگر یا آدرس IP او را تشخیص دهد.

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity #Anonymizer #Transcoder #ContentRouter
2👍2
🚀 آموزش Proxies (پارت 4)
🎯 محل قرار گیری proxy ها در شبکه (A)

🧩 استقرار Proxy در شبکه
پروکسی‌ها بسته به کاربردشون در نقاط مختلفی از شبکه قرار می‌گیرند. مثلاً:

🔻پروکسی خروجی (Egress Proxy):
این نوع پروکسی‌ها معمولاً در لبه شبکه داخلی و در مسیر خروج به اینترنت قرار می‌گیرند.
📍 کاربردهاش:

کنترل و فیلتر ترافیک کاربران داخلی به اینترنت 🌐

جلوگیری از دسترسی به سایت‌های نامناسب (مثل مدارس یا سازمان‌ها) 🚫

کاهش مصرف پهنای باند با کش‌کردن محتوا 📉

محافظت در برابر تهدیدات خارجی 🛡

🕸 سلسله‌مراتبی کردن Proxy‌ها (Proxy Chaining):
می‌تونید چندین پروکسی رو پشت سر هم قرار بدید، مثلاً یکی توی شعبه شرکت، یکی توی دیتاسنتر اصلی.
این کار باعث مدیریت بهتر ترافیک، امنیت بیشتر و حتی پنهان‌سازی IP میشه.

🛣 ترافیک چطور به Proxy هدایت بشه؟
راه‌های مختلفی داریم:

تنظیم دستی در مرورگر یا سیستم عامل ⚙️

استفاده از تنظیمات خودکار (PAC File) 📄

ریدایرکت ترافیک از طریق فایروال یا روتر 🔁

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
👍4
🎯 محل قرار گیری proxy ها در شبکه (B)
🔹 Access (Ingress) Proxy
این پراکسی‌ها در سمت ورودی شبکه قرار می‌گیرند، مثل داخل شرکت‌های ISP.
کاربردهاشون:

* کش‌کردن صفحات پرطرفدار برای افزایش سرعت دانلود 🚀
* کاهش مصرف پهنای باند اینترنت کاربران
* مناسب برای مکان‌هایی که اینترنت گرونه یا محدود دارن (مثلاً خوابگاه یا شرکت‌های بزرگ)

🔹 Surrogate / Reverse Proxy
این‌ها همون Reverse Proxy هستن که معمولاً جلوی وب‌سرورها قرار می‌گیرن.
کاربردها:

* افزایش امنیت سرورهای واقعی
* کش‌کردن محتوا از سمت سرور برای کاهش بار
* پنهان‌کردن IP واقعی سرور
* معمولاً کاربر فقط آدرس همین پراکسی رو می‌بینه، نه آدرس واقعی سرور 🎭

🔹 Network Exchange Proxy
این نوع پراکسی‌ها در نقاط تبادل اینترنت (Internet Exchange) استفاده می‌شن.
کاربرد:

* مدیریت ازدحام اینترنتی در مسیرهای پرترافیک
* صرفه‌جویی در پهنای باند در مناطقی مثل اروپا یا کشورهایی با هزینه بالا

🔹 Proxy Hierarchies (سلسله‌مراتب پراکسی)
گاهی پراکسی‌ها به صورت زنجیره‌ای و چندلایه‌ای تنظیم می‌شن.
مثلاً:
Client → Proxy 1 (فرزند) → Proxy 2 (والد) → اینترنت یا وب‌سرور
📦 این ساختار باعث می‌شه درخواست‌ها به‌صورت هوشمند بین چند پراکسی جابه‌جا بشن، تا سریع‌ترین یا بهینه‌ترین پاسخ ارائه بشه.

🧭 Content Routing در ساختار سلسله‌مراتبی
بر اساس نوع درخواست یا مقصد، پراکسی می‌تونه مسیرش رو عوض کنه. مثلاً:

* اگر محتوایی قبلاً کش شده باشه، مستقیماً تحویل داده می‌شه
* اگر نه، پراکسی بعدی یا سرور اصلی اون رو Fetch می‌کنه
* حتی ممکنه تصاویر رو فشرده کنه تا سریع‌تر بارگذاری بشه (ویژه موبایل یا مودم‌های ضعیف) 📉📷

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
👍62
HTTP Status Code Cheatsheet.pdf
807.2 KB
✏️ مقاله تالیف شده
HTTP Status Code Cheatsheet (in cybersecurity terms)

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #CheatSheet #CyberSecurity
👍7
🚀 آموزش Proxies (پارت 5)
🌐 مبانی مسیریابی پروکسی در HTTP (بخش A)

در دنیای پراکسی‌ها (Proxies)، مسیریابی درخواست‌ها یکی از مهم‌ترین عملکردها برای بهبود عملکرد، مقیاس‌پذیری و امنیت است. بیایید با ۳ نوع متداول مسیریابی توسط (Child Proxies) آشنا شویم:

🌀 1. توزیع بار (Load Balancing)
پراکسی فرزند می‌تواند پراکسی والد (Parent Proxy) را بر اساس وضعیت بار فعلی انتخاب کند.
هدف: جلوگیری از فشار زیاد روی یک مسیر
🔁 با پخش ترافیک، عملکرد شبکه بهینه می‌شود.

📍 2. مسیریابی بر اساس موقعیت جغرافیایی
در این روش، پراکسی فرزند والدینی را انتخاب می‌کند که به سرور مبدأ نزدیک‌تر هستند.
هدف: کاهش تأخیر (Latency) و بهبود تجربه کاربر
🌍 مثال: درخواست کاربر ایرانی به والد نزدیک به خاورمیانه ارسال می‌شود.

📦 3. مسیریابی بر اساس نوع درخواست یا پروتکل
پراکسی ممکن است بسته به نوع پروتکل یا مسیر URI، درخواست را به والد خاصی ارسال کند.
🔗 مثلا درخواست‌های REST به یک والد، و SOAP به والد دیگر ارسال شود.
هدف: تخصصی‌سازی مسیر و افزایش بهره‌وری

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
👍4🤔1
🌐 مبانی مسیریابی پروکسی در HTTP (بخش B)
در این قسمت دو محور را بررسی می‌کنیم:
1️⃣ روش Subscription-Based Routing
2️⃣ روش‌های چهارگانه انتقال ترافیک کلاینت به پراکسی‌ها (How Proxies Get Traffic)

روش Subscription-Based Routing چیست؟

در برخی زیرساخت‌ها، ارائه‌دهندگان محتوا (مثل CDNها یا شرکت‌های تبلیغاتی) برای داشتن کیفیت بهتر سرویس و سرعت بالاتر دسترسی، به ارائه‌دهنده پراکسی مبلغ بیشتری پرداخت می‌کنند.

ویژگی‌های این نوع مسیردهی:

* محتوا زودتر به کش منتقل می‌شود.
* داده‌ها فشرده‌تر و سریع‌تر ارائه می‌شوند.
* درخواست‌ها بر اساس زبان برنامه‌نویسی، افزونه یا منطق خاص به سرور یا پراکسی مناسب فرستاده می‌شوند.
* در محصولات مرورگر، افزونه، یا سیستم‌عامل، به شکل متفاوتی پیاده‌سازی می‌شود.

📌 هدف اصلی: افزایش سرعت بارگذاری و کاهش تاخیر در پاسخ‌دهی به کاربر نهایی



🛰 چگونه ترافیک کلاینت‌ها به پراکسی می‌رسد؟ (4 راه اصلی)

در مدل کلاسیک، مرورگرها مستقیم به سرور وب متصل می‌شوند. اما پراکسی‌ها این مسیر را تغییر می‌دهند. روش‌های زیر برای هدایت ترافیک کلاینت به پراکسی استفاده می‌شوند:


🔹 1. تغییر در کلاینت (Modify the Client)
🔧 با تنظیم دستی یا خودکار پراکسی در مرورگر (مثل Chrome یا Firefox):
• اگر کلاینت به‌درستی تنظیم شده باشد، همه‌ی درخواست‌های HTTP را مستقیماً به پراکسی ارسال می‌کند.
• این روش واضح، مستقیم و کنترل‌شده است.

📥 مثال: کاربر در تنظیمات مرورگر آدرس proxy.mycompany.local:3128 را وارد می‌کند.

🔹 2. تغییر در شبکه (Modify the Network)
🎯 به کمک تجهیزات شبکه مثل فایروال، سوییچ یا روتر:
پراکسی به‌صورت Interception یا Transparent اجرا می‌شود.
• کاربر حتی متوجه نمی‌شود که ترافیکش به پراکسی می‌رود.

📌 مثال: فایروال سازمان، تمام ترافیک پورت 80 را به پراکسی هدایت می‌کند.
📛 توجه: استفاده نادرست از این روش می‌تواند باعث نقض حریم خصوصی یا مشکلات امنیتی شود.

🔹 3. تغییر در نام‌گذاری دی ان اس (Modify the DNS Namespace)
🌍 با فریب DNS یا استفاده از رکوردهای DNS خاص (Surrogates):
• آدرس‌هایی که کاربران وارد می‌کنند، به جای سرور واقعی، به آدرس پراکسی اشاره می‌کنند.
• با DNS میشود IP مقصد را هنگام درخواست، دینامیک و طبق سیاست خاص محاسبه کند.

📥 مثال: کاربر example.com را باز می‌کند، ولی DNS، IP پراکسی را به او می‌دهد.

🔹 4. تغییر در وب‌سرور (Modify the Web Server)
🖥 وب‌سرور به کلاینت دستور استفاده از پراکسی را می‌دهد:
• با ارسال پاسخ HTTP 305 Use Proxy
• کلاینت در پاسخ به این دستور، از پراکسی تعیین‌شده استفاده می‌کند.

⚠️ این روش به دلایل امنیتی در اکثر مرورگرها دیگر پشتیبانی نمی‌شود.

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
3
🚀 آموزش Proxies (پارت 6)
Tricky Things About Proxy Requests (A)

در ظاهر، پراکسی‌ ساده است: ترافیک می‌فرستی، جواب می‌گیری.
اما پشت صحنه، درخواست‌ها گاهی چنان پیچیده و مبهم می‌شوند که تحلیل دقیق آن‌ها برای یک باگ‌بانتی‌کار یا تحلیل‌گر امنیتی ضروری است.

در این پست، به 4 نکته‌ کلیدی در این زمینه می‌پردازیم:

1️⃣ 🔁 تفاوت URI در درخواست کلاینت و درخواست پراکسی

وقتی مرورگر از پراکسی استفاده می‌کند، URI داخل درخواست ممکن است کامل‌تر یا متفاوت از حالت عادی باشد (مثل شامل شدن http:// کامل به‌جای مسیر نسبی).
همچنین، پراکسی ممکن است URI را تغییر دهد یا بازنویسی کند (Rewriting) تا آن را با مسیر خود منطبق کند.

📌 این مورد گاهی باعث خطای تحلیل یا bypass شدن signature-based WAF می‌شود.

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
👍5👎2🙏1
Tricky Things About Proxy Requests(B)

2️⃣ 👀 نقش پراکسی معکوس و Intercepting Proxy در مبهم‌سازی زبان و مسیر درخواست‌ها

پراکسی‌هایی مثل Intercepting Proxy (مثلاً در تجهیزات شبکه یا تست ابزارهایی مثل Burp Suite)، یا پراکسی معکوس (Reverse Proxy)، می‌توانند:

هدرها را بازنویسی کنند

IP/Host اصلی را پنهان کنند

یا حتی زبان برنامه‌نویسی سمت سرور را برای کلاینت قابل تشخیص نکنند

این موضوع برای باگ‌بانتی‌کاران مهم است چون ممکن است فکر کنند با یک سرور واقعی روبه‌رو هستند، در حالی که پشت پرده یک لایه پراکسی همه چیز را فیلتر می‌کند.

3️⃣ ✏️ اصلاح هوشمندانه URI توسط مرورگرها یا افزونه‌ها

برخی مرورگرها یا افزونه‌های آن‌ها به‌صورت خودکار تلاش می‌کنند URI ناقص یا اشتباه را "تصحیح" کنند.
مثلاً اگر آدرسی با /example داده شود، مرورگر ممکن است آن را به http://example.com/example تبدیل کند.

⚠️ در ترکیب با پراکسی، این رفتار می‌تواند باعث:

تغییر در مسیر اصلی درخواست

ایجاد حملات redirect/host header injection

بای‌پس برخی ruleهای WAF شود

4️⃣ 🌐 تأثیر زبان برنامه‌نویسی و دامنه‌ها در عملکرد پراکسی‌ها

برخی پراکسی‌ها مسیرها را بسته به زبان سمت سرور یا پسوند فایل‌ها متفاوت رفتار می‌دهند.
مثلاً مسیرهای php را differently rewrite می‌کنند یا cache policy برای js با json فرق دارد.

📌 دانستن این تفاوت‌ها برای اجرای موفق حملات XSS/Path Traversal یا اجرای payloadهای خاص بسیار مهم است.

🎯 نتیجه‌گیری:

هر باگ‌بانتی‌کار یا تحلیل‌گر امنیتی باید بداند:
«پراکسی فقط واسطه نیست، بلکه گاهی تصمیم‌گیرنده و تغییر‌دهنده‌ مسیر، ساختار و هویت درخواست‌هاست.»

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
👍51
📘 پایان بخش مقدماتی آموزش پراکسی

🧠 با هم وارد دنیای پیچیده و جذاب پراکسی‌ها شدیم؛ از انواع مسیریابی گرفته تا روش‌های انتقال ترافیک و جنبه‌های پیچیده در تحلیل درخواست‌ها.

بخش مقدماتی به پایان رسید و از همراهی شما تا اینجا سپاسگزاریم.

🚧 بزودی وارد مباحث پیشرفته‌تر و عملی‌تر خواهیم شد؛ از جمله تحلیل حملات از دل پراکسی‌ها، تست‌های امنیتی مرتبط و نقش پراکسی در عبور از WAF و فایروال‌های سخت‌گیر.

💬 اگر پیشنهادی یا موضوع خاصی در ذهن دارید، حتماً برایمان بفرستید.

تا پست بعدی، با دقت و دانش جلو بروید 🔐

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Proxy #CyberSecurity
👍8
🚀 پارت 0 (A)
شناسایی کلاینت‌ها و کوکی‌ها (Client Identification and Cookies)

در دنیای وب، سرورها ممکن است همزمان با هزاران کلاینت مختلف در تعامل باشند. اما چطور یک سرور می‌تواند تشخیص دهد که درخواست دریافتی از سوی چه کسی بوده یا به کدام کاربر تعلق دارد؟ به طور پیش‌فرض، پروتکل HTTP stateless (بی‌حالت) است، یعنی هر درخواست، مستقل از درخواست‌های قبلی در نظر گرفته می‌شود.

برای حل این چالش، سرورها نیاز دارند بتوانند هویت کاربران را تشخیص داده و پیگیری کنند. این شناسایی امکان‌پذیر نیست مگر با استفاده از یک‌سری تکنیک‌ها و فناوری‌هایی که به کمک آن‌ها، هر کاربر یا کلاینت به صورت یکتا قابل ردیابی خواهد بود.

در این سری، به بررسی روش‌هایی می‌پردازیم که سرورها از آن‌ها برای شناسایی کاربران بهره می‌برند. این روش‌ها هم در معماری شبکه اهمیت دارند و هم در امنیت وب، زیرا بسیاری از حملات و مکانیزم‌های دفاعی (مثل تشخیص نشست‌های غیرمجاز، پیگیری رفتار مشکوک و جلوگیری از جعل هویت) به همین مکانیزم‌های شناسایی وابسته‌اند.

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Cookies #CyberSecurity
👍6🔥1
🚀 پارت 0 (B)
بررسی The Personal Touch در وب مدرن

پروتکل HTTP ذاتاً یک پروتکل stateless یا بدون‌حالت است؛ یعنی سرور هیچ‌گونه اطلاعاتی از درخواست‌های قبلی کلاینت نگه نمی‌دارد. هر بار که مرورگر شما درخواستی به سرور ارسال می‌کند، سرور آن را به‌صورت مستقل پردازش کرده و پاسخ می‌دهد، بدون اینکه "بداند" چه کسی درخواست را فرستاده است.

اما این رفتار، برای سرویس‌های امروزی وب قابل‌قبول نیست. اکثر وب‌سایت‌های مدرن می‌خواهند تجربه‌ای شخصی‌سازی‌شده به کاربران ارائه دهند؛ چیزی که به آن The Personal Touch می‌گوییم. این یعنی سایت باید بداند شما کی هستید، سابقه‌ تعامل شما چیست، و بتواند شما را در جریان بازدیدهای بعدی شناسایی کند.

برخی کاربردهای مهم Personal Touch:

خوش‌آمدگویی شخصی: نمایش نام کاربر یا محتوای مخصوص او
🎯 پیشنهادهای هدفمند: ارائه محصول یا محتوا بر اساس رفتار قبلی شما
🧾 اطلاعات ذخیره‌شده: عدم نیاز به وارد کردن مکرر اطلاعات (مانند آدرس یا کارت بانکی)
🛒 ردیابی سشن: نگه‌داشتن وضعیت سبد خرید یا فرم‌های چندمرحله‌ای

📎 اما چطور این کار را در HTTP بدون‌حالت انجام می‌دهند؟

برای رسیدن به این هدف، تکنیک‌ها و فناوری‌های مختلفی ابداع شده‌اند که به سرورها اجازه می‌دهند هویت کاربران را شناسایی و پیگیری کنند. برخی از این تکنیک‌ها:

🔹Headerهای HTTP:
شامل اطلاعاتی مانند User-Agent، زبان، نوع مرورگر و…
🔹IP Address:
استفاده از آدرس IP برای شناسایی تقریبی کاربران
🔹Authentication:
شناسایی کاربران با ورود (Login) و احراز هویت
🔹Fat URLs:
قرار دادن اطلاعات شناسایی در آدرس‌ها (نه چندان ایمن!)
🔹Cookies:
یکی از مهم‌ترین روش‌ها برای نگه‌داری وضعیت (State) کاربر

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Cookies #CyberSecurity
👍31
🚀 پارت 1 (A)
بررسی HTTP Headers و شناسایی کاربران

در HTTP، هدرهای درخواست (Request Headers) اطلاعاتی درباره کاربر، مرورگر، مسیر ورود و تنظیمات کلاینت ارائه می‌دهند. برخی از این هدرها به سرور کمک می‌کنند تا کاربر را شناسایی یا ردیابی کند؛ حتی زمانی که ورود (Login) انجام نشده باشد.

در این پست، به بررسی ۷ هدر پرکاربرد در شناسایی کلاینت‌ها می‌پردازیم:

1️⃣ From
این هدر شامل آدرس ایمیل کاربر است و در گذشته به عنوان راهی برای شناسایی کاربران در نظر گرفته می‌شد.
🔴 اما امروز، مرورگرها معمولاً این هدر را ارسال نمی‌کنند چون می‌تواند منجر به سوءاستفاده‌هایی مانند اسپم یا فیشینگ شود.
🛑 در عمل، From یک هدر تقریباً منسوخ و ناامن محسوب می‌شود.

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Cookies #CyberSecurity
🔥3
🚀 پارت 1 (B)
بررسی HTTP Headers و شناسایی کاربران

2️⃣ User-Agent

شامل اطلاعات دقیق درباره مرورگر، نسخه آن، سیستم‌عامل و گاهی معماری سیستم است.
مثال:

Mozilla/5.0 (X11; Ubuntu; Linux x86_64) AppleWebKit/537.36 
(KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36


🔍 کاربرد امنیتی: ترکیب این اطلاعات می‌تواند در ساخت یک پروفایل نسبی از کلاینت استفاده شود. اگر ترکیب User-Agent خاصی فقط توسط یک کاربر استفاده شود، سرور می‌تواند آن را شناسایی کند.

3️⃣ Referer

مشخص می‌کند که کاربر از کدام صفحه یا سایت به این صفحه فعلی رسیده است.

کاربردها:

* تحلیل رفتار کاربران
* ردگیری مسیر بازدید (Path Tracking)
* شناسایی منابع ترافیک (مثلاً از Google آمده یا از یک سایت تبلیغاتی)

⚠️ از منظر امنیتی، این هدر می‌تواند اطلاعات حساس (مانند توکن‌ها در URL) را نیز فاش کند، به همین دلیل در بسیاری از برنامه‌های امن، مقدار آن کنترل یا حذف می‌شود.

4️⃣ Accept-Language

مشخص می‌کند زبان‌های ترجیحی کاربر چیست. برای مثال:

Accept-Language: fa-IR,fa;q=0.9,en-US;q=0.8,en;q=0.7


🌐 کاربردها:

* نمایش خودکار سایت به زبان مناسب
* شناسایی منطقه جغرافیایی کاربر

🎯 در کنار IP و User-Agent می‌تواند بخشی از پروفایل شناسایی کاربر را شکل دهد.

5️⃣ Accept

این هدر مشخص می‌کند که کلاینت چه نوع محتواهایی را پشتیبانی می‌کند (مثلاً HTML، JSON یا XML).
نمونه:

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8


🧩 اگرچه نقش مستقیمی در شناسایی ندارد، ولی ترکیب خاص مقادیر این هدر می‌تواند به‌صورت غیرمستقیم در Fingerprinting کاربر مفید باشد.

6️⃣ Accept-Encoding

بیان می‌کند که چه الگوریتم‌های فشرده‌سازی (مثل gzip یا br) توسط کلاینت پشتیبانی می‌شوند.

🛡 اگرچه هدف اصلی آن کاهش حجم پاسخ است، اما باز هم می‌تواند بخشی از اثر انگشت مرورگر (Browser Fingerprint) را بسازد.

7️⃣ DNT (Do Not Track)

این هدر اعلام می‌کند که آیا کاربر می‌خواهد ردیابی نشود (Do Not Track).
مقدار آن معمولاً 1 برای فعال‌بودن یا 0 برای غیرفعال‌بودن است.

🚫 این هدر غیرالزامی و داوطلبانه است، و بسیاری از سرورها آن را نادیده می‌گیرند.

📌 جمع‌بندی:
درست است که هیچ‌کدام از این هدرها به‌تنهایی برای شناسایی دقیق کافی نیستند، اما ترکیب آن‌ها می‌تواند به ساخت اثر انگشت دیجیتال (Fingerprint) کمک کند. این روش‌ها پایه بسیاری از سامانه‌های تشخیص تقلب، تبلیغات هدفمند، یا حتی حملات مبتنی بر شناسایی مرورگر هستند.

✍️نویسنده
@TryHackBox | The Chaos

#HTTP #Cookies #CyberSecurity
7🔥1🙏1