Стабільны рэліз проксі-сервера Squid 5

Пасля трох гадоў распрацоўкі прадстаўлены стабільны рэліз проксі-сервера Squid 5.1, гатовы для выкарыстання ў працоўных сістэмах (выпускі 5.0.x мелі статут бэта-версій). Пасля надання галінцы 5.x статуту стабільнай, у ёй з гэтага часу будуць вырабляцца толькі выпраўленні ўразлівасцяў і праблем са стабільнасцю, таксама дапушчаецца занясенне невялікіх аптымізацый. Распрацоўка новых магчымасцяў будзе праводзіцца ў новай эксперыментальнай галінцы 6.0. Карыстачам мінулай стабільнай галіны 4.x рэкамендуецца спланаваць пераход на галінку 5.x.

Асноўныя навіны Squid 5:

  • У рэалізацыю пратакола ICAP (Internet Content Adaptation Protocol), выкарыстоўванага для інтэграцыі з вонкавымі сістэмамі праверкі кантэнту, дададзеная падтрымка механізму далучэння дадзеных (trailer), які дазваляе прымацаваць да адказу дадатковыя загалоўкі з метададзенымі, якія размяшчаюцца пасля цела паведамлення (напрыклад, можна перадаць кантрольную суму і дэталі аб выяўленых праблемах).
  • Пры перанакіраванні запытаў задзейнічаны алгарытм «Happy Eyeballs», які адразу выкарыстоўвае атрыманы IP-адрас, не чакаючы рэзалвінгу ўсіх патэнцыйна даступных мэтавых адрасоў IPv4 і IPv6. Замест уліку налады «dns_v4_first» для вызначэння парадку выкарыстання сямейства адрасоў IPv4 або IPv6 зараз улічваецца парадак адказу ў DNS: калі пры чаканні рэзалвінгу IP-адрасы першым паступае адказ DNS AAAA, то будзе выкарыстаны атрыманы адрас IPv6. Такім чынам, налада ўпадабанага сямейства адрасоў зараз выконваецца на ўзроўні міжсеткавага экрана, DNS або запуску з опцыяй "-disable-ipv6". Прапанаваная змена дазваляе паскорыць час усталёўкі TCP-злучэнняў і зменшыць уплыў на прадукцыйнасць затрымак пры рэзалвінгу ў DNS.
  • Для выкарыстання ў дырэктыве "external_acl" дададзены апрацоўшчык "ext_kerberos_sid_group_acl" для аўтэнтыфікацыі з праверкай груп у Active Directory пры дапамозе Kerberos. Для запыту імя групы выкарыстоўваецца ўтыліта ldapsearch, якая прадстаўляецца пакетам OpenLDAP.
  • Падтрымка фармату БД Berkeley DB абвешчана састарэлай з-за ліцэнзійных праблем. Галінка Berkeley DB 5.x ужо некалькі гадоў не суправаджаецца і застаецца з невыпраўленымі ўразлівасцямі, а перайсці на навейшыя выпускі не дазваляе змена ліцэнзіі на AGPLv3, патрабаванні якой распаўсюджваюцца і на прыкладанні, выкарыстоўвалыя BerkeleyDB у форме бібліятэкі — Squid пастаўляецца пад ліцэнзіяй GPLv2, а AGPL несумяшчальная з GPLv2. Замест Berkeley DB праект пераведзены на выкарыстанне СКБД TrivialDB, якая, у адрозненне ад Berkeley DB, аптымізавана для адначасовага паралельнага доступу да БД. Падтрымка Berkeley DB пакуль захавана, але ў апрацоўшчыках "ext_session_acl" і "ext_time_quota_acl" зараз рэкамендуецца выкарыстоўваць тып сховішчы "libtdb" замест "libdb".
  • Дададзена падтрымка HTTP-загалоўка CDN-Loop, вызначанага ў RFC 8586 і які дазваляе выяўляць зацыкліванні пры выкарыстанні сетак дастаўкі кантэнту (загаловак падае абарону ад сітуацый, калі запыт падчас перанакіраванняў паміж CDN па нейкіх чынніках вяртаецца зваротна ў зыходную CDN, утворачы бясконцае. ).
  • У механізм SSL-Bump, які дазваляе арганізаваць перахоп змесціва шыфраваных HTTPS-сеансаў, дададзеная падтрымка перанакіраванні падмененых (перазашыфраваных) HTTPS-запытаў праз іншыя проксі-серверы, паказаныя ў cache_peer, выкарыстоўваючы звычайны тунэль на базе метаду HTTP. бо Squid пакуль не можа перадаваць TLS усярэдзіне TLS). SSL-Bump дазваляе пры паступленні першага перахапляемага HTTPS-запыту ўсталяваць TLS-злучэнне з мэтавым серверам і атрымаць яго сертыфікат. Пасля гэтага Squid выкарыстае імя хаста з рэальнага атрыманага ад сервера сертыфіката і стварае фіктыўны сертыфікат, пры дапамозе якога імітуе запытаны сервер пры ўзаемадзеянні з кліентам, працягваючы пры гэтым выкарыстоўваць для атрымання дадзеных TLS-злучэнне, усталяванае з мэтавым серверам (каб падмена не прыводзіла да высновы папярэджанняў у браўзэрах на баку кліента патрабуецца дадаць у сховішча каранёвых сертыфікатаў свой сертыфікат, скарыстаны для генерацыі фіктыўных сертыфікатаў).
  • Дададзены дырэктывы mark_client_connection і mark_client_pack для прывязкі пазнак Netfilter (CONNMARK) да кліенцкіх TCP-злучэнняў або асобных пакетаў.

Следам па гарачых слядах апублікаваны выпускі Squid 5.2 і Squid 4.17 у якіх ухіленыя ўразлівасці:

  • CVE-2021-28116 – уцечка інфармацыі пры апрацоўцы спецыяльна аформленых паведамленняў WCCPv2. Уразлівасць дазваляе атакаваламу пашкодзіць спіс вядомых маршрутызатараў WCCP і перанакіраваць трафік кліентаў проксі-сервера на свой хост. Праблема выяўляецца толькі ў канфігурацыях з уключанай падтрымкай WCCPv2 і пры магчымасці ажыццяўлення спуфінгу IP-адрасы маршрутызатара.
  • CVE-2021-41611 — памылка пры праверцы TLS-сертыфікатаў, якая дазваляе атрымаць доступ з выкарыстаннем сертыфікатаў, якія не заслугоўваюць даверу.

Крыніца: opennet.ru

Дадаць каментар