این مشکل امنیتی به هکرها یا افراد مخرب این امکان را میدهد که اسکریپتهای مخرب خود را از طریق WhatsApp ارسال کرده و بدون اطلاع یا تایید کاربر، آنها را اجرا کنند که میتواند پیامدهای خطرناکی برای امنیت و حریم خصوصی کاربران داشته باشد.
برای موفقیتآمیز بودن حمله، نیاز است که زبان برنامهنویسی Python بر روی سیستم نصب شده باشد. این پیشنیاز ممکن است تعداد هدفهای حمله را محدود کند به افرادی مانند توسعهدهندگان نرمافزار، پژوهشگران و کاربران حرفهای که احتمالاً Python را روی سیستمهای خود نصب کردهاند.
این مشکل شبیه به مشکلی است که در آوریل برای نسخه ویندوزی تلگرام رخ داده بود. در آن زمان، مشکل ابتدا رد شد اما بعداً برطرف گردید. این مشکل به حملهکنندگان اجازه میداد که هشدارهای امنیتی را دور بزنند و با ارسال یک فایل .pyzw (یک نوع فایل( Python از طریق کلاینت پیامرسان، اجرای کد از راه دور (remote code execution) را انجام دهند.
با وجود اینکه WhatsApp برخی انواع فایلهای بالقوه خطرناک را مسدود میکند، فعلاً برنامهای برای مسدود کردن فایلهای اسکریپت Python ندارد.
علاوه بر فایلهای Python، فایلهای PHP هم توسط واتساپ مسدود نمیشوند و همچنان امکان ارسال و دریافت آنها بدون هیچ محدودیتی وجود دارد.
اسکریپت های پایتون، PHP مسدود نشده اند
پژوهشگر امنیتی به نام Saumyajeet Das در حین آزمایش انواع فایلهایی که میتوان به مکالمات واتساپ پیوست کرد و بررسی اینکه آیا برنامه اجازه ارسال فایلهای خطرناک را میدهد یا نه، این آسیبپذیری را کشف کرد.
وقتی فرستندهای یک فایل اجرایی (که ممکن است خطرناک باشد) را ارسال میکند، واتساپ به گیرنده اطلاع میدهد و او را با دو گزینه مواجه میکند: یا فایل را مستقیماً باز کند یا آن را در جایی ذخیره کند.
با این حال، وقتی کاربر تلاش میکند فایل را باز کند، نسخه ویندوزی واتساپ یک خطا تولید میکند و تنها گزینهای که برای کاربران باقی میماند این است که فایل را روی دیسک ذخیره کرده و از آنجا اجرا کنند.
واتساپ برای ویندوز هنگام تلاش برای باز کردن فایلهای مذکور خطا تولید میکند و اجازه نمیدهد که این فایلها مستقیماً باز شوند. همچنین، واتساپ از اجرای فایلهای با پسوندهای .DLL، .HTA و VBS نیز جلوگیری میکند.
برای همه این نوع فایلها، هنگام تلاش برای اجرای مستقیم آنها از داخل برنامه واتساپ با کلیک بر روی گزینه “Open”، یک خطا رخ میدهد. اجرای این فایلها تنها پس از ذخیره کردن آنها بر روی دیسک امکانپذیر است.
Das بیان کرد که : او سه نوع فایل را پیدا کرده است که کلاینت واتساپ از اجرای آنها جلوگیری نمیکند :
.PYZ ( برنامه فشردهشده Python ) .PYZW ( برنامه PyInstaller ) و .EVTX ( فایل گزارش رویدادهای ویندوز )
واتساپ به کاربران اجازه میدهد که فایلهای Python و اسکریپتهای PHP را بدون هیچ محدودیتی اجرا کنند.
اگر فایل حاوی اسکریپت و همه منابع مورد نیاز آن کامل باشد، گیرنده با کلیک بر روی دکمه “Open” میتواند بلافاصله اسکریپت را اجرا کند.
Das در تاریخ ۳ ژوئن مشکل را به Meta گزارش داد و شرکت در ۱۵ ژوئیه پاسخ داد که این مشکل قبلاً توسط یک پژوهشگر دیگر گزارش شده بود و باید تا آن زمان برطرف شده باشد.
علیرغم اینکه Meta گفته بود که مشکل برطرف شده است، آزمایشها نشان می دهد که باگ هنوز در آخرین نسخه واتساپ برای ویندوز وجود دارد و قابل تکرار است.
همچنین Das گفت : من این مشکل را از طریق برنامه جایزه باگیابی به Meta گزارش دادم، اما متأسفانه آنها آن را به عنوان ‘غیر قابل پذیرش’ (N/A) بستند. این ناامیدکننده است، زیرا این یک نقص ساده است که به راحتی میتواند برطرف شود”.
واتساپ معتقد نیست که این مسئله مشکلی برای آنها ایجاد میکند و به همین دلیل قصدی برای برطرف کردن آن ندارند.
WhatsApp بیان کرد : “ما پیشنهاد پژوهشگر را خواندهایم و از ارسال آن قدردانی میکنیم. بدافزار میتواند اشکال مختلفی داشته باشد، از جمله فایلهای دانلودی که هدفشان فریب دادن کاربر است.”
“به همین دلیل است که ما به کاربران هشدار میدهیم هرگز روی فایل یا پیامی که از کسی که نمیشناسند دریافت کردهاند، کلیک نکنند یا آن را باز نکنند، فارغ از اینکه این فایل را از طریق واتساپ یا هر برنامه دیگری دریافت کردهاند.”
نماینده شرکت همچنین توضیح داد که واتساپ سیستمی دارد که به کاربران هشدار میدهد زمانی که از طرف کاربرانی که در لیست مخاطبانشان نیستند یا کسانی که شماره تلفنشان در یک کشور دیگر ثبت شده است، پیام دریافت میکنند.
با این حال، اگر حساب کاربری یک شخص به دست مهاجم بیفتد، مهاجم میتواند به همه افراد موجود در لیست مخاطبان آن شخص اسکریپتهای مخرب ارسال کند که اجرای آنها از داخل اپلیکیشن پیامرسان آسانتر است.
علاوه بر این، این نوع فایلهای پیوست میتوانند در گروههای چت عمومی و خصوصی ارسال شوند که ممکن است توسط عوامل تهدید برای انتشار فایلهای مخرب مورد سوءاستفاده قرار گیرند.
در پاسخ به رد گزارش توسط واتساپ، Das از نحوه برخورد این پروژه با این وضعیت ابراز ناامیدی کرد.
Das بیان کرد : ” متا میتواند با افزودن سادهی پسوندهای .pyz و .pyzw به لیست مسدودسازی خود، از سوءاستفادهی احتمالی از طریق این فایلهای فشردهی پایتون جلوگیری کند.”
وی افزود که با رسیدگی به این مسئله، واتساپ “نه تنها امنیت کاربران خود را افزایش میدهد بلکه تعهد خود به حل سریع مشکلات امنیتی را نیز نشان میدهد.”