DNSCrypt нь 24 цагийн хүчинтэй байх хугацааг нэвтрүүлснээр хугацаа нь дууссан гэрчилгээний асуудлыг хэрхэн шийдсэн бэ

DNSCrypt нь 24 цагийн хүчинтэй байх хугацааг нэвтрүүлснээр хугацаа нь дууссан гэрчилгээний асуудлыг хэрхэн шийдсэн бэ

Өмнө нь гэрчилгээг гараар сунгах шаардлагатай байсан тул хугацаа нь ихэвчлэн дуусдаг байсан. Хүмүүс үүнийг хийхээ мартсан. Let's Encrypt болон автоматаар шинэчлэх горим гарч ирснээр асуудлыг шийдэх ёстой юм шиг байна. Гэхдээ саяхан Firefox түүх энэ нь үнэн хэрэгтээ хамааралтай хэвээр байгааг харуулж байна. Харамсалтай нь гэрчилгээний хугацаа дууссаар байна.

Хэрэв та түүхийг орхигдуулсан бол 4 оны 2019-р сарын XNUMX-ний шөнө дунд бараг бүх Firefox өргөтгөлүүд гэнэт ажиллахаа больсон.

Энэ нь Mozilla-аас болж их хэмжээний бүтэлгүйтэл гарсан гэрчилгээний хугацаа дууссан, өргөтгөлүүдэд гарын үсэг зурахад ашигласан. Тиймээс тэдгээрийг "хүчингүй" гэж тэмдэглэсэн бөгөөд баталгаажуулаагүй (техникийн дэлгэрэнгүй мэдээлэл). Хэлэлцүүлэг дээр үүнийг шийдэхийн тулд өргөтгөлийн гарын үсгийн баталгаажуулалтыг идэвхгүй болгохыг зөвлөж байна тухай: config эсвэл системийн цагийг өөрчлөх.

Mozilla Firefox 66.0.4 нөхөөсийг хурдан гаргасан бөгөөд энэ нь хүчингүй гэрчилгээний асуудлыг шийдэж, бүх өргөтгөлүүд хэвийн байдалдаа эргэн орсон. Хөгжүүлэгчид үүнийг суулгахыг зөвлөж байна хэрэглэж болохгүй гарын үсгийн баталгаажуулалтыг тойрч гарах арга зам байхгүй, учир нь тэдгээр нь засвартай зөрчилдөж болзошгүй.

Гэсэн хэдий ч гэрчилгээний хугацаа дуусах нь өнөөдөр тулгамдсан асуудал хэвээр байгааг энэ түүх дахин харуулж байна.

Үүнтэй холбогдуулан протокол боловсруулагчид энэ даалгаврыг хэрхэн даван туулсан талаар нэлээд анхны арга замыг харах нь сонирхолтой юм DNSCrypt. Тэдний шийдлийг хоёр хэсэгт хувааж болно. Нэгдүгээрт, эдгээр нь богино хугацааны гэрчилгээ юм. Хоёрдугаарт, урт хугацааны хугацаа дууссаны талаар хэрэглэгчдэд анхааруулж байна.

DNSCrypt

DNSCrypt нь 24 цагийн хүчинтэй байх хугацааг нэвтрүүлснээр хугацаа нь дууссан гэрчилгээний асуудлыг хэрхэн шийдсэн бэDNSCrypt бол DNS траффикийн шифрлэлтийн протокол юм. Энэ нь DNS харилцаа холбоог саатуулах болон MiTM-ээс хамгаалахаас гадна DNS асуулгын түвшинд блоклохыг тойрч гарах боломжийг олгодог.

Протокол нь үйлчлүүлэгч болон серверийн хоорондох DNS траффикийг UDP болон TCP тээврийн протоколууд дээр ажилладаг криптографийн бүтцэд оруулдаг. Үүнийг ашиглахын тулд үйлчлүүлэгч болон DNS шийдүүлэгч хоёулаа DNSCrypt-ийг дэмжих ёстой. Жишээлбэл, 2016 оны 152-р сараас эхлэн DNS серверүүд болон Yandex хөтөч дээр идэвхжсэн. Google болон Cloudflare зэрэг хэд хэдэн үйлчилгээ үзүүлэгчид дэмжлэг үзүүлэхээ зарласан. Харамсалтай нь тэдгээр нь тийм ч олон биш (XNUMX нийтийн DNS серверийг албан ёсны вэбсайт дээр жагсаасан). Гэхдээ хөтөлбөр dnscrypt-прокси Linux, Windows болон MacOS клиентүүд дээр гараар суулгаж болно. Мөн түүнчлэн серверийн хэрэгжилт.

DNSCrypt нь 24 цагийн хүчинтэй байх хугацааг нэвтрүүлснээр хугацаа нь дууссан гэрчилгээний асуудлыг хэрхэн шийдсэн бэ

DNSCrypt хэрхэн ажилладаг вэ? Товчхондоо, үйлчлүүлэгч сонгосон үйлчилгээ үзүүлэгчийнхээ нийтийн түлхүүрийг авч, гэрчилгээгээ баталгаажуулахад ашигладаг. Сессийн богино хугацааны нийтийн түлхүүрүүд болон шифрийн багц танигч аль хэдийн тэнд байна. Үйлчлүүлэгчид хүсэлт бүрт шинэ түлхүүр үүсгэхийг, харин серверүүдийг түлхүүрээ солихыг зөвлөж байна 24 цаг тутамд. Түлхүүр солилцохдоо X25519 алгоритмыг гарын үсэг зурахад - EdDSA, блок шифрлэхэд - XSalsa20-Poly1305 эсвэл XChaCha20-Poly1305 ашигладаг.

Протокол хөгжүүлэгчдийн нэг Фрэнк Денис Тэр бичдэг24 цаг тутамд автоматаар солих нь хугацаа нь дууссан гэрчилгээний асуудлыг шийдсэн. Зарчмын хувьд, dnscrypt-proxy лавлагааны үйлчлүүлэгч нь ямар ч хүчинтэй хугацаатай гэрчилгээг хүлээн авдаг боловч 24 цагаас илүү хугацаанд хүчинтэй байвал "Энэ серверийн dnscrypt-proxy түлхүүрийн хугацаа хэт урт байна" гэсэн анхааруулга өгдөг. Үүний зэрэгцээ түлхүүрүүдийг (болон гэрчилгээг) хурдан сольсон Docker дүрс гарсан.

Нэгдүгээрт, энэ нь аюулгүй байдлын хувьд маш ашигтай: хэрэв сервер эвдэрсэн эсвэл түлхүүр алдагдсан бол өчигдрийн траффикийг тайлах боломжгүй. Түлхүүр нь аль хэдийн өөрчлөгдсөн. Энэ нь үйлчилгээ үзүүлэгчдийг бүх урсгал, тэр дундаа шифрлэгдсэн урсгалыг хадгалахыг шаарддаг Яровая хуулийг хэрэгжүүлэхэд хүндрэл учруулж болзошгүй юм. Үүний үр дагавар нь шаардлагатай бол сайтаас түлхүүр хүсэх замаар дараа нь кодыг тайлж болно. Гэхдээ энэ тохиолдолд сайт нь үүнийг өгөх боломжгүй, учир нь энэ нь богино хугацааны түлхүүрүүдийг ашиглаж, хуучин түлхүүрүүдийг устгадаг.

Гэхдээ хамгийн чухал нь богино хугацааны түлхүүрүүд нь серверүүдийг эхний өдрөөс автоматжуулалтыг бий болгоход хүргэдэг гэж Денис бичжээ. Хэрэв сервер сүлжээнд холбогдож, түлхүүр өөрчлөлтийн скриптүүд тохируулагдаагүй эсвэл ажиллахгүй бол энэ нь шууд илрэх болно.

Автоматжуулалт хэдэн жил тутам түлхүүрээ солих үед үүнд найдах боломжгүй бөгөөд хүмүүс гэрчилгээний хугацаа дуусахыг мартаж болно. Хэрэв та түлхүүрээ өдөр бүр сольж байвал энэ нь шууд илрэх болно.

Үүний зэрэгцээ, хэрэв автоматжуулалтыг хэвийн тохируулсан бол товчлуурыг хэр олон удаа солих нь хамаагүй: жил бүр, улирал бүр эсвэл өдөрт гурван удаа. Хэрэв бүх зүйл 24 цагаас илүү ажиллавал үүрд ажиллах болно гэж Фрэнк Денис бичжээ. Түүний хэлснээр, протоколын хоёр дахь хувилбарт өдөр бүр товчлуурыг эргүүлэх зөвлөмж, үүнийг хэрэгжүүлдэг бэлэн Docker дүрс нь хугацаа нь дууссан сертификаттай серверүүдийн тоог үр дүнтэй бууруулж, аюулгүй байдлыг нэгэн зэрэг сайжруулсан.

Гэсэн хэдий ч зарим үйлчилгээ үзүүлэгчид техникийн зарим шалтгааны улмаас гэрчилгээний хүчинтэй байх хугацааг 24 цагаас илүү байхаар шийдсэн хэвээр байна. Энэ асуудлыг dnscrypt-proxy-д хэд хэдэн мөр код оруулснаар үндсэндээ шийдэгдсэн: хэрэглэгчид гэрчилгээний хугацаа дуусахаас 30 хоногийн өмнө мэдээллийн анхааруулга, хугацаа дуусахаас 7 хоногийн өмнө ноцтой байдлын өндөр түвшний өөр мессеж, хэрэв гэрчилгээ үлдсэн бол чухал мессеж хүлээн авдаг. хүчинтэй байх.24 цагаас бага. Энэ нь зөвхөн эхэндээ урт хугацааны хүчинтэй байх гэрчилгээнд хамаарна.

Эдгээр мессежүүд нь хэрэглэгчдэд хэтэрхий оройтохоос өмнө сертификатын хугацаа дуусах гэж буйг DNS операторуудад мэдэгдэх боломжийг олгодог.

Хэрэв Firefox-ийн бүх хэрэглэгчид ийм мессеж хүлээн авбал хэн нэгэн хөгжүүлэгчдэд мэдэгдэх бөгөөд тэд гэрчилгээний хугацаа дуусахыг зөвшөөрөхгүй байж магадгүй юм. "Сүүлийн хоёр, гурван жилийн хугацаанд гэрчилгээний хугацаа нь дууссан нийтийн DNS серверүүдийн жагсаалтад нэг DNSCrypt сервер байсныг би санахгүй байна" гэж Фрэнк Денис бичжээ. Ямар ч байсан өргөтгөлүүдийг сануулгагүйгээр идэвхгүй болгосноос эхлээд хэрэглэгчдэд анхааруулах нь дээр байх.

DNSCrypt нь 24 цагийн хүчинтэй байх хугацааг нэвтрүүлснээр хугацаа нь дууссан гэрчилгээний асуудлыг хэрхэн шийдсэн бэ


Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх