TLS 1.3 لا هم د سرور نوم په روښانه متن لېږي
TLS 1.3 لاس ورکول کوډ کوي خو SNI نه۔ ClientHello ولولئ، ریښتینی ECH منل وګورئ او ولیکئ چې څارونکی لا هم څه لیدلی شي۔
د یو اورېدونکي TLS 1.3 ته لوړول بدلوي چې یو څارونکی څه لوستلی شي، خو هغومره نه لکه څنګه چې د نسخې شمېره اشاره کوي۔ ClientHello لا هم د هر ډول کوډ کولو تر خبرو اترو مخکې سفر کوي، او په عادي اړیکه کې غوښتل شوی سرور نوم هلته په روښانه متن کې دی۔ Encrypted Client Hello هغه میکانیزم دی چې پټوي یې، او دا د خپلو شرطونو سره جلا ځای پرځای کول دي۔ تر دې چې د دواړو چلندونو یو فرض کوونکې تګلاره ولیکئ، دا څلور ګامه ترسره کړئ۔
لاس ورکول په رېښتیا څه ښکاره کوي
TLS 1.3 د سرور تصدیقلیک او د ServerHello وروسته راتلونکي ډېر لاس ورکول کوډ کوي۔ هر هغه څه چې کړونکی لومړی لېږي د دې ساتنې بهر دي، ځکه چې کیلي لا نه شته۔ د سرور نوم اشاره د همدې لومړي الوتنې برخه ده، نو یو غیر فعال څارونکی پرته له دې چې څه مات کړي لا هم لوستلی شي۔
ECH تشریح، RFC 9849, دا د همکار سرور لپاره د داخلي ClientHello په کوډ کولو بدلوي۔ بهرنی لاس ورکول پاتې کېږي او یو عام نوم لري چې شبکه یې لیدلی شي، نو ځای پرځای کول لا هم بهرنۍ هویت ته اړتیا لري چې د منځګړو لپاره معنا ولري۔ هغه بهرنی نوم هغه برخه ده چې خلک یې له لاسه ورکوي کله چې تمه لري اړیکه بې نومه شي۔ دا د پوښ نوم دی، نه پټ نوم، او باید لکه هر بل حل او تصدیق شي۔
له دې ټولو څخه هیڅ هم د رسولو لاره نه پټوي۔ د سرچینې او منزل پتې، پورټونه، د بستې اندازې او وخت د لیدلو وړ پاتې کېږي، او دا ډېری وخت د نوم په پرتله ډېر څه وايي چې څوک خبرې کوي۔ د نومونو حل او د غوښتنلیک کچې اړیکې بله طبقه ده، هر یو خپل لیدلوري لري۔
د فرض کولو پرځای ClientHello ولولئ
په ServerHello کې نسخه تاسو ته نه وايي چې کړونکي څه لېږلي۔ لومړۍ الوتنه مستقیم وګورئ، له هغه موقعیت چې هغه څارونکی استازیتوب کوي چې تاسو یې پروا لرئ۔
openssl s_client -connect app.plant.example:443 -servername app.plant.example -tls1_3 </dev/null> 2>/dev/null | head -20 sudo tcpdump -ni eth0 -c 40 'tcp port 443' -w /tmp/tls.pcap tshark -r /tmp/tls.pcap -Y 'tls.handshake.extensions_server_name' -T fields -e tls.handshake.extensions_server_name
لومړی حکم یو لاس ورکول کوي او د خبرو اترو شوې پیرامیټرې ښيي، په شمول د پروتوکول نسخه او هغه نوم چې تاسو غوښتی۔ دویم د یوې ریښتینې اړیکې لومړنۍ بستې نیسي، او درېیم له هغې نیولې څخه SNI ساحه راوباسي۔ که ساحه ډکه وي، هغه څارونکی چې تاسو نقل کړی لوستلی شي۔
کله چې دواړه سره سمون نه لري، د کړونکي په خوا او په لاره کې جلا جلا ونیسئ، ځکه چې ځایي نیول کېدای شي هغه نوم ښکاره کړي چې middlebox وروسته بیا لیکي یا غورځوي۔ له هغه کوربه هم ونیسئ چې پخپله TLS نه پای ته رسوي، ځکه چې پای ته رسوونکی پراکسي روښانه متن د خپل جوړښت له مخې ویني او د شبکې د لیدلو په اړه هیڅ نه ثابتوي۔
ECH غځېدنه د ادعا په توګه وګورئ، نه د ثبوت
په ClientHello کې ECH غځېدنه لیدل دا نه معنی لري چې اړیکې ECH کارولی۔ کړونکي GREASE ECH لېږي کله چې د کارولو وړ ترتیب نه لري، بالکل د دې لپاره چې د دوی لاس ورکول یو شان ښکاره شي۔ غځېدنه موجوده ده، داخلي hello چاره ده، او ریښتینی نوم لا هم لوستل کېدونکی دی۔
dig +short HTTPS app.plant.example openssl s_client -connect app.plant.example:443 -tls1_3 -status </dev/null> 2>/dev/null | grep -i -E 'ech|status_request'
لومړی حکم ښيي چې آیا سرچینه د ECH ترتیب پیرامیټر سره HTTPS سرچینه ریکارډ خپروي، او کړونکي کیلي همداسې زده کوي۔ دویم د لاس ورکولو د حالت معلومات لټوي، که څه هم د کړونکي د بریا پیغام قوي ثبوت دی۔ منل هغه څه دي چې اهمیت لري: هغه سرور چې سمه کیلي نه لري داخلي hello نشي خلاصولی، او اړیکه بیرته ځي۔
کړونکی هم وګورئ، ځکه چې د براوزرونو ملاتړ او ترتیب د نسخې او پلیټ فارم له مخې توپیر لري۔ هغه تګلاره چې پر „نوي براوزرونه ECH کاروي“ ولاړه وي د یوې ډلې په اړه اټکل دی، ستاسو د ډلې په اړه حقیقت نه۔ هغه نسخې ولیکئ چې واقعاً نښلېږي، بیا له هرې یوه ازموینه وکړئ۔ کېدای شي هغه پاڼه چې له اوسني ډیسکټاپ براوزر کار کوي په همدې شبکه کې له زوړ کړونکي څخه هیڅ ونه پټوي۔
د څارونکي حد په تګلاره کې ولیکئ
مخکې له دې چې پرېکړه وکړئ یو کنټرول پر څه تکیه کولی شي، ووایاست چې څارونکی چېرته ناست دی او په هغه نقطه کې څه لیدل کېږي۔ د براوزر اړیکه له یوې وېبپاڼې سره، بهرنی VPN انتقال او د TLS پای ته رسوونکی پراکسي هر یو د حقایقو بېله مجموعه ښکاره کوي، او د یو موقعیت لپاره لیکل شوی قاعده په ندرت سره بل ته پاک لېږدول کېږي۔
که یو کنټرول د SNI لوستلو پورې تړلی وي، ازموینه وکړئ چې ځای پرځای شوي کړونکي کله چې ECH شته او کله چې نه وي څنګه چلند کوي۔ بیا د مطابقت پایله ولیکئ، ځکه چې هغه فلټر چې په خاموشۍ مطابقت بندوي له هغه څخه بدتر دی چې هېڅکله ځای پرځای نه شو۔
په پای کې، ناڅرګندتیا په ریکارډ کې وساتئ۔ د زوړ نړیوال ادعا نوي ته بدلول هماغه تشه د بل پروتوکول تر نوم لاندې پرېږدي، او بل بیاکتنه کوونکی به هماغسې کلک باور وکړي۔