Isang bug sa BIND 9.16.17 na nagiging sanhi ng maling paghawak ng W character sa mga query sa DNS

Na-publish na ang mga corrective update para sa stable BIND 9.16.18 branch at sa in-development experimental 9.17.15 branch, na nag-aayos ng isang seryosong bug na lumitaw sa BIND 9.16.17 at 9.17.14 na mga release na na-publish noong nakaraang linggo (ang araw pagkatapos nito release, ang mga developer ay nagbabala tungkol sa problema at inirerekumenda na huwag i-install ang mga bersyon 9.16.17 at 9.17.14).

Sa bersyon 9.16.17 at 9.17.14, ang "w" na character ay tinanggal mula sa lowercase at uppercase na character mapping table (maptoupper at maptolower), na nagresulta sa pagpapalit ng "W" at "w" na mga character sa mga domain name na may ang sequence na "\000" "at nagbabalik ng maling resulta kapag nagpoproseso ng mga kahilingan gamit ang mask. Halimbawa, kung ang DNS zone ay naglalaman ng record na β€œ*.sub.test.local. 1 Isang 127.0.0.1β€³ na kahilingan para sa pangalang UVW.sub.test.local" ay gumawa ng tugon na nagbalik ng pangalang "uv/000.sub.test.local" sa halip na "uvw.sub.test.local".

Bilang karagdagan, nabanggit ang mga problema sa pagpapalit ng "w" na character ng "\000" sa panahon ng mga dynamic na pag-update ng zone kung ang kaso ng "w" na character sa kahilingan ay naiiba sa kaso sa DNS zone. Halimbawa, kung may ipinadalang update para sa "foo.ww.example." noong may record na "WW.example." sa zone, naproseso ito bilang "foo.\000\000.example.". Ang mga problema sa pagpapalit ng character ay maaari ding mangyari kapag nagsasagawa ng mga paglilipat ng zone mula sa pangunahin patungo sa pangalawang DNS server.

Ang paglalathala ng update 9.16.18 ay naantala dahil sa pagkakakilanlan ng dalawa pang error na nanatiling hindi nalutas sa mga bersyon 9.16.18 at 9.17.15. Ang mga error ay nagreresulta sa mga deadlock sa panahon ng pagsisimula at nangyayari sa mga configuration kung saan ginagamit ng dnssec-policy ang parehong mga zone na nasa iba't ibang view. Ang mga user na may ganitong mga setting ay pinapayuhan na mag-downgrade sa BIND na bersyon 9.16.16.

Pinagmulan: opennet.ru

Magdagdag ng komento