Kiyan Profile picture
Feb 7 23 tweets 14 min read
فیلترینگ پروتکل HTTP/HTTPS :
پروتکل HTTP در لایه 7 ( OSI ) قرار داره و ارتباط کلاینت با سرور یا وب سرور رو برقرار میکنه , HTTP به طور پیشفرض از پورت 80 استفاده میکنه

نکته این هستش که محتوای پکت HTTP به صورت plain text ارسال و دریافت میشه یعنی.....
1/23
#اینترنت
#فیلترنت
پکت HTTP به صورت پیشفرض رمزنگاری نمیشه و اگر مهاجم بین کلاینت و سرور قرار بگیره راحت میتونه درخواست هارو شنود کنه ( sniff ) و یا حتی تغییرش بده (MITM)
پروتکل HTTP از پروتکل TCP که در لایه پایین تر یعنی 4 (OSI) قرار داره استفاده میکنه
2/23
نحوه برقراری ارتباط HTTP :

#فیلترنت
ابتدا tcp handshake با سرور برقرار میشه و بعد درخواست http ارسال و پاسخ هم از سمت سرور یا وب سرور دریافت میشه و در آخر هم connection بسته میشه
3/23
#فیلترنت
از ابزار curl برای تست ارتباط و ابزار wireshark برای آنالیز پکت ها استفاده میکنیم

قصد برقراری ارتباط با سایت فیلترشده داریم و میبینیم که ip فیلترچی به ما برگردونده شده و کلاینت چندبار SYN برای مقصد ارسال کرده تا tcp handshake رو انجام بده اما فیلترچی پاسخ نمیده
4/23
#فیلترنت
به دلیل دستکاری dns query اگر قصد برقراری ارتباط از طریق دامنه رو داشته باشیم ابتدا dns query انجام میشه و به دلیل دخالت های فیلترچی ip خودش به ما برگردونده میشه

پس ابتدا ip دامنه فیلترشده رو بدست میاریم
( توییت های قبلی فیلترینگ پروتکل DNS رو بررسی کردیم )
5/23
#فیلترنت
سوال اینه پکت های HTTP چطوری دستکاری و سانسور میشن ؟!
همونطور که خدمتتون گفتم پکت های HTTP رمزنگاری نمیشن و plain text ارسال و دریافت میشن و سانسور چی راحت میتونه محتوای پکت http که شامل Header ها میشه رو بررسی کنه و دستکاری رو انجام بده
6/23
#فیلترنت
اینجا به ip اصلی سایت فیلترشده درخواست ارسال میکنیم v- برای دریافت اطلاعات بیشتر و resolve-- برای قراردادن ip و دامنه در dns خود curl

اینبار بازهم connection توسط سرور ریست شده !

7/23

#فیلترنت
تست میکنیم تا ببینیم که خود سرور connection رو ریست میکنه یا نه ! البته جواب مشخصه و معلومه کار کیه اما برای اینکه به عرزشی ها اثبات کنیم فیتلرچی و جمهوری اسلامی چقدر پلیدن قرار میدیم

حالا نگاه کنیم که فیلترچی کدوم قسمت Header پکت http رو بررسی و فیلتر میکنه :

8/23
#فیلترنت
محتوای پکت http رو مشاهده میکنیم
فیلترچی بخش Host که عضو Header http هستش رو بررسی میکنه
اگر دامنه جز لیست فیلتر باشه ارتباط برقرار نمیشه

اگر دامنه جز لیست فیلتر نیست و خطری برای جمهوری اسلامی نداره فیلترچی اجازه میده! درخواست به سرور هدایت بشه
9/23
#فیلترنت
از دامنه فیلترشده با ip سرور شخصی استفاده میکنیم
ابزار wireshark نشون میده که tcp handshake برقرار شده و درخواست ارسال شده اما سرور connection رو ریست کرده

سمت سرور میبینیم که tcp handshake برقرار شده اما درخواست http از کلاینت دریافت نشده !

10/23
#فیلترنت
این نشون میده فیلترچی زمانی که header host رو بررسی میکنه و متوجه دامنه فیلترشده میشه response رو خودش دراپ میکنه !!

تست بعدی از ip سرور شخصی و دامنه عادی استفاده میکنیم تا ماجرا روشن تر بشه و مطمعن تر بشیم

11/23
#فیلترنت
با ip سرور شخصی و دامنه عادی امتحان میکنیم

میبینیم ارتباط برقرار شده و پاسخ هم دریافت شده
چون دامنه یا Host مورد نظر وجود نداره محتوای خاصی رو نشون نمیده اما ارتباط برقرار شده

طبق همین میتونیم اطمینان حاصل کنیم که connection قبلی توسط فیلترچی ریست شده !

12/23
#فیلترنت
البته گاهی رفتار ها متفاوته
مثلا اینجا ip توییتر و دامنه تلگرام رو استفاده میکنیم
گاهی connection ریست میشه و گاهی هم صفحه فیلترچی برگردونده میشه البته این مورد فقط برای دامنه تلگرام مشاهده شده

تلگرام علاوه بر دامنه ip سرورهاش هم بلاک شدن

13/23
#فیلترنت
فیلترینگ HTTPS
دیدیم که پروتکل HTTP امن نیست و قابل دستکاریه اما پروتکل HTTPS که رمزنگاری میشه چطور ؟
اول بهتره نگاهی به HTTPS بندازیم :
پروتکل HTTPS همون پروتکل HTTP هستش اما محتوای پکت یعنی header و... توسط SSL/TLS رمزنگاری میشه و بعد ارسال و دریافت میشه
14/23
#فیلترنت
پروتکل SSL/TLS برای امن کردن ارتباط بین کلاینت و سرور استفاده میشن و محتوای پکت HTTPS توسط SSL/TLS به صورت متقارن یا نامتقارن ( Asymmetric Symmetric) میتونن رمزنگاری بشن

15/23
#فیلترنت
پروتکل SSL/TLS علاوه بر رمزنگاری پکت ها
یه گواهی نامه یا Certificate رو از سرور مورد نظر درخواست میکنه و بعد بررسی و احرازهویت میکنه تا مطمعن بشه مقصد همون سایت مورد نظر هست یا خیر

16/23
#فیلترنت
پروتکل HTTPS مثل HTTP ابتدا tcp handshake رو انجام میده و بعد یه TLS/SSL handshake رو هم برقرار میکنه که بعد از tls handshake دیتا با رمزنگاری و امنیت ارسال و دریافت میشه

17/23
#فیلترنت
درسته پکت HTTPS توسط ssl/tls رمزنگاری میشن و قابل مشاهده نیست اما بازهم مواردی وجود داره که فیلترچی بر اساس اون ها تصمیم به سانسور میکنه:

گاهی تمام ارتباطات TLS رو مسدود میکنه ( موردی که همچنان هم وجود داره )
مسدود سازی به صورت random
بررسی SNI و سانسور ارتباط
18/23
#فیلترنت
بررسی server name indication (SNI)
مشخص میکنه که کلاینت قصد داره به کدوم Host متصل بشه

بخش sni تو ClientHello یعنی tls hanshake قرار داره , بعد از tcp handshake فیلترچی SNI رو بررسی میکنه اگر جز لیست فیلترشده ها باشه ارتباط مسدود میشه

19/23
#فیلترنت
اینجادرخواست HTTPS ارسال میکنیم و از ip گوگل و دامنه توییتر استفاده میکنیم

بعد از Client Hello میبینیم که connection ریست یا دراپ شده که از سمت خود فیلترچی انجام شده

درواقع SNI بررسی و بعد درخواست سانسور و مسدود شده
20/23
#فیلترنت
اینجادرخواست HTTPS ارسال میکنیم و اینبار از ip گوگل و دامنه عادی استفاده میکنیم

میبینیم ارتباط کاملا برقرار میشه
یه سری خطا به دلیل اینکه certificate با ip و دامنه همخونی نداره رخ داده اما در آخر ارتباط برقرار شده
21/23
#فیلترنت
قطع ارتباط TLS به طور کامل :
این اتفاق این چند ماه شدیدا در جریان بود و انجام میشد
نحوه سانسور به این شکل بود که فیلترچی TLS Handshake رو دستکاری میکرد و نکته اینجا بود که حتی برای سایت های داخلی هم ارتباط TLS handshake دستکاری میشد دلیلش رو هم....
22/23
#فیلترنت
توییت قبل بررسی و مشاهده کردیم که اینترنت ملی ( میلی ) هم حتی زیر نظر فیلترچیه و سانسور هم به صورت داخلی هم بین المللی انجام میشه

این موضوع رو بعدا به طور دقیق بررسی میکنیم

23/23
#فیلترنت

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Kiyan

Kiyan Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @elite_netbios

Jan 30
بررسی فیلترینگ در لایه شبکه :
این بخش , فیلترینگ و سانسور در برقراری ارتباط با سرور رو بررسی میکنیم
1/19

#اینترنت
#فیلترنت
از ابزار ping برای بررسی وضعیت دسترسی به سرور استفاده میکنیم این ابزار به طور پیشفرض از پروتکل ICMP برای برقراری و بررسی ارتباط استفاده میکنه , همچنین با پروتکل دیگه ای مثل tcp هم میشه درخواست ارسال کرد که جلوتر علت استفاده از tcp رو بیشتر متوجه میشیم
2/19
#اينترنت
#فیلترنت
قبلش نکته ای که باید یادمون بمونه اینه که بیشتر دامنه ها توسط فیلترچی خبیث جمهوری اسلامی فیلتر شدن
موقع تست از دامنه فیلترشده استفاده نکنیم که ip فیلترچی برگردونده و درخواست ها براش ارسال میشه که بی جوابم هست
3/19
#اينترنت
#فیلترنت
Read 18 tweets
Jan 21
رادار گیم شروع اینترنت طبقاتی هستش که به تازگی توسط وزیر ارتباطات جمهوری اسلامی هم معرفی شده سورس کد برنامه که تقریبا دزدیه ,, توی تست های اولیه هم به عنوان بد افزار شناسایی شده

به بقیه هم اطلاع رسانی کنید و جلوی استفاده از این برنامه رو بگیرید

#فیلترنت
#اینترنت
#مهسا_امینی
ج.ا سابقه درخشانی تو پخش بد افزار داره
عکس مربوط به روبیکا که مشخص شده بود داره از تلگرام کاربران جاسوسی میکنه

تا جایی که ممکنه از پیام رسان های داخلی استفاده نکنید

#مهسا_امینی
#فیلترنت Image
یکی از اهداف فیلترینگ این هستش که مردم از پیام رسان های داخلی استفاده کنن و این یعنی کنترل بیشتر مردم و همچنین جلوگیری از آزادی بیان

بارها با پروژه هایی مثل تلگرام طلایی و تلگرام ضدفیلتر و... که راه اندازی کردن سعی کردن جاسوسی کاربرا رو کنن که موفق هم بودن
#مهسا_امینی
#فیلترنت
Read 4 tweets
Jan 16
اینجا میخوایم نگاهی به سیستم فیلترینگ روی پروتکل DNS بندازیم

آدرس 3 تااز dns server های معروف که جلوتر قراره از این dns server ها برای تست استفاده کنیم رو قرار میدم :
1.1.1.1 cloudflare
8.8.8.8 google
9.9.9.9 quad9

1/11:
#فیلترنت
#اینترنت
ببینیم فیلترینگ DNS چطوری کار میکنه
فرض کنید dns query ارسال کردیم

اگر دامنه مورد نظر جز دامنه های فیلترشده هستش خود سانسورچی جوابو ارسال میکنه

اگر دامنه جز فیلترشده ها نیستش و عملا خطری برای جمهوری اسلامی نداره به سمت dns server اصلی هدایت میشه!

2/11

#فیلترنت
نکته اینجاست که فیلترچی کاری نداره که آیپی مورد نظرdns server هسا یا نه اگر query name شما جز لیست باشه آیپی فیلترچی برگردونده میشه یعنی همون 35-34-10-10

آیپی مورد نظر هم که به عنوان dns server تعریف شده اصلا dns server نیست و صرفا یک سرور خارج کشوره

3/11
#فیلترنت Image
Read 11 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(