چکیده

آسیب‌پذیری بحرانی افزایش سطح دسترسی (Privilege Escalation) در FreeIPA نسخه‌های پیش از 4.12.4 شناسایی شده است که تمامی توزیع‌های RHEL را تحت تأثیر قرار می‌دهد. این ضعف به‌دلیل عدم اعتبارسنجی برای یکتا بودن صفت krbCanonicalName، یعنی نام اصلی یا canonical حساب مدیر(admin) رخ می‌دهد. در نتیجه، مهاجمی که کنترل یک حساب میزبان (host) را در اختیار دارد، می‌تواند سرویسی با همان نام اصلی admin@REALM ایجاد کرده و با دریافت تیکت Kerberos در نقش مدیر دامنه، به دسترسی کامل بر دامنه و داده‌های حساس دست یابد.

توضیحات

آسیب‌پذیری CVE-2025-4404، یک ضعف افزایش سطح دسترسی از میزبان به مدیر دامنه در FreeIPA است که به دلیل جزئی نگری ناکافی در کنترل دسترسی رخ می دهد و مطابق با CWE-1220 طبقه‌بندی می‌شود. FreeIPA یک سامانه متن‌باز مدیریت یکپارچه هویت، احراز هویت و سیاست‌ها است که از پروتکل Kerberos (پروتکل احراز هویت توزیع‌شده مبتنی بر تیکت) و LDAP (سرویس دایرکتوری) برای مدیریت کاربران و میزبان‌ها در دامنه‌های لینوکسی استفاده می‌کند.

در حالت پیش‌فرض، FreeIPA صحت و یکتا بودن صفت krbCanonicalName را برای حساب مدیر بررسی نمی‌کند. در نتیجه، مهاجم با دسترسی به یک حساب میزبان (host principal) ثبت‌شده در دامنه که معمولاً از طریق فایل keytab سیستم به‌دست می‌آید، می‌تواند یک سرویس جدید در دایرکتوری LDAP ایجاد کند که مقدار krbCanonicalName آن دقیقاً برابر با admin@REALM باشد. پس از این مرحله، با درخواست تیکت سرویس حاوی PAC (گواهی ویژگی های دسترسی که شامل اطلاعات SID و گروه‌ها است)، KDC (مرکز صدور تیکت Kerberos) تیکت معتبر با اعتبار مدیر دامنه صادر می‌کند.

بهره‌برداری از این نقص به‌سادگی قابل خودکارسازی است؛ مهاجم می‌تواند با استفاده از اسکریپت‌های ساده یا ابزارهایی مانند ldapadd و ipa-getkeytab از راه دور و بدون نیاز به تعامل کاربر، تنها با داشتن دسترسی میزبان (host account) یک ورودی جدید در مسیر cn=services,cn=accounts ایجاد کرده و krbCanonicalName را به admin@REALM تنظیم نماید. سپس با استفاده از kinit تیکت سرویس را دریافت می‌کند. این تیکت به مهاجم اجازه می‌دهد تا عملیات مدیریتی دامنه مانند احراز هویت به‌عنوان مدیر، اجرای دستورات مدیریتی مانند ldapwhoami، تغییر سیاست‌ها، ایجاد حساب‌های با دسترسی بالا، استخراج اعتبارنامه‌ها و در نهایت خروجِ غیرمجاز داده‌های حساس از محیط را انجام دهد.

کد اثبات مفهومی (PoC) عمومی منتشر شده که دقیقاً این سناریو را در محیط تست شبیه‌سازی می‌کند؛ ابتدا احراز هویت با keytab میزبان انجام می‌شود، سپس با ldapadd سرویس مخرب ایجاد می‌گردد، keytab جدید دریافت شده و در نهایت با kinit تیکت حاوی اعتبار مدیر صادر می‌شود. پیامدهای این آسیب‌پذیری شامل نقض کامل محرمانگی، یکپارچگی و دسترس‌پذیری در کل دامنه است، زیرا مهاجم با نقش admin@REALM قادر به کنترل گسترده سرورها و منابع متصل به دامنه خواهد بود. این ضعف با به‌روزرسانی FreeIPA به نسخه‌های 4.12.4 و بالاتر در RHEL پچ شده است.

CVSS

Score Severity Version Vector String
9.1 CRITICAL 3.1 CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H

لیست محصولات آسیب پذیر

Versions Product
affected from 0 before 4.12.4 FreeIPA / IDM (RHEL idm packages)

لیست محصولات بروز شده

Versions Product
4.12.4 FreeIPA / IDM (RHEL idm packages)
unaffected from 0:4.12.2-15.el10_0.1 Red Hat Enterprise Linux 10
unaffected from 0:4.6.8-5.el7_9.18 Red Hat Enterprise Linux 7 Extended Lifecycle Support
unaffected from 8100020250603150652.143e9e98 Red Hat Enterprise Linux 8
unaffected from 8100020250603134209.823393f5 Red Hat Enterprise Linux 8
unaffected from 8020020250609031831.50ea30f9 Red Hat Enterprise Linux 8.2 Advanced Update Support
unaffected from 8020020250609030144.792f4060 Red Hat Enterprise Linux 8.2 Advanced Update Support
unaffected from 8040020250609101903.f153676a Red Hat Enterprise Linux 8.4 Advanced Mission Critical Update Support
unaffected from 8040020250609095221.5b01ab7e Red Hat Enterprise Linux 8.4 Advanced Mission Critical Update Support
unaffected from 8060020250606060927.c1533a64 Red Hat Enterprise Linux 8.6 Advanced Mission Critical Update Support
unaffected from 8060020250606060504.ada582f1 Red Hat Enterprise Linux 8.6 Advanced Mission Critical Update Support
unaffected from 8060020250606060927.c1533a64 Red Hat Enterprise Linux 8.6 Telecommunications Update Service
unaffected from 8060020250606060504.ada582f1 Red Hat Enterprise Linux 8.6 Telecommunications Update Service
unaffected from 8060020250606060927.c1533a64 Red Hat Enterprise Linux 8.6 Update Services for SAP Solutions
unaffected from 8060020250606060504.ada582f1 Red Hat Enterprise Linux 8.6 Update Services for SAP Solutions
unaffected from 8080020250604195510.e581a9e4 Red Hat Enterprise Linux 8.8 Telecommunications Update Service
unaffected from 8080020250604202433.b0a6ceea Red Hat Enterprise Linux 8.8 Telecommunications Update Service
unaffected from 8080020250604195510.e581a9e4 Red Hat Enterprise Linux 8.8 Update Services for SAP Solutions
unaffected from 8080020250604202433.b0a6ceea Red Hat Enterprise Linux 8.8 Update Services for SAP Solutions
unaffected from 0:4.12.2-14.el9_6.1 Red Hat Enterprise Linux 9
unaffected from 0:4.9.8-11.el9_0.4 Red Hat Enterprise Linux 9.0 Update Services for SAP Solutions
 

unaffected from 0:4.10.1-12.el9_2.4

Red Hat Enterprise Linux 9.2 Update Services for SAP Solutions
unaffected from 0:4.11.0-15.el9_4.5 Red Hat Enterprise Linux 9.4 Extended Update Support
Out of support scope Red Hat Enterprise Linux 6

استفاده محصول در ایران

در این جدول، تعداد صفحات ایندکس‌شده در گوگل با دامنه .ir که Red Hat Freeipa را ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.

Approx. Usage in .ir Domain via Google

(Total Pages)

Search Query (Dork) Product
93 site:.ir “Red Hat” “Freeipa” Red Hat Freeipa

نتیجه گیری

این آسیب‌پذیری با شدت بحرانی در FreeIPA به مهاجمِ دارای دسترسی یک میزبان معمولی اجازه می‌دهد تا اختیار کامل مدیر دامنه را به‌دست آورد و در نتیجه امنیت کل زیرساخت‌های مبتنی بر Red Hat Identity Management را تهدید کند. با توجه به انتشار پچ رسمی، اجرای فوری اقدامات زیر برای جلوگیری از بهره‌برداری ضروری است:

  • به‌روزرسانی فوری: همه سرورهای FreeIPA را فوراً به نسخه 4.12.4 یا بالاتر به روزرسانی کرده و از اصلاحات عرضه‌شده در اطلاعیه های امنیتی Red Hat (RHSA) مطابق کانال توزیع خود استفاده کنید.
  • الزامِ وجود PAC در تیکت‌ها: در مرکز صدور تیکت Kerberos (KDC) سیاستی اعمال کنید که درخواست‌های تیکت بدون PAC را رد کند. (مثلاً تنظیمات مرتبط با enforce-pac=true را بررسی و اعمال کنید.)
  • فعال‌سازی پلاگین یکتاشدنی (uniqueness) در 389‑ds: پلاگین بررسی یکتا بودن را برای صفت‌های krbCanonicalName و krbPrincipalName در 389 Directory Server فعال کنید تا از ثبت مقادیر تکراری جلوگیری شود.
  • مانیتورینگ Kerberos: لاگ‌های KDC و سرور IPA را با راهکارهای مانیتورینگ و تحلیلی مثل ELK یا Splunk نظارت کرده و برای رویدادهایی نظیر ایجاد سرویس جدید با krbCanonicalName مشابه نام ادمین، هشدار خودکار تعریف کنید.
  • محدودسازی host principals: سیاست‌های Kerberos و مجوزهای ماشین‌ها را بازنگری کنید تا حساب میزبان تنها به سرویس‌های ضروری دسترسی داشته باشند و اصل حداقل دسترسی (least privilege) اجرا شود.
  • شناسایی و پاکسازی سرویس‌های مخرب: با ابزارهایی مانند ipa service-find و ldapsearch کلیه سرویس‌هایی که krbCanonicalName آن‌ها برابر admin@REALM است را شناسایی کرده و در صورت مشاهده، حذف یا اصلاح کنید.
  • تست نفوذ دوره‌ای: با ابزارهایی مانند BloodHound-AD یا Kerberos Golden Ticket scanner، محیط را به‌صورت منظم تست کنید.
  • آموزش ادمین‌ها: تیم‌های سیستم و امنیت را نسبت به ریسکِ مرتبط با krbCanonicalName، اهمیت PAC و نیاز به بازنگری در نحوه ایجاد سرویس‌ها و مجوزها آموزش دهید. مستندسازی فرآیند ثبت سرویس و بازنگری نقش‌ها در روندهای عملیاتی را تسریع کنید.

اجرای این اقدامات، به‌ویژه به‌روزرسانی فوری و فعال‌سازی PAC، بهره‌برداری از این آسیب پذیری را غیرممکن ساخته و امنیت کامل دامنه FreeIPA را تضمین می‌کند.

امکان استفاده در تاکتیک های Mitre Attack

Initial Access (TA0001)
مهاجم با بهره‌برداری از یک حساب میزبان (host principal) — معمولاً از طریق keytab یا دسترسی مدیریتی به خودِ میزبان — وارد دامنه می‌شود؛ یعنی نقطه ورود واقعی، حساب میزبان ثبت‌شده است که با دسترسی فایل یا سرویس قابل دسترسی است.

Persistence (TA0003)
ایجاد یک ورودی سرویس در مسیر cn=services, cn=accounts در LDAP که تا زمان پاک‌سازی باقی می‌ماند و به مهاجم امکان بازگشت و بازیافت دسترسی را می‌دهد.

Privilege Escalation (TA0004)
ضعف در اعتبارسنجی یکتایی krbCanonicalName باعث می‌شود سرویس ساخته‌شده تیکتی با PAC تولید کند که نقش admin@REALM را به‌صورت غیرمستقیم به مهاجم می‌دهد

Defense Evasion (TA0005)
بهره‌بردار با ثبت سرویس قانونی به‌ظاهر مشروع و دریافت تیکت معتبر از KDC، از مکانیزم‌های شناسایی معمول عبور می‌کند زیرا تیکت دارای PAC و امضاست و رفتار شبیه به عملیات ادمین مشروع خواهد بود.

Credential Access (TA0006)
دست‌یابی به keytab میزبان و سپس دریافت تیکت سرویس/ادمین نشان‌دهنده دسترسی به اطلاعات اعتبار (credentials) است؛ مهاجم می‌تواند تیکت‌های معتبر گرفته و از آنها برای عملیات مدیریتی استفاده کند.

Discovery (TA0007)
پس از کسب دسترسی، مهاجم با دستوراتی مثل ldapsearch و ipa service-find محیط را کشف کرده و سرویس‌ها، حساب‌ها و نقش‌های ادمینی را شناسایی می‌کند تا اهداف بعدی را مشخص کند.

Lateral Movement (TA0008)
با گرفتن نقش admin، مهاجم می‌تواند حرکت جانبی کند — ایجاد حساب‌های با امتیاز بالا، تغییر پالیسی‌ها یا دسترسی به دیگر سرورها/VMها ممکن است.

Collection (TA0009) و Exfiltration (TA0010)
با امتیاز admin، مهاجم می‌تواند داده‌های حساس را جمع‌آوری (credential dumps, LDAP dumps) و سپس خارج کند.

Impact (TA0040)
پیامد فنی این آسیب‌پذیری می‌تواند شامل کنترل کامل دامنه، افشای گسترده اعتبارنامه‌ها، تغییر پالیسی‌های احراز هویت و در نهایت از دست رفتن محرمانگی، یکپارچگی و دسترسی سرویس‌ها باشد.

منابع

  1. https://www.cve.org/CVERecord?id=CVE-2025-4404
  2. https://www.cvedetails.com/cve/CVE-2025-4404/
  3. https://access.redhat.com/security/cve/CVE-2025-4404
  4. https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-4404
  5. https://vuldb.com/?id.312710
  6. https://bugzilla.redhat.com/show_bug.cgi?id=2364606
  7. https://pagure.io/freeipa/c/6b9400c135ed16b10057b350cc9ce42aa0e862d4
  8. https://pagure.io/freeipa/c/796ed20092d554ee0c9e23295e346ec1e8a0bf6e
  9. http://www.openwall.com/lists/oss-security/2025/09/30/6
  10. https://github.com/Cyxow/CVE-2025-4404-POC
  11. https://nvd.nist.gov/vuln/detail/CVE-2025-4404
  12. https://cwe.mitre.org/data/definitions/1220.html

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *