فارسی
باز کردن در Telegram

پست این ابزارا اکثر از libpcap/WinPcap استفاده میکنن که ایناهم برای فیلترینگ از Berkeley Packet Filter استفاده میکنن و بخاطر…

18 فوریه 2026
N
NSEs
پیوند
برای نمایش کلیک کنید
این ابزارا اکثر از libpcap/WinPcap استفاده میکنن که ایناهم برای فیلترینگ از Berkeley Packet Filter استفاده میکنن و بخاطر همین BPF رایج هستش فیلتری که با BPF ساخته میشه بهش expression میگن و هر expression از یک یا چند تا primitive تشکیل شده خود primitive هم از یک یا چند تا qualifier ساخته میشه به همراه یک ID بیاید یه مثال بزنیم dst host 192.168.0.10 && tcp 80 dst =qualifier host=qualifier 192.168.0.10 =ID && = Operator tcp=qualifier port=qualifier 80=ID البته ما qualifier مختلف داریم که عکسش رو میزارم براتون (عکس 1.1) با ترکیب dst host یک qualifier و با 192.168.0.10 که ایدی هست یک primitive ساخته میشه که این primitive به تنهایی خودش expression هستش و فقط ترافیک با ادرس مقصد 192.168.0.10 رو کپچر میکنه . ما میتونیم از عملگرهای منطقی استفاده کنیم که برای ترکیب primitive ها و ساخت expression های پیشرفته تر && = AND || = OR ! = NOT مثلا src host 192.168.0.10 && port 80 فقط ترافیکی رو کپچر میکنه که که ادرس سورسش 192.168.0.1 و پورتش 80 باشه فیلتر های Addressing و Hostname بیشتر فیلتر هایی که میسازیم ،حول یک دستگاه شبکه خاص یا گروهی از دستگاه ها میچرخه . بسته به شرایط ،فیلتر میتواند بر اساس ادرس IPV6.IPV4,MAC,Hostname DNS دستگاه باشه . چند تا مثال ساده بزنیم host 2001:db8:85a3::8a2e:370:7334 برای فیلتر بر اساس ادرس IPV6 host testserver2 یا مثلا بر اساس Hostname ether host 00-1a-a0-52-e2-a0 یا فیلتر کرد بر اساس MAC که حالا میتونیم با چیز های مختلف ترکیبشون کنیم که جالب تر باشن مثلا اضافه کردن src/dst مشخصه که برای فیلتر ورودی خروجی هستش بالاترم نمونشو دیدیم فیلتر های PORT این فیلتر ها هم مثل فیلتر های روی host هستن براساس پورت های استفاده شده یا نشده میتونید فیلتر رو انجام دهید برای سرویس و اپلیکیشن هایی که از پورت شناخته شده استفاده میکنن مفیده . مثال ها port 8080 ترافیکی که پورت مبدا یه مقصدش 8080 باشه !port 8080 هر ترافیکی ترافیکی که پورت مبدا یه مقصدش 8080 باشه dst port 80 فقط پورت مقصد 80 باشه و همینجوری میتونید با بقیه فیلتر ها ترکیبش کنید. فیلتر های Protocol فیلتر های پروتکل به ما اجازه میدن پکتارو بر اساس پروتکل های خاصی فیلتر کنیم که non-application layer هستن و نمیشه فقط با پورت تعریفشون کرد . مثلا ترافیک icmp البته میرسیم به جای جالب ماجرا تا اینجا چیزای که یادگرفتیم چیزای ساده ای بودن ولی میخوایم الان یکی از نقاط قوت اصلی BPF رو یاد بگیریم . با سینتکس BPF امکان برسی هر بایت از هدر پروتکل هستش برای ساخت فیلتر های خیلی خاص . توی ترابل شوتینگ های حرفه ای و CTF ها استفاده زیادی ازشون میشه . فیلتر های پیشرفته تو این بخش به ما اجازه میدن تعداد مشخصی از هر بایت رو از یک مکان خاص تو پکت بگیرید . بریم برای یه مثال جالب فرض کنیم میخوایم براساس فیلد type تو هدر ICMP فیلتر انجام بدیم .فیلد type تو ابتدای پکت( offset 0) قرار گرفته برای مشخص کردن مکان ،offset رو باید داخل کروشه [] کنار qualifier پروتکل بنویسیم مثلا icmp[0] و اینجوری میتونیم به بایت یک اشاره کنیم icmp[0] == 3 برای گرفتن پکت هایی که type3(destination unreachable ) هستن مینویسیم icmp[0] == 8 || icmp[0] == 0 برایecho request (type 8)یاecho reply (type 0) خیلی فیلتر جالبیه ولی تا اینجا یادگرفتیم که روی یک بایت فیلترمون رو اعمال کنیم الان میخوایم یاد بگیریم بایت های بیشتری رو فیلتر کنیم و محدوده فیلتر هارو داخل هدر رو بزرگتر کنیم (همزمان هدر های بیشتری تو فیلترمون باشن ) مثلا فرض کنید میخوایم ICMP destination-unreachable, host-unreachable (type 3, code 1). فقط کپچر کنیم یعنی با دوتا هدر سر کار داریم ک هرکدوم یک بایتی هستن و پشت هم قرار گرفتن . باید دوبایت از افست 0 مشخص کنیمش با مقدار هگزشون یعنی 0x0301 در نتیجه میشه این : icmp[0:2] == 0x0301 بیایم یه سناریو رایج رو هم برسی کنیم و این پست رو به اتمام برسونیم وقتی میخوایم پکتی رو کپچرکنیم که فلگ خاصی رو مد نظرمون هست داخل TCP میتونیم از تکنیکی که الان یاد گرفتیم استفاده کنیم فلگ ها داخل TCP تو افست 13 قرار دارن و هر فلگ یک بیت خاصی داره جدولشو میزارم (عکس 1.2) مثلا اگه بخوایم پکتی رو فیلتر کنیم که توش از فلگ RST استفاده شده باشه (RSTدر بیت شماره۴)از عملگر & (bitwise AND) استفاده میکنیم: tcp[13] & 4 == 4 یا برای PSH : tcp[13] & 8 == 8 و این هم از بخش جذاب BPF . این سورس رو هم میتونید براش مطالعه بکنید جالب بود https://biot.com/capstats/bpf.html ➖➖➖➖➖ امیدوارم که از این پست خوشتون بیاد با تشکر CHANNEL
7 · 1.1K ·

در همان حوالی فید

NNSEsتو این پست قراره درباره نحوه کار فیلتر هایی که داخل وایرشارک TCPDUMP .... میبینیم صحبت کنیم . این ابزارا سینتکس پکت فیلترینگ رو از خودشون در نمیارن یا اینکه از NNSEs1.1
این پیام
NNSEs1.2NNSEs⛪️
NNSEsNSEs@NetSecZ · کانال · فناوری
1 295مشترک149میانگین دسترسی پست
فید انجمن باز کردن در Telegram

فید عمومی باز از ایندکس جست‌وجو ChatCrawler — «Google برای Telegram عمومی»؛ با خزش انجمن به‌روز می‌شود. زمان‌ها به UTC است.

فقط محتوای عمومی، API رسمی Telegram. دربارهٔ ما · پرسش‌ها · محدودیت‌های ایندکس · حذف یک صفحه · کاتالوگ · جست‌وجو · روش محاسبهٔ ما