ChatCrawlersearch across public Telegram Open the app
D

DevOps Expert General Group

сообщение · 2026-05-23 13:04 UTC
A
آشنایی با DPI یا Deep Packet Inspection و آنالیز پکت با scapy در Python این بار میریم سراغ یکی از بنیادی ترین مفاهیم در امنیت شبکه؛ همون فناوری ای که پشت پرده این فیلترینگ گسترده در کشوره. بخش اول، scapy چیه و به چه کارمون میاد ؟ ماژول scapy یک کتابخونه قدرتمند برای ساخت، ارسال، دریافت و تحلیل بسته های شبکست. این ماژول به ما کنترل کامل روی تک تک پکت هارو میده و این امکان رو فراهم میکنه که به صورت خودکار ترافیک رو پردازش کنیم. ماژول scapy تعدادی از پروتکل هارو از لایه ۲ تا ۷ پشتیبانی میکنه، و حتی برای پروتکل هایی که پشتیبانی نمیشن میتونیم parser های اختصاصی بنویسیم. نمونه کد : from scapy.all import sniff, IP, TCP, Raw def packet_analysis(pkt): if pkt.haslayer(Raw) and pkt.haslayer(TCP): payload = pkt[Raw].load.decode(errors="ignore") if "GET" in payload or "POST" in payload: print(f"From {pkt[IP].src} To {pkt[IP].dst} IP") sniff(filter="tcp port 80", prn=packet_analysis, store=False) این اسکریپت فقط ترافیک پورت 80 رو میگیره و مبدا و مقصدشون رو چاپ میکنه. بخش دوم، DPI و نحوه کارکرد اون : مفهوم DPI بر خلاف فیلترینگ ساده که فقط به IP Address نگاه میکنه، محتوای پکت رو هم میخونه. سیستم فیلترینگ در ایران روی چند لایه مختلف کار میکنه : ۱. فیلتر کلمه یا HTTP Keyword Filtering : توی ترافیک رمزنگاری نشده HTTP، سیستم DPI کلماتی مثل protest یا human right رو شناسایی میکنه و در صورت پیدا شدن، یک بسته RST به دو طرف ارسال میکنه تا connection قطع بشه. ۲. فیلتر SNI روی TLS/HTTPS : ترافیک HTTPS امنه و محتواش قابل دیدن نیست، اما خود TLS Handshake اولیه که ClientHello هست، شامل یک فیلد به اسم SNI یا Server Name Indication هست که به صورت plaintext ارسال میشه و اسم دامنه مورد بازدید رو لو میده. سیستم DPI همین SNI رو میخونه و اگر domain در لیست سیاه باشه بلافاصله connection رو میبنده. ۳. پروتکل وایت لیست : ایران یکی از معدود کشور هاییه که از سیاست Protocol Whitelisting استفاده میکنه؛ یعنی فقط ترافیکی مجاز به عبوره که به شکل عادی HTTPS یا DNS باشه و سایر پروتکل ها مثل SOCKS5, WireGuard, OpenVPN یا SSH روی پورت های غیر استاندارد بلافاصله توسط DPI مسدود میشن. این یعنی حتی اگر سرور VPN روی یک IP معمولی باشه و رو پورت ۴۴۳ کار کنه، DPI به کمک TLS Fingerprinting میتونه تشخیص بده که جریان رمزنگاری شده مربوط به browser نیست و اون رو مسدود کنه. ۴. تزریق بسته RST یا RST Injection : پس از شناسایی ترافیک غیرمجاز یک بسته TCP RST یا Reset جعلی از طرف سرور مقصد به کاربر ارسال میشه و باعث قطع ناگهانی connection میشه. نکته فنی : همونطور که در بخش SNI توضیح دادم؛ حتی اگر کل ترافیک رمزنگاری بشه دامنه مقصد به راحتی توسط DPI قابل شناساییه. برای مقابله با این روش جدید ترین مرورگر ها از ECH یا Encrypted Client Hello پشتیبانی میکنن که SNI رو هم رمزنگاری میکنه. @Ahura_Rahmani | #Ahur4 #DPI #Scapy #Python #Network #VPN #Filtering
681 ·

Вся лента · оригинал в Telegram

Open in Telegram Каталог площадок Искать в ChatCrawler

A snapshot of an open public feed from the search index ChatCrawler — “Google for public Telegram”; refreshed as the venue is crawled. Times are UTC.

Public content only, official Telegram API. About · FAQ · What we do not do · Remove a page · Catalog