دو آسیب پذیری با شناسه CVE-2023-24068 و CVE-2023-24069 در کلاینت دسکتاپی سیگنال نسخه 6.2.0 و کمتر از اون، در پلتفرمهای ویندوز ، لینوکس و مک گزارش شده.
در زمان نگارش این مقاله ، نسخه 6.3.0 منتشر شده که تحت تاثیر این آسیب پذیری نیست.
آسیب پذیری CVE-2023-24069 :
آسیب پذیری به دلیل نحوه ذخیره فایل ها و مدیریت حافظه کش هستش. مهاجم محلی میتونه به فایلهای ارسال شده دسترسی داشته باشه.
در کلاینت دسکتاپ سیگنال یک تصویر ،بصورت یک فایل معمولی در مسیر زیر ذخیره میشه :
ویندوز :
1 |
C:\Users\foo\AppData\Roaming\Signal\attachments.noindex |
لینوکس:
1 |
~/.config/Signal/attachments.noindex/*/ |
اگه وارد این فولدر بشید یسری فایل هستش که اگه به آخرشون png اضافه کنید ، فایل قابل مشاهده هستش. بنابراین نیاز به کلید رمزگشا و … نیست.
اگه تصاویر حذف شده باشن ، و تو چت به این تصاویر ریپلای شده باشه ، اون تصویر پاک نمیشه و به همین شکل قابل دسترس هستش.
مهاجم با دسترسی به سیستمی که از نسخه آسیب پذیر سیگنال استفاده میکنه ، میتونه خیلی ساده به تصاویر چت افراد دسترسی داشته باشه.
آسیب پذیری CVE-2023-24068 :
مهاجم محلی میتونه به فایلهای موجود در چت دسترسی و اونارو تغییر بده. کلاینت برنامه امکان تایید تغییرات در فایلهای کش رو نداره و در نتیجه مهاجم میتونه داخل اونا کد مخرب قرار بده یا فایل مخرب بزاره.
محقق تصویر A رو در چت ارسال کرده و این تصویر در فولدری که بالا اشاره شد ذخیره شده. حالا محقق نام تصویر دلخواه خودش مثلا B رو با نامی که برای تصویر A در فولدر بالا ذخیره شده تغییر داده و مشاهده کرده که وقتی تصویر A رو دوباره دانلود میکنه ، تصویر B دانلود میشه.
با توجه به اینکه هر کسی حافظه کش خودش داره، هیچ کسی تصویر جدید رو نمیبینه. اما اگه تصویر رو به یه گروه دیگه یا چت دیگه فوروارد کنید ، شما به جای تصویر A ، تصویر B رو فوروارد میکنید.
ترکیب آسیب پذیری CVE-2023-24069 و CVE-2023-24068 :
محقق با بررسی که کرده متوجه شده که این آسیب پذیری ها مختص فایلهای تصویر نیست و سایر فایلها مانند PDF رو هم میتونه شامل بشه.
در ادامه ،محقق یه سناریو برای سوء استفاده از این آسیب پذیری ها ارائه داده. فرض کنید ما به سیستم با اطلاعات حساس دسترسی داریم. کاربر این سیستم ، اطلاعات حساس رو از طریق سیگنال از یه گروه به یه گروه دیگه فوروارد میکنه.
حال ما به فولدری که فایلها ذخیره میشن میریم و فایل مخرب رو جایگزین این فایل میکنیم. مثلا یه فایل PDF با یه بکدور قرار میدیم.
نکته ای که هست نمیشه فرمت فایل رو عوض کرد. یعنی اگه بخوایین PDF رو جایگزین کنید ، باید اونو جایگزین PDF کنید. بطور خلاصه تعویض پسوند نمیشه.
قربانی همون نام فایل و همون پیش نمایش قبلی رو در چت میبینه ، اما در حقیقت فایل تعویض شده و مخرب شده.
قربانی با فوروارد اون به سایر گروهها ، بقیه رو هم میتونه آلوده کنه. نکته ای که هست خود قربانی در جریان این فایل مخرب نیست و افراد گروه ها هم با اعتمادی که دارن تحت تاثیر قرار گرفتن.
اما سیگنال ؟!
سیگنال اعلام کرده که برنامه برای دسترسی مهاجمین با این سطح دسترسی محلی توسعه داده نشده.