یک آسیبپذیری امنیتی در نسخههای پیش از 2.99044 از ماژول Net::Whois::Raw برای زبان Perl شناسایی شده است. این مشکل در ابزار خط فرمان pwhois مشاهده شده که برای استعلام اطلاعات WHOIS از دامنهها استفاده میشود.
جزئیات فنی نقص
مشکل اصلی در نحوه مدیریت نامهای دامنه یونیکد (Unicode) است. ابزار pwhois هر برچسب (Label) غیر ASCII را مستقیماً با استفاده از Net::IDN::Punycode کدگذاری کرده و پیشوند xn-- را به آن اضافه میکند. با این حال، این فرآیند دارای نقصهای زیر است:
- عدم رعایت استانداردهای IDNA: این ابزار مراحل حیاتی نگاشت (Mapping) و نرمالسازی (Normalization) مطابق با استانداردهای IDNA را نادیده میگیرد.
- خطای کدگذاری: به جز حروف کوچک انگلیسی و سیریلیک، سایر حروف بزرگ یا کاراکترهایی که در فرم
NFCنیستند، به A-label متفاوتی نسبت به فرم استاندارد IDNA تبدیل میشوند.
تأثیر عملیاتی
در نتیجه این نقص، زمانی که یک کاربر سعی در استعلام یک دامنه یونیکد خاص دارد، ابزار pwhois درخواست خود را برای دامنه اشتباهی ارسال میکند. این موضوع میتواند منجر به دریافت اطلاعات نادرست یا عدم دسترسی به دادههای صحیح در مورد مالکیت دامنه شود.
راهکار رفع مشکل
به کاربران توصیه میشود که ماژول Net::Whois::Raw را به نسخه 2.99044 یا نسخههای جدیدتر بهروزرسانی کنند تا این باگ در فرآیند تبدیل Punycode برطرف شود.