شش آسیبپذیری در بستهی Dnsmasq شناسایی شد که ترکیبی از یک تحلیلگر DNS ذخیرهسازی، یک سرور DHCP، یک سرویس اعلام مسیر IPv6 و یک سیستم بوت شبکه است. این آسیبپذیریها امکان اجرای کد ریشه، تغییر مسیر دامنه، کشف حافظهی پردازش و از کار افتادن سرویس را فراهم میکنند. این مشکلات در dnsmasq 2.92rel2 برطرف شدهاند. رفع این مشکلات به صورت وصله نیز در دسترس است.
مسائل شناسایی شده:
- CVE-2026-4892 یک سرریز بافر در پیادهسازی DHCPv6 است که به مهاجمی با دسترسی به شبکه محلی اجازه میدهد تا با ارسال یک بسته DHCPv6 دستکاریشده خاص، کدی را با امتیازات ریشه اجرا کند. این سرریز به این دلیل رخ میدهد که CLID DHCPv6 بدون در نظر گرفتن اینکه بسته دادهها را در نمادگذاری هگزادسیمال ذخیره میکند، در بافر نوشته میشود، که از سه بایت "%xx" برای هر بایت CLID واقعی استفاده میکند (برای مثال، ذخیره یک CLID 1000 بایتی منجر به نوشته شدن 3000 بایت میشود).
- CVE-2026-2291 - یک سرریز بافر در تابع extract_name() به مهاجم اجازه میدهد تا رکوردهای جعلی را در حافظه پنهان DNS وارد کند و یک دامنه را به یک آدرس IP متفاوت هدایت کند. این سرریز به دلیل عدم موفقیت تخصیص بافر در escape کردن صحیح کاراکترهای خاص در نمایش داخلی یک نام دامنه در dnsmasq رخ داده است.
- CVE-2026-4893 یک نشت اطلاعات است که امکان دور زدن تأیید DNS را با ارسال یک بسته DNS دستکاریشده خاص حاوی اطلاعات زیرشبکه کلاینت (RFC 7871) فراهم میکند. این آسیبپذیری میتواند برای تغییر مسیر پاسخهای DNS و هدایت کاربران به دامنه مهاجم استفاده شود. این آسیبپذیری با ارسال طول رکورد OPT به تابع check_source() به جای طول بسته ایجاد میشود و باعث میشود که این تابع همیشه نتیجه تأیید موفقیتآمیز را بازگرداند.
- CVE-2026-4891 - یک آسیبپذیری خواندن خارج از محدوده در اعتبارسنجی DNSSEC که منجر به نشت حافظه در پاسخ هنگام پردازش یک پرسوجوی DNS دستکاریشدهی خاص میشود.
- CVE-2026-4890 - یک حلقه اعتبارسنجی DNSSEC میتواند منجر به انکار سرویس از طریق یک بسته DNS دستکاریشده خاص شود.
- CVE-2026-5172 - یک خطای خواندن خارج از محدوده در تابع extract_addresses() منجر به خرابی هنگام پردازش پاسخهای DNS دستکاریشدهی خاص میشود.
وضعیت رفع آسیبپذیری برای توزیعها را میتوان در صفحات زیر ارزیابی کرد (اگر صفحهای در دسترس نیست، توسعهدهندگان توزیع هنوز بررسی مشکل را آغاز نکردهاند): دبیان، اوبونتو، سوزه، RHEL، جنتو، آرچ، فدورا، OpenWRT و FreeBSD. پروژه Dnsmasq در پلتفرم اندروید و توزیعهای تخصصی مانند OpenWrt و DD-WRT و همچنین در میانافزار روترهای بیسیم بسیاری از تولیدکنندگان استفاده میشود. در توزیعهای استاندارد، Dnsmasq را میتوان هنگام استفاده از libvirt برای ارائه سرویس DNS در ماشینهای مجازی نصب کرد یا در پیکربندی NetworkManager فعال کرد.
منبع: opennet.ru
