جنگولرن
3.78K subscribers
287 photos
73 videos
31 files
553 links
آموزش Django و بستگان
Download Telegram
Forwarded from Unk9vvN
#Web #Developer VS #Web #Security #Expert
تفاوت نگاه یک برنامه نویس وب به موضوع امنیت سرویس های تحت وب، با یک متخصص پیشرفته امنیت وب در این است که برنامه نویس وب، آسیب پذیری های عمومی را مورد بررسی و ایمن سازی قرار میدهد اما متخصص امنیت وب بیش از 100 آسیب پذیری حساس در حوزه وب رو مورد بررسی و وا کاوی قرار میدهد.

نمونه ای از تحقیقات برتر متخصصین امنیت وب:

Abusing HTTP hop-by-hop request headers by Nathan Davison

Web Cache Deception Attack by Omer Gil

HTTP Desync Attacks: Request Smuggling Reborn by James Kettle

File Operation Induced Unserialization via the “phar://” Stream Wrapper by Sam Thomas

Remote Code Execution in CouchDB by Max Justicz

Prototype pollution attack in NodeJS application by Olivier Arteau

A New Era of SSRF - Exploiting URL Parser in Trending Programming Languages! by Orange Tsai

Timeless Timing Attacks by Tom Van Goethem & Mathy Vanhoef

How I Hacked Microsoft Teams and got $150,000 in Pwn2Own by Masato Kinugawa

@Unk9vvN
😁2🔥1
Forwarded from ITShield
دوره های🔥 رایگانی 🔥که در حال برگزاریه و تو کانال @itshield داره قرار میگیره:

⭐️دوره  اسمبلی (به هدف مقدمه برای مهندسی معکوس و تحلیل بدافزار)
https://t.me/itshieldassembly
⭐️دوره رایگان پایتون برای نفوذگر سطح مقدمات
https://t.me/itshield/1452
⭐️دوره  پایتون برای تست نفوذ پیشرفته (دوره مقدماتیش تموم شده که تو همین کانال  @itshield قرار گرفته)
https://t.me/PythonForPentester
⭐️دوره برنامه نویسی سی پلاس پلاس (به هدف ابزار امنیتی نوشتن)
https://t.me/CPlusPlus4Pentester
⭐️ دوره جرم شناسی ویندوز (For 500)
https://t.me/for500
⭐️ دوره اتوماسیون صنعتی
https://t.me/ICS_ITShield

😎پکیج رایگان ccna
https://t.me/itshield/1322
🤓پکیج رایگان MCSE
https://t.me/itshield/1326
🤓دوره رایگان ISMS
#isms
🥸دوره رایگان مقدمات SOC
#soc
🥸مینی دوره مهندسی اجتماعی
#مهندسی_اجتماعی
🥸 دوره جمع آوری اطلاعات برای تست نفوذ وب
#web_recon
یه سری دوره دیگه هم هست  که باید سرچ بزنین پیدا کنین
نکته هزینه شرکت در این دوره ها اینه که روی لینک زیر کلیک کنین و فاتحه برای عزیزان من بفرستین :
https://fatehe-online.ir/g/13486
🤓یه سری دوره و مباحث آموزشی رایگان دیگه هم هست که با سرچ و ... تو کانال بدست میاد
Forwarded from Ninja Learn | نینجا لرن (Mohammad Eslami)
💎 مفهوم XFF یا همون X-Forward-For💎

امروز میخوایم در مورد یه هدر (Header) جالبی به اسم X-Forwarded-For حرف بزنیم. شاید اولش یه کم پیچیده به نظر بیاد، ولی نگران نباشید! میخوام براتون توضیح بدم که این چیز عجیب و غریبی نیست 😁

حالا X-Forwarded-For چیه؟
تصور کنید شما یه نامه رو از تهران به شیراز پست میکنید. روی پاکت نامه آدرس فرستنده و گیرنده نوشته شده. حالا فرض کنید این نامه توی مسیرش از چندین پستخانه عبور کنه. هر پستخانه ای که نامه رو دست بگیره، یه برچسب کوچولو روش میچسبونه و آدرس پستخانه خودش رو هم روش مینویسه. این برچسب ها مثل یه ردیاب هستن که نشون میدن نامه از کجا اومده و به کجا رفته.

خب X-Forwarded-For هم دقیقا همین کارو برای درخواست‌های اینترنتی انجام میده.
وقتی شما یه صفحه وب رو باز میکنید، کامپیوتر شما یه درخواست به سرور اون سایت ارسال میکنه. این درخواست حاوی اطلاعات مختلفی مثل آدرس IP شماست.

ادرس IP چیست؟
آدرس IP مثل یه شماره شناسایی منحصر به فرد برای هر دستگاهی هست که به اینترنت متصله.

حالا فرض کنید این درخواست از چندین سرور عبور کنه.
هر سروری که درخواست رو دریافت کنه، آدرس IP خودش رو به همراه آدرس IP قبلی در یه هدر به اسم X-Forwarded-For ذخیره میکنه. اینجوری میشه فهمید که درخواست از کجا اومده و چه مسیری رو طی کرده.

چرا X-Forwarded-For مهمه؟

🛡 امنیت: با استفاده از این هدر میشه به آسانی حملات هکرها رو ردیابی کرد. اگه یه هکر بخواد با استفاده از آدرس IP جعلی به یه سایت حمله کنه، با بررسی هدر X-Forwarded-For میشه آدرس IP واقعی اون رو پیدا کرد.

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

🗺 جغرافیایی: با بررسی آدرس‌های IP موجود در این هدر میشه فهمید که کاربران از کجا به سایت شما وصل میشن. این اطلاعات برای تحلیل رفتار کاربران و شخصی‌سازی محتوا خیلی مفیده.

خلاصه کلام:

هد X-Forwarded-For یه ابزار قدرتمند برای تحلیل ترافیک شبکه و افزایش امنیت سایت‌هاست. با استفاده از این هدر میشه به اطلاعات ارزشمندی درباره مسیر درخواست‌ها، آدرس IP کاربران و نوع دستگاه‌هایشون دست پیدا کرد.

#web #xff
👍32
Forwarded from ITShield
دوره های🔥 رایگانی 🔥که در حال برگزاریه و تو کانال @itshield داره قرار میگیره:

⭐️دوره  اسمبلی (به هدف مقدمه برای مهندسی معکوس و تحلیل بدافزار)
https://t.me/itshieldassembly
⭐️دوره رایگان پایتون برای نفوذگر سطح مقدمات
https://t.me/itshield/1452
⭐️دوره  پایتون برای تست نفوذ پیشرفته (دوره مقدماتیش تموم شده که تو همین کانال  @itshield قرار گرفته)
https://t.me/PythonForPentester
⭐️دوره برنامه نویسی سی پلاس پلاس (به هدف ابزار امنیتی نوشتن)
https://t.me/CPlusPlus4Pentester
⭐️ دوره جرم شناسی ویندوز (For 500)
https://t.me/for500
⭐️ دوره اتوماسیون صنعتی
https://t.me/ICS_ITShield

😎پکیج رایگان ccna
https://t.me/itshield/1322
🤓پکیج رایگان MCSE
https://t.me/itshield/1326
🤓دوره رایگان ISMS
#isms
🥸دوره رایگان مقدمات SOC
#soc
🥸مینی دوره مهندسی اجتماعی
#مهندسی_اجتماعی
🥸 دوره جمع آوری اطلاعات برای تست نفوذ وب
#web_recon
🔥ماژول دوم دوره CEH
#CEH
یه سری دوره دیگه هم هست  که باید سرچ بزنین پیدا کنین
نکته هزینه شرکت در این دوره ها اینه که روی لینک زیر کلیک کنین و فاتحه برای عزیزان من بفرستین :
https://fatehe-online.ir/g/13486
🤓یه سری دوره و مباحث آموزشی رایگان دیگه هم هست که با سرچ و ... تو کانال بدست میاد
👆اینها رو تا میتونین نشر بدین تا کسی بخاطر یادگیری مقدمات هزینه نکنه
رایگان بودن دوره ها باعث نشده سطحی تدریسشون کنم و واقعا به اندازه دوره تجاری و حتی گاهی بیشتر بهشون اهتمام داشتم و دارم
👍1
خب خب خب Django Channels چیه؟ و چرا من ازش خوشم نمیاد

قبل از اینکه با هم بریم سراغ Django Channels، یه کم درباره WebSocket بگیم که اصلاً بدونیم داریم درباره چی حرف می‌زنیم. خب، WebSocket یه پروتکل که بهت اجازه میده ارتباط دوطرفه و دائمی بین کلاینت و سرور داشته باشی. یعنی چی؟ یعنی مثلاً تو یه اپلیکیشن چت، به جای اینکه هر چند ثانیه یه بار درخواست بفرستی "چیزی جدید اومده؟"، سرور خودش هر وقت یه پیام جدید داشت، بلافاصله می‌فرسته سمتت 🚀.

حالا Django Channels چی میگه؟ 🤔
ـDjango Channels یه ابزار تو اکوسیستم Djangoئه که میاد پشتیبانی از WebSocket، پروتکل‌های real-time و کارای async رو به پروژه‌هات اضافه می‌کنه. به زبان ساده، اگه Django عادی رو یه "خیابون یک‌طرفه" فرض کنیم، Channels میاد این خیابون رو دوطرفه می‌کنه. این یعنی می‌تونی کارایی مثل:

چت real-time 💬


نوتیفیکیشن‌های فوری 🔔


استریم داده (مثل قیمت‌های ارز دیجیتال) 📈


و...

رو خیلی راحت‌تر با Django انجام بدی.

خب پس مشکلش چیه؟ چرا من ازش خوشم نمیاد؟ 🤷‍♂️

از دور که نگاه می‌کنی، Channels خیلی جذاب به نظر میاد، ولی وقتی می‌خوای باهاش کارکنی، مشکلات خودش رو نشون میده:

1⃣ پیچیدگی توی تنظیمات 😵‍💫
ـDjango همیشه به خاطر سادگی معروف بوده، ولی Channels میاد این سادگی رو خراب می‌کنه خیلی خراب میکنه. باید ASGI رو راه بندازی، Redis نصب کنی، routing یاد بگیری، و کلی تنظیمات دیگه انجام بدی. یه پروژه ساده که با Django راحت بود، یهو برات میشه یه جنگل از تنظیمات.

نکته: از Django 4.0 به بعد، پشتیبانی از ASGI مستقیم داخل هسته Django اومده، پس برای پروژه‌های ساده شاید نیاز نباشه کل پروژه رو وابسته به Channels کنی.

2⃣ وابستگی به Redis 🤦‍♂️
یکی از مشکلات بزرگ Channels اینه که برای مدیریت eventها و ارتباط‌ها حتماً نیاز به Redis داره. خب چرا؟ دلیلش اینه که Redis به‌عنوان message broker استفاده میشه تا پیام‌ها بین کلاینت‌ها و سرور مدیریت بشه. ولی اگه پروژه کوچیک باشه، این وابستگی می‌تونه دردسرساز بشه.

جایگزین: می‌تونی از RabbitMQ یا حتی راه‌حل‌های ساده‌تر مثل In-Memory Layers برای پروژه‌های سبک استفاده کنی.


3⃣ محدودیت توی scale کردن 😩
اگه پروژه کوچیک باشه، Channels بد نیست. ولی وقتی تعداد کاربران زیاد میشه و حجم درخواست‌ها بالا میره، Channels سریع از نفس می‌افته. این محدودیت بیشتر به خاطر پیچیدگی WebSocket و محدودیت‌های سرورهای تک رشته ای هست تا خود Channels. برای پروژه‌های بزرگ و real-time محور، ابزارای دیگه‌ای مثل Socket.IO یا FastAPI خیلی بهتر عمل می‌کنن.

4⃣ مشکلات performance 🚨
حتی اگه پروژه خیلی هم بزرگ نباشه، Channels برای real-time پروژه‌های سنگین خوب عمل نمی‌کنه. کارای پیچیده async و ارتباطات real-time می‌تونن سرور رو داغون کنن. البته با تنظیم درست workerها و Redis channel layers می‌تونی بخشی از این مشکلات رو کم کنی، ولی باز هم کار اضافه‌ست.

5⃣ کمبود مستندات و منابع آموزشی درست و حسابی 📚
یکی دیگه از مشکلات اینه که منابع آموزشی کامل و به‌روزی برای Channels خیلی کمه. هر وقت گیر کنی، یا باید بری توی GitHub دنبال issueها، یا دست به دامن دیگران بشی. این باعث میشه زمان زیادی صرف حل مشکلات کنی.

خب حالا راه‌حل چیه؟ 💡
اگه بخوای real-time کار کنی، اینا می‌تونن گزینه‌های بهتری باشن:

ـFastAPI: اگه دنبال سرعت، سادگی و پرفورمنس خوب هستی، FastAPI انتخاب فوق‌العاده‌ایه. با WebSocket خیلی راحت کار می‌کنه و خبری از دردسرای Channels نیست 🚀.

ـSocket.IO: این یکی برای پروژه‌های real-time شاهکاره. خیلی ابزارای متنوع داره و با Node.js هم عالی مچ میشه.


جمع‌بندی 🎯
ـDjango Channels می‌تونه برای پروژه‌های کوچیک و ساده مناسب باشه، ولی اگه بحث scale، پرفورمنس یا راحتی کار مطرح باشه، اصلاً گزینه خوبی نیست. من از پیچیدگی‌ها و محدودیت‌هاش خسته شدم و به جای اون سراغ ابزارای دیگه رفتم.
نظر تو چیه؟ Django Channels تا حالا اذیتت کرده یا ازش خوشت میاد؟ بگو ببینم چی تو ذهنت می‌گذره🧐


#programming #web #django



🔆 CHANNEL | GROUP
👍22😁3