Zoom for Mac وصله‌های اشکال get-root - اکنون به‌روزرسانی کنید! هوش داده PlatoBlockchain. جستجوی عمودی Ai.

Zoom for Mac وصله‌های اشکال get-root - اکنون به‌روزرسانی کنید!

هفته گذشته، پاتریک واردل، محقق امنیت سایبری مک، در نمایشگاه امنیتی معروف DEF CON در لاس وگاس، نوادا، نشان داد یک "ریشه گرفتن" افزایش امتیاز اشکال (EoP) در زوم برای مک:

واردل در توییتی که پس از صحبت های او [2022/08/12] منتشر شد، خاطرنشان کرد:

در حال حاضر هیچ وصله ای وجود ندارد [:EMOJI FRIED-EGG EES Depicting Alarm Emoji:] [:EDVARD MUNCH SCREAM Emoji:]

زوم بلافاصله روی یک پچ برای این نقص کار کرد که روز بعد اعلام شد بولتن امنیتی زوم ZSB-22018، به دست آوردن یک تبریک پاسخ از Wardle در فرآیند:

Mahalos به @Zoom برای رفع سریع (فوق العاده)! [:هر دو دست در جشن بلند شده و درباره اموجی تکان می‌خورند:] [:کف دست‌ها به نشانه حسن نیت معنوی به هم فشار داده شده‌اند:]

افشای روز صفر

با توجه به سرعت ظاهری و سهولتی که Zoom توانست یک پچ برای باگ منتشر کند، دوبله CVE-2022-28756، احتمالاً از خود می پرسید که چرا Wardle از قبل در مورد باگ به زوم نگفته است و روز سخنرانی خود را به عنوان آخرین مهلت برای افشای جزئیات تعیین کرده است.

این به زوم زمان می‌داد تا به‌روزرسانی را برای بسیاری از کاربران مک خود ارائه کند (یا حداقل آن را برای کسانی که به آن اعتقاد دارند در دسترس قرار دهد. وصله زودهنگام / وصله اغلب)، بنابراین شکاف بین توضیح Wardle به جهان در مورد نحوه سوء استفاده از باگ و اصلاح باگ از بین می رود.

در واقع، به نظر می رسد که Wardle چند ماه پیش تمام تلاش خود را برای هشدار دادن به Zoom در مورد این باگ بعلاوه یکسری نقص های مرتبط در فرآیند به روز رسانی خودکار زوم انجام داده است.

Wardle جدول زمانی افشای باگ را توضیح می دهد اسلایدهایی از سخنرانی DEF CON اوو جریانی از به‌روزرسانی‌های Zoom مربوط به نقص‌هایی را که کشف کرده است فهرست می‌کند.

یک شمشیر دو لبه

اشکالاتی که Wardle در مورد آنها صحبت کرد به طور کلی به مکانیسم به روز رسانی خودکار زوم مربوط می شود، بخشی از هر اکوسیستم نرم افزاری که کمی شمشیر دو لبه است - سلاحی قوی تر از یک شمشیر معمولی، اما مدیریت ایمن به نسبت سخت تر است.

به روز رسانی خودکار جزء ضروری در هر برنامه مشتری مدرن است، با توجه به اینکه وصله های مهم را آسان تر و سریع تر توزیع می کند، بنابراین به کاربران کمک می کند تا سوراخ های امنیت سایبری را به طور قابل اعتماد ببندند.

اما به‌روزرسانی خودکار دریایی از خطرات را به همراه دارد، به ویژه به این دلیل که خود ابزار به‌روزرسانی معمولاً به دسترسی سیستم در سطح ریشه نیاز دارد.

دلیلش این است که وظیفه به‌روزرسانی‌کننده بازنویسی نرم‌افزار کاربردی است (کاری که یک کاربر معمولی قرار نیست انجام دهد)، و شاید اجرای فرمان‌های سیستم عامل ممتاز برای انجام تنظیمات یا سایر تغییرات در سطح سیستم.

به عبارت دیگر، اگر توسعه‌دهندگان مراقب نباشند، همان ابزاری که به آنها کمک می‌کند برنامه‌های اصلی خود را به‌روز و ایمن‌تر نگه دارند، می‌تواند به نقطه‌ای تبدیل شود که مهاجمان می‌توانند با فریب دادن به‌روزرسانی‌کننده به اجرای دستورات غیرمجاز با امتیازات سیستم، امنیت را از بین ببرند. .

قابل ذکر است، برنامه‌های به‌روزرسانی خودکار باید برای تأیید آن دقت کنند صحت از بسته‌های به‌روزرسانی که دانلود می‌کنند، تا مهاجمان را متوقف کنند که به سادگی یک بسته به‌روزرسانی جعلی را به همراه بدافزار اضافه شده تغذیه کنند.

آنها همچنین نیاز به حفظ تمامیت از فایل‌های به‌روزرسانی که در نهایت مصرف می‌کنند، به طوری که یک مهاجم محلی نمی‌تواند به‌طور مخفیانه بسته به‌روزرسانی «تأیید‌شده ایمن» را که به‌تازگی در فاصله زمانی کوتاه بین واکشی و فعال‌سازی دانلود شده است، تغییر دهد.

دور زدن بررسی اصالت

همانطور که واردل در کتاب خود توضیح می دهد مقالهیکی از اشکالاتی که او کشف و فاش کرد نقصی در مرحله اول ذکر شده در بالا بود، زمانی که به روز رسانی خودکار زوم سعی کرد صحت بسته به روز رسانی را که به تازگی دانلود کرده بود تأیید کند.

توسعه دهندگان Zoom به جای استفاده از API های رسمی macOS برای تأیید مستقیم امضای دیجیتال دانلود، تصمیم گرفتند تا احراز هویت را به طور غیرمستقیم و با اجرای ابزار macOS انجام دهند. pkgutil --check-signature در پس زمینه و بررسی خروجی.

در اینجا مثالی از pkgutil خروجی، با استفاده از یک نسخه قدیمی از Zoom.pkg بسته نرم افزاری:

$ pkgutil --check-signature Zoom.pkg بسته "Zoom.pkg": وضعیت: امضا شده توسط گواهی توسعه دهنده صادر شده توسط اپل برای توزیع امضا شده با مهر زمانی قابل اعتماد در: 2022-06-27 01:26:22 +0000 زنجیره گواهی : 1. شناسه برنامه‌نویس نصب‌کننده: Zoom Video Communications, Inc. (BJ4HAAB9B3) منقضی می‌شود: 2027-02-01 22:12:15 +0000 SHA256 اثر انگشت: 6D 70 1A 84 F0 5A D4 C1 C1 C3 B01 FB 2F 1C A2 9 5 A6 80 48 FF B4 F76 60 BB 5C ---------------------------------- ------------------------------------- 0. اعتبار صدور گواهینامه شناسه توسعه دهنده: 57-8-2 2027:02:01 + 22 SHA12 اثر انگشت: 15A FC 0000D 256 A7 9F 01 A6 DE 2 03 2 96D 37A FE 93 6 4D 68D E09 0D 2 F1 8C 03-CF 2--B9 ------------------------------------------------ -------------- 88. Apple Root CA منقضی می شود: 0-1-63 58:7:3 +2035 SHA02 اثر انگشت: B09 B21 40 36E CB C0000 FF 256 0 1 73C 0 F7 45 05E 14E DA 2B CA ED 49E 1C 29 C5 BE 6 B6 A7 2 68 F5 91

متأسفانه، همانطور که واردل در هنگام حذف کد تأیید امضای Zoom متوجه شد، به‌روزرسانی‌کننده Zoom آن را پردازش نکرد. pkgutil داده ها به همان روشی که ناظران انسانی انجام می دهند.

ما خروجی را با دنبال کردن دنباله بصری مفید در خروجی بررسی می کنیم.

ابتدا، ما ابتدا وضعیت مورد نظر را جستجو می کنیم، به عنوان مثال signed by a developer certificate issued by Apple for distribution.

سپس عنوان فرعی را پیدا می کنیم Certificate Chain:.

در نهایت، بررسی می‌کنیم که زنجیره از این سه امضاکننده به ترتیب درست تشکیل شده است:

  1. Zoom Video Communications, Inc. 2. Developer ID مرجع صدور گواهی 3. Apple Root CA

به طور شگفت انگیزی، کد زوم به سادگی تأیید می کند که هر یک از سه رشته بالا (حتی شناسه منحصر به فرد زوم را بررسی نمی کند. BJ4HAAB9B3) ظاهر شد یک جایی در خروجی از pkgutil.

بنابراین، ایجاد یک بسته با نام پوچ اما معتبر مانند Zoom Video Communications, Inc. Developer ID Certification Authority Apple Root CA.pkg تأیید کننده بسته را فریب می دهد تا "رشته های هویت" مورد نظر خود را پیدا کند.

نام پکیج کامل در قسمت بازتاب داده می شود pkgutil سرصفحه خروجی در خط اول، جایی که "تأیید کننده" بدبخت زوم با هر سه رشته متن در قسمت اشتباه خروجی مطابقت دارد.

بنابراین چک "امنیتی" می تواند به طور پیش پا افتاده دور زده شود.

یک اصلاح جزئی

واردل می گوید که زوم در نهایت این باگ را، بیش از هفت ماه پس از گزارشش، در زمان DEF CON برطرف کرد…

... اما پس از اعمال پچ، متوجه شد که هنوز یک حفره خالی در روند به روز رسانی وجود دارد.

به روز کننده سعی کرد کار درست را انجام دهد:

  • 1. بسته دانلود شده را به دایرکتوری متعلق به root منتقل کنید. و بنابراین از نظر تئوری برای هر کاربر معمولی ممنوع است.
  • 2. امضای رمزنگاری بسته دانلود شده را تأیید کنید، با استفاده از API های رسمی، نه از طریق متن مطابق با متن pkgutil خروجی.
  • 3. فایل بسته دانلود شده را از حالت آرشیو خارج کنید، به منظور تأیید شماره نسخه آن، برای جلوگیری از حملات کاهش رتبه.
  • 4. فایل بسته دانلود شده را نصب کنید، با استفاده از امتیازات ریشه فرآیند به روز رسانی خودکار.

متأسفانه، حتی با وجود اینکه دایرکتوری مورد استفاده برای ذخیره بسته به‌روزرسانی متعلق به روت بود، اما در تلاش برای محافظت از آن در برابر کاربران کنجکاو که سعی می‌کنند فایل به‌روزرسانی را در حین استفاده از آن خراب کنند...

... فایل بسته تازه دانلود شده در مکان جدید خود "قابل نوشتن در جهان" باقی مانده است (عوارض جانبی دانلود شدن توسط یک حساب کاربری معمولی، نه توسط ریشه).

این به مهاجمان محلی یک راه گریز برای اصلاح بسته به روز رسانی داد بعد از امضای دیجیتال آن تایید شده بود (مرحله 2)، بدون تاثیر جزئیات بررسی نسخه (مرحله 3)، اما درست قبل از نصب کننده کنترل فایل بسته را در دست گرفت تا آن را با حقوق ریشه پردازش کند (مرحله 4).

این نوع باگ به عنوان a شناخته می شود شرایط مسابقه، زیرا مهاجمان باید زمان پایان خود را تعیین کنند تا درست قبل از شروع نصب کننده به خانه برسند، و بنابراین باید تغییرات مخرب خود را درست قبل از آن پنهان کنند.

همچنین این نوع آسیب‌پذیری را می‌شنوید که با نام اختصاری با صدای عجیب و غریب به آن اشاره می‌شود TOCTOU، کوتاه برای زمان بررسی تا زمان استفاده، نامی که به وضوح یادآوری می کند که اگر حقایق خود را خیلی از قبل بررسی کنید، ممکن است تا زمانی که به آنها اعتماد کنید قدیمی شده باشند.

مشکل TOCTOU این است که چرا شرکت‌های کرایه خودرو در بریتانیا دیگر به سادگی از شما درخواست نمی‌کنند که گواهینامه رانندگی شما را ببینند، گواهینامه‌ای که می‌توانست تا 10 سال پیش صادر شده باشد، و از آن زمان به دلایل مختلف ممکن است تعلیق یا لغو شود، به احتمال زیاد رانندگی ناایمن یا غیرقانونی از طرف شما. همراه با مجوز فیزیکی خود، همچنین باید یک کد الفبایی یکباره "اثبات اعتبار اخیر" را ارائه دهید که در 21 روز گذشته صادر شده است تا فاصله احتمالی TOCTOU را از 10 سال به تنها سه هفته کاهش دهید.

رفع مشکل اکنون وارد شده است

طبق گفته واردل، زوم اکنون با تغییر حقوق دسترسی در فایل بسته به روز رسانی که در مرحله 1 بالا کپی شده است، از این اشکال جلوگیری کرده است.

فایلی که برای بررسی امضا، اعتبار سنجی نسخه و نصب نهایی در سطح ریشه استفاده می‌شود، اکنون فقط برای دسترسی به حساب ریشه و همیشه محدود است.

این شرط مسابقه را حذف می کند، زیرا یک مهاجم غیرمجاز نمی تواند فایل را بین پایان مرحله 2 تغییر دهد (تأیید موفقیت آمیز) و شروع مرحله 4 (نصب آغاز می شود).

برای تغییر فایل بسته به منظور فریب دادن سیستم به شما برای دادن دسترسی ریشه، باید از قبل دسترسی ریشه داشته باشید، بنابراین در وهله اول نیازی به اشکال EoP از این نوع ندارید.

مشکل TOCTOU اعمال نمی شود زیرا بررسی در مرحله 2 تا زمان شروع استفاده از فایل معتبر باقی می ماند و هیچ فرصتی برای بی اعتبار شدن چک باقی نمی گذارد.

چه کاری انجام دهید؟

اگر از Zoom در مک استفاده می کنید، برنامه را باز کنید و سپس در نوار منو، به آن بروید zoom.us > Check for Updates...

اگر آپدیت در دسترس باشد، نسخه جدید نشان داده می شود و می توانید کلیک کنید [Install] برای اعمال پچ ها:

Zoom for Mac وصله‌های اشکال get-root - اکنون به‌روزرسانی کنید! هوش داده PlatoBlockchain. جستجوی عمودی Ai.

نسخه مورد نظر شما هست 5.11.5 (9788) و یا بعد.


تمبر زمان:

بیشتر از امنیت برهنه