Get Mystery Box with random crypto!

اخیرا در میان کامیونیتی ایرانیان شاهد همکاری خوبی برای گذر از | Filtershekanha فیلترشکن ها

اخیرا در میان کامیونیتی ایرانیان شاهد همکاری خوبی برای گذر از فیلترینگ ج.ا بودیم. چند روزیه که دور زدن فیلترینگ با استفاده از روش TLS Fragmentation ترند شده و افراد مختلف اون رو به زبان‌ها و شیوه های مختلف توسعه دادند. با دیدن کد اصلی ما هم تصمیم گرفتم این روش رو به شیوه خودم پیاده سازی و منتشر کنیم.

در کد اصلی که به زبان پایتون نوشته شده صرفاً اولین پکتی که ارسال میشه رو به عنوان ClientHello میشناسه و اقدام به فرگمنت کردنش میکنه. این موضوع بطور معمول درسته و TLS عموماً همینجوری رفتار میکنه، گرچه ممکنه حالت‌هایی پیش بیاد که این موضوع صدق نکنه. ضمن اینکه برای توسعه در آینده و پیاده‌سازی ایده‌های جدید لازمه که بتونیم مطمئن بشیم که ترافیک عبوری قطعاً پکت ClientHello هست.

در این کدی که براتون منتشر کردم علاوه بر اینکه مطمئن میشیم دیتا عبوری پکت ClientHello هست، چند نمونه مثال از نحوه آنالیز این هندشیک هم قرار دادم که برای توسعه آینده این کد قطعاً میتونه بکارتون بیاد. این سه مثال عبارتند از شیوه خواندن اکستنشن‌های SNI, ALPN و SupoportedVersions .

تمام این موارد با اجرای برنامه در کنسول هم براتون به نمایش در میاد که میتونید ازش برای دیباگ کردن استفاده کنید. این کد به زبان جاوا و با استفاده از Springboot توسعه داده شده و شما میتونید از همین کدها در داخل یک Foreground Service استفاده کنید و برنامه اندرویدی اون هم بسازید.

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

ضمنا تنظیمات برنامه با استفاده از فایل application.properties انجام میشه. فایل بیلد شده این برنامه هم در بخش releases برای دانلود موجوده.
برای توضیحات بیشتر به فایل README داخل ریپازیتوری مراجعه کنید.

https://github.com/filtershekanha/TLSFragmenter
@NarimanGharib
@Filtershekanha