TGViewer
CluvexStudio CluvexStudio @cluvexstudio · 16.9K subscribers
Post #335 9.43K
یه چیزی هست که تقریبا توی کانفیگ همتون هست ولی کمتر کسی میدونه دقیقا چیکار میکنه :))
توضیح میدم...
منظورم اینه:
flow: xtls-rprx-vision

طوری توضیح میدم که حتی مبتدیا هم کامل متوجه بشن <:

اول باید مشکلشو بفهمیم که اسمش TLS in TLS هست

وقتی با VLESS یا Trojan که روی TLS سوارن یه سایت HTTPS باز میکنید
مرورگرتون خودش با اون سایت یه TLS جدا میزنه
این TLS میره داخل تونل پروکسی که خودش TLS هست
یعنی یه TLS داریم داخل یه TLS دیگه :/

خب مشکلش چیه؟ همه چی که رمزنگاری شده :))

رمزنگاری محتوا رو قایم میکنه ولی شکل ترافیک رو نه
فیلترینگ نمیتونه بخونه داخل پکتا چیه ولی میبینه هر پکت چقدر بزرگه
از کدوم طرف اومده و با چه فاصله‌ ای

مثلا handshake تی ال اس یه ریتم ثابت داره:
کلاینت ClientHello میفرسته
سرور یه جواب چند کیلوبایتی میده (سرتیفیکیت و بقیه چیزا)
کلاینت یه پیام کوچیک Finished میفرسته و تازه دیتا شروع میشه :))

حالا توی TLS in TLS فیلترینگ چی میبینه؟
اول یه handshake عادی بین شما و سرور پروکسی
و درست بعدش توی همون اتصال دوباره همون ریتم handshake تکرار میشه 😁
یه اتصال HTTPS معمولی بعد از handshake مستقیم میره سراغ درخواست و جواب
دوبار پشت هم handshake نمیکنه
پس همین میشه یه امضای واضح...

این فقط تئوری نیستا تحقیق کردم:
سال ۲۰۲۴ یه تیم محقق توی کنفرانس USENIX Security نقش 'سانسورچی دلقک' رو بازی کردن و توی یه ISP با بیش از یه میلیون کاربر نشون دادن با همین handshake داخلی میشه پروکسیارو تشخیص داد
-------
خب Vision چیکار میکنه؟
دو تا کار:
1-- padding
اون چندتا پکت اول که پیامای handshake داخلی توشونه (ClientHello و ServerHello) رو با بایت تصادفی بزرگ تر میکنه که اندازه ‌ها اون ریتم آشنا رو نداشته باشن

2-- direct
(بخونید مهمه این قسمت)
دیتای سایتی که باز کردید خودش با TLS رمزنگاری شده...
ولی پروکسی یه بار دیگه رمزنگاریش میکنه
یعنی رو چیزی که خودش لاک بود یه قفل اضافه هم میزنیم :))

Vision
هدر رکوردای TLS داخلی رو میخونه (هدرا رمزنگاری نشدن)
همین که میبینه ترافیک داخلی TLS 1.3 هست و رکوردای رمزنگاری شدش شروع شد
به سمت مقابل خبر میده و از اون لحظه قفل بیرونی رو برمیداره
رکوردای TLS خود سایت همونجوری مستقیم روی اتصال میرن

نتیجه؟:
رکوردای TLS 1.3 از بیرون همه یه شکلن
پس از اون به بعد فیلترینگ یه جریان TLS میبینه نه دوتا
امنیتش هم اوکیه
دیتای سایت خودش با TLS 1.3 رمزنگاری شده
اطلاعات پروکسی مثل UUID و آدرس مقصد هم قبلش زیر قفل بیرونی رفتن

یه سود هم داره:
رمزنگاری دوبل حذف میشه و CPU کمتر مصرف میشه :))
روی لینوکس هم از splice کرنل استفاده میکنه
یعنی دیتا بدون اینکه وارد حافظه‌ Xray بشه مستقیم از یه سوکت میره تو سوکت بعدی.


چند تا نکته:
Vision
فقط با VLESS کار میکنه و دو حالت داره اینا هستن:

حالت اول: روی TCP با TLS یا REALITY
اگه ترافیک داخلی TLS 1.3 باشه direct کامل و splice انجام میشه

حالت دوم: با VLESS Encryption جدید
محدودیت ترنسپورت نداره
اگه TCP باشه
باز splice میکنه اگه نه فقط از رمزنگاری دوبل خلاص میشید

[ پشت CDN اون یکی شدن دو TLS اتفاق نمیفته چون سی دی ان وسط راه TLS رو باز میکنه. ]

Vision
پیشفرض UDP پورت 443 یعنی QUIC رو رد میکنه که مرورگر برگرده روی HTTPS معمولی

یه نکته flow:
باید هم سمت سرور ست بشه هم کلاینت.
و
"ورژن های جدید Xray (مثلا 26.1.18) اگه VLESS رو بدون flow بزنید توی لاگ اخطار deprecated میدن"

البته Vision جادو نیست :/
چون padding فقط پکتا رو بزرگ تر میکنه ولی تعداد رفت و برگشتای اول اتصال رو نمیتونه کم کنه
همون مقاله هم گفته padding تصادفی به تنهایی محدودیت داره

امیدوارم مفید بوده باشه...
  • ❤ 292
  • 🔥 25
  • 👍 21
  • ❤‍🔥 9
More from @cluvexstudio
  1. Sep 29, 2026پروژه‌ی Aether رو با کلی زحمت و زمان ساختم. و وارپ اصلا در حالت عادی متصل نمیشه ولی با نوی…
  2. Sep 26, 2026یکی از ممبرای عزیز، اینو ساخته برام با کلاد. عالی شده. ممنونم :))
  3. Sep 25, 2026🍷درود به همه رفقا... معرفی دو اپلیکیشن خوب برای استفاده خواهشا این بحث بروز بودن اپلیکیشن…
  4. Sep 25, 2026این مشکل روی بعضی از اپراتور ها بوجود اومده. راه‌حل زیاد داره. بزودی فیکسش میکنم.
  5. Sep 24, 2026دسکتاپ بزودی...
  6. Sep 24, 2026بازم میگم مصرف زیاد باتری و داغ شدن بیش از حد کاملا توی این آپدیت رفع شده! آپدیت 24 Septem…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →