بیش از چهار هزار اپلیکشن اندروید به فهرست برنامههای نصبشده کاربر دسترسی دارند
مقالهی تحقیقاتی جدیدی ادعا میکند بیش از چهار هزار اپلیکیشن اندرویدی، امکان دسترسی به فهرست اپلیکیشنهای نصبشده در دستگاه کاربر را دارند. درنتیجه اپلیکیشنها میتوانند فهرستی از برنامههای هر کاربر را آماده کنند تا در اختیار توسعهدهنده قرار گیرد. توسعهدهندهها بسته به فهرست ایجادشده توانایی ایجاد پروفایلی با جزئیات بالا از هر کاربر را خواهند داشت.
اپلیکیشنهای اندرویدی که در تحقیق اخیر امنیتی کشف شدهاند، از رابط برنامهنویسی پیشفرض اندرویدی استفاده میکنند و درنتیجه نمیتوان فهرستسازی آنها را نوعی نفوذ امنیتی دانست. درواقع رابط برنامهنویسی اندروید، امکان اسکن گوشی اندرویدی و دریافت جزئیات دربارهی همهی نرمافزارهای نصبشده را فراهم میکند. جزئیاتی که از اپلیکیشنها جمعآوری میشود، مواردی همچون نام، تاریخ نصب، تاریخ آخرین بهروزرسانی و بسیاری موارد دیگر را بدون نیاز به مجوز کاربر یا اعلانی خاص، به سرور مورد نظر توسعهدهنده ارسال میکند.
اندروید بخشی بهنام Installed Application Methods یا IAM دارد. این بخشها، رابطهای برنامهنویسی هستند که به اپلیکیشنها امکان تعامل با دیگر نرمافزارهای موجود در دستگاه را میدهند. رابطها از دو روش برای دریافت اطلاعات گوناگون مرتبط با اپلیکیشنهای نصبشده استفاده میکنند که هیچکدام توسط گوگل در دستهی رابطهای برنامهنویسی (API) حساس قرار نگرفتهاند. عدم قراردهی رابطها در دستهبندی حساس، یعنی توسعهدهنده میتواند با روشی خارج از دید و توجه کاربر، از آنها استفاده کند.
همهی اپلیکیشنهایی که فهرست برنامههای دستگاه کاربر را جمعآوری میکنند، اهداف خرابکارانه ندارند. توسعهدهندههایی که در تحقیقات اخیر، در نظرسنجی گروه امنیتی شرکت داشتند، اعتقاد دارند که جمعآوری اطلاعات از اپلیکیشنهای نصبشده، برای اپلیکیشنهایی همچون لانچرها، حیاتی است. لانچرها امکان شخصیسازی رابط کاربری گوشی اندرویدی را به کاربر میدهند. بهعلاوه، ابزارهای تغییر IP هم از IAM استفاده میکنند. از اپلیکینشهای دیگر که به فهرست مذکور نیاز دارند میتوان به ابزارهای پشتیبانگیری، مدیریت اعلان، ابزارهای ضد بدافزار، بهینهسازهای مصرف باتری و فایروالها اشاره کرد.
باوجود تمام کاربردهای مثبت ابزار IAM، تبلیغدهندهها و توسعهدهندهها میتوانند با بهرهگیری از فهرست برنامهها، پروفایل منحصربهفردی از کاربر بسازند. محققان مقالهی اخیر که با نام جالب Leave my Apps Alone منتشر شد، اعتقاد دارند همین سوءاستفاده، اهمیت توسعهی راهکار برای حفرهی موجود را دوچندان میکند. آنها در بخشی از مطالعهی خود نشان دادند که با دسترسی به فهرست اپلیکیشنهای نصبشده در دستگاه اندرویدی، میتوان با دقت ۷۰ درصد، جنسیت کاربر را تشخیص داد. تحقیقات تکمیلی نشان داد که حتی میتوان دموگرافیک کاربران را به مواردی همچون مذهب، وضعیت رابطه، زبان و کشور محل زندگی محدود کرد. تحقیقات انجامگرفته توسط گروههای دیگر هم نشان میدهد که دموگرافیکها شامل سن و نژاد و حتی درآمد هم میشود.
محققان در بخشی از مقالهی خود پیرامون جمعآوری اطلاعات جزئی از کاربران نوشتند:
بخشهای حساس پلتفرم اندروید که به حریم خصوصی افراد مرتبط هستند، با استفاده از مجوزهای دسترسی اپلیکیشنها، حفاظت میشود. درواقع توسعهدهنده برای دسترسی به بخشهای مذکور باید به کاربر یک اعلان بفرستد. اکنون این سؤال ایجاد میشود که چرا چنین رویکردی در IAM استفاده نمیشود؟ قانون GDPR اتحادیهی اروپا که بهعنوان قانون پیشگام تنظیمگری در حوزهی حریم خصوصی شناخته میشود، تمامی شناسههایی که توسط دستگاهها، ابزارها، اپلیکیشنها، پروتکلها و موارد دیگر، اطلاعات شخصی افراد را نشان میدهند، بهعنوان دادههای شخصی دستهبندی میکند.
گزارشهایی که پس از نتایج تحقیقات منتشر شدند، ادعا میکنند که گوگل در نسخههای آتی، تغییراتی جدی را در بخش مورد مناقشه پیاده خواهد کرد. در نسخههای آزمایشی کنونی اندروید ۱۱ نیز تغییراتی در میزان دسترسی اپلیکیشنها دیده میشود. ازطرفی هنوز نمیتوان زمانبندی دقیق برای عرضهی نسخهی جدید را تأیید کرد، چون احتمال تأثیر شرایط کنونی و ویروس کرونا بر زمانبندیها وجود دارد. بههرحال، با پیادهسازی تغییرات جدید، اگر اپلیکیشن نیاز به تعامل با اپلیکیشنهای دیگر را داشته باشد، توسعهدهنده باید ابتدا در مانیفست اپلیکیشن خود، اپلیکیشنهای هدف را مشخص کند. مانیفست به فایلی گفته میشود که اطلاعات اساسی و اولیه را در خود دارد. سپس باید مجوزی بهنام QUERY_ALL_PACKAGES درخواست شود که البته هنوز عملکرد آن برای توسعهدهندهها بهصورت کامل مشخص نیست.
مشکل اصلی امنیتی IAM، عدم اطلاعرسانی به کاربر دربارهی جمعآوری داده است
محققان امنیتی میگویند تغییرات جدید هم یکی از اصلیترین نقاط ضعف IAM را پوشش نمیدهد. از نگاه آنها، نقطهی ضعف اصلی سیستم، عدم اطلاعرسانی به کاربر دربارهی این حقیقت است که یک اپلیکیشن، درخواست دسترسی به اطلاعات مرتبط با حریم خصوصی دارد. درواقع، در تغییرات جدید هم اپلیکیشنها هیچ اعلانی مبنی بر تلاش برای جمعآوری اطلاعات اپلیکیشنهای نصبشدهی دیگر نمایش نمیدهند. گوگل تاکنون پاسخی برای ابهامهای ایجادشده ارائه نکرده است.
تحقیقات امنیتی اخیر که اخبار کنونی را در پی داشت، با مطالعهی ۱۴،۳۴۲ اپلیکیشن رایگان در گوگل پلی استور شروع شد و همچنین ۷،۸۸۶ اپلیکیشن متنباز اندروید نیز با هدف شناسایی استفاده از IAM تحلیل شدند. محققان به این نتیجه رسیدند که ۴،۲۱۴ اپلیکیشن، یعنی بیش از ۳۰ درصد از اپلیکیشنهای مورد بررسی در گوگل پلی استور، از IAM استفاده میکنند. ازطرفی از میان اپلیکیشنهای متنباز، تنها ۲۲۸ مورد، یعنی حدود سه درصد، از IAM استفاده میکردند. فراموش نکنید که بیش از سه میلیون اپلیکیشن در بازارچهی اپلیکیشن گوگل حضور دارند و قطعا مجموع اپلیکیشنهایی که اطلاعات مذکور را جمعآوری میکنند، ضریبی بزرگ از چهار هزار خواهد بود.
دستهبندی و مرتبسازی اپلیکیشنهای بررسیشده نشان میدهد بازیها با ۷۳ درصد، بیشترین میزان آمار استفاده از IAM را دارند. در دستههای بعدی، اپلیکیشنهای کمیک (۷۱ درصد)، شخصیسازی (۶۱ درصد)، خودرو و وسایل نقلیه (۵۴ درصد) و اپلیکیشنهای خانوادگی (۴۳ درصد) قرار میگیرند. در تحقیقات منتشرشده، اشارهای بهنام اپلیکیشنها نشد.
سهم عمدهای از اپلیکیشنهای گوگل پلی که دادهی اپلیکیشنهای نصبشده را جمعآوری میکردند (۸۴ درصد)، برای فعالیتهای خود از کتابخانههای متفرقهی کد بهره میبردند. محققان، ۵۶ کتابخانهی تبلیغاتی را پیدا کردند که دادهی مذکور را جمعآوری میکنند و تعداد کمی از آنها، توسط بیش از یکسوم اپلیکیشنهای مذکور، استفاده میشوند. باندلهای دیگر شامل کتابخانههای ابزاری، شخصیسازی و تحلیل و تبلیغ اپلیکیشن بودند. گروه محققان، فهرست کتابخانههای متفرقهی مورد استفاده را هم منتشر کردند.
محققان در بخش پایانی مقالهی خود، ایجاد تغییرات بیشتر در پلتفرم اندروید را پیشنهاد دادند تا هرچه بیشتر، از حریم خصوصی کاربران در برابر جمعآوری اطلاعات حفاظت شود:
ما در بررسیهای خود متوجه شدیم که سهم عمدهای از درخواستها برای دسترسی به IAM از طریق کتابخانههای تبلیغاتی صورت میگیرد و اهدافی همچون پروفایلسازی از کاربر را در نظر دارند. درنتیجه ما پیشنهاد میکنیم که تغییراتی جدی برای جلوگیری از روند کنونی در پلتفرم اندروید صورت بگیرد.
از میان مهمترین تغییرهای پیشنهادی گروه محققان میتوان به ارسال اعلان به کاربران اشاره کرد که آنها را دربارهی دسترسی اپلیکیشنها به فهرست نرمافزارهای نصبشده، مطلع کند. بهعلاوه، کاربر باید بتواند این اعلانها را هم باید مانند دیگر مجوزهای دسترسی، رد کند.
محققان همچنین اعلام کردند که iOS هم روشی مشابه با IAM دارد که به اپلیکیشنها امکان ردگیری و تعامل با اپلیکیشنهای نصبشدهی دیگر را میدهد. آنها میگویند آخرین نسخهها از سیستمعامل موبایلی اپل، رویکردی دارد که توسعهدهنده باید پیش از انتشار، اپلیکیشنهای هدف خود را مشخص کند و بازرسهای اپاستور پیش از انتشار اپلیکیشن، فهرست او را بررسی میکنند.
همانطور که در ابتدا گفته شد، دلایل منطقی وجود دارد تا برخی اپلیکیشنها به جزئیات اپلیکیشنهای دیگر دسترسی داشته باشند. ازطرفی، دلایلی برای نگران شدن از دسترسی هم وجود دارد. بههرحال کارشناسان امنیتی از مدتها قبل پیشنهاد میکنند که تعداد اپلیکیشنهای گوشی اندرویدی خود را بیدلیل افزایش ندهید. درواقع تنها اپلیکیشنهایی را نصب کنید که واقعا به آنها نیاز دارید. بهعلاوه، شاید اپلیکیشنهای رایگان که تکیهی زیادی بر درآمد از طریق نمایش تبلیغات دارند، گزینههای مناسبی در بسیاری از موارد نباشند. همانطور که تحقیقات نشان داد، اپلیکیشنهای متنباز احتمالا دادههای کمتری جمعآوری میکنند، اما بههرحال کاربر باید آنها را از منابع متفرقه نصب کند که خود، چالشهای امنیتی خاصی را بههمراه دارد.
نظرات