اخیرا تحقیقی با عنوان Intellexa Leaks منتشر شده که جزییاتی در خصوص جاسوس افزار Predator، اکسپلویتهای زیرودی و شرکتهای وابسته به Intellexa رو افشاء میکنه. این اسناد از زاویه های مختلف منتشر شده که سعی کردم، در سایت پوشش بدم. برای درک بهتر این تحقیق، نیازِ گزارش جالبی که در سال 2023 با عنوان Predator Files منتشر شده رو هم بررسی کنیم. بنابراین در این سری پستها، این تحقیقات رو در قالب 4 پست، ارائه کردیم:
- بررسی Predator Files: نگاه فنی به محصولات Intellexa – گزارش عفو بین الملل
- بررسی Intellexa Leaks: عملیات داخلی جاسوسافزار Predator – گزارش عفو بین الملل
- بررسی Intellexa Leaks: شبکه شرکتهای وابسته به Intellexa – گزارش RecordedFuture
- بررسی Intellexa Leaks: اکسپلویتهای زیرودی Intellexa – گزارش گوگل
پست پیش رو، قسمت چهارم از این مجموعه، “بررسی Intellexa Leaks: اکسپلویتهای زیرودی Intellexa” رو ارائه میده.
اگر علاقمند به موضوع جاسوس افزارهای تجاری هستید، میتونید از مطالب زیر هم استفاده کنید:
مقدمه
با وجود بررسیهای گسترده و انتشار گزارشهای عمومی، فروشندگان نظارت تجاری همچنان بدون مانع به فعالیت خودش ادامه میدن. نام برجستهای که همچنان در دنیای جاسوسافزارهای تجاری مطرحِ، Intellexa است. این شرکت که بخاطر جاسوسافزار Predator شناخته میشه، توسط دولت ایالات متحده تحریم شده. تحلیل جدید گروه اطلاعات تهدید گوگل (GTIG) نشان میده که Intellexa در حال دور زدن محدودیتها و حتی شکوفایی فعالیتهای خودش است.
Intellexa سازگار شده، محدودیتها رو دور زده و همچنان سلاحهای دیجیتال رو به بالاترین پیشنهاد دهندگان میفروشه. همراه با تحقیقاتی که همکاران ما در Recorded Future و Amnesty منتشر کردن، این پست وبلاگ فعالیتهای اخیر Intellexa رو روشن میکنه، تأثیر واقعی ابزارهای نظارتی اونارو فاش میکنه و اقداماتی رو که ما علیه این صنعت انجام میدیم رو توضیح میده.
ادامه ی اکسپلویت گسترده آسیبپذیریهای زیرودی:
در چند سال گذشته، Intellexa جایگاه خودش رو بعنوان یکی از، اگه نگییم اصلیترین، فروشندگان جاسوسافزار که از آسیبپذیریهای زیرودی در مرورگرهای موبایل سوء استفاده میکنن، تثبیت کرده. علیرغم تلاشهای مداوم محققین امنیتی و فروشندگان پلتفرمها برای شناسایی و اصلاح کردن این نقصها، Intellexa بارها نشان داده که توانایی تهیه یا توسعه اکسپلویتهای زیرودی جدید رو داره و به سرعت برای مشتریان خودشون بکار میگیره و عملیاتش رو ادامه میده.
Intellexa مسئول تعداد قابل توجهی از آسیبپذیریهای زیرودی بوده که طی سالها توسط گروه تحلیل تهدید گوگل (TAG)، که اکنون بخشی از GTIG است، شناسایی شدن. برای مثال، از حدود ۷۰ آسیبپذیری زیرودی که از سال ۲۰۲۱ تاکنون توسط TAG کشف و مستندسازی شده، Intellexa مسئول ۱۵ زیرودی منحصربهفرد بوده، شامل آسیبپذیریهای اجرای کد از راه دور (RCE)، فرار از سندباکس (SBX) و افزایش امتیاز محلی (LPE). تمام این زیرودیها توسط فروشندگان مربوطه اصلاح شدن. علاوه بر توسعه اکسپلویت زیرودی، محققا شواهد فزایندهای مشاهده کردن که نشان میده Intellexa بخشی از زنجیرههای اکسپلویت رو از نهادهای خارجی خریداری میکنه.
جدول زیر، اکسپلویتهای مرتبط با Intellexa رو از سال 2021 نشان میده.
| CVE | نقش | سازنده | محصول | نوع | توضیحات |
| CVE-2025-48543 | SBX+LPE | Android | Memory corruption | Use-After-Free in Android Runtime | |
| CVE-2025-6554 | RCE | Chrome | Memory corruption | Type confusion in V8 | |
| CVE-2023-41993 | RCE | Apple | iOS | Memory Corruption | WebKit JIT RCE |
| CVE-2023-41992 | SBX+LPE | Apple | iOS | Memory Corruption | Kernel IPC Use-After-Free |
| CVE-2023-41991 | LPE | Apple | iOS | Code Signing Bypass | Code Signing Bypass |
| CVE-2024-4610 | LPE | ARM | Mali | Memory Corruption | Improper GPU memory processing operations |
| CVE-2023-4762 | RCE | Chrome | Memory corruption | Type confusion in V8 | |
| CVE-2023-3079 | RCE | Chrome | Memory Corruption | Type Confusion in V8 | |
| CVE-2023-2136 | SBX | Skia | Memory Corruption | Integer overflow in Skia SKSL | |
| CVE-2023-2033 | RCE | Chrome | Memory Corruption | Use-After-Free in V8 | |
| CVE-2021-38003 | RCE | Chrome | Memory Corruption | Inappropriate implementation in V8 | |
| CVE-2021-38000 | RCE | Chrome | Logic/Design Flaw | Insufficient validation of untrusted input in Intents | |
| CVE-2021-37976 | SBX | Chrome | Memory Corruption | Information leak in memory_instrumentation | |
| CVE-2021-37973 | SBX | Chrome | Memory Corruption | Use-after-free in Portals | |
| CVE-2021-1048 | SBX+LPE | Android | Memory Corruption | Use-After-Free in ep_loop_check_proc |
زنجیره ی اکسپلویت:
محققای گوگل در سال ۲۰۲۳ با همکاران خودشون در CitizenLab همکاری کردن و یک زنجیره ی اکسپلویت زیرودی iOS رو که علیه اهدافی در مصر استفاده میشد، بطور کامل ضبط کردن. این زنجیره ی اکسپلویت که توسط Intellexa توسعه یافته بود، برای نصب مخفی جاسوسافزاری که با نام Predator شناخته میشه روی دستگاه قربانی استفاده میشد. بر اساس متادیتا، Intellexa بصورت داخلی به این زنجیره ی اکسپلویت نام smack داده بود.
مرحله ی اول: فریمورک JSKit – شبیهسازی دوباره
مرحلهی اولیهی زنجیرهی اکسپلویت، یک آسیبپذیری زیرودی اجرای کد از راه دور (RCE) در Safari بود که اپل اون رو با شناسهی CVE-2023-41993 اصلاح کرد. اکسپلویت از فریمورکی استفاده میکرد که در داخل اپل با نام JSKit شناخته میشه. زمانیکه دسترسی خواندن و نوشتن دلخواه در حافظه از طریق یک آسیبپذیری در رندر بدست میاد، که در این مورد CVE-2023-41993 بود، این فریمورک تمام مؤلفههای لازم برای اجرای کد بومی (native) روی دستگاههای مدرن اپل رو فراهم میکنه.
محققا معتقدن که Intellexa، اکسپلویتهای RCE مخصوص iOS رو از یک منبع خارجی بدست آورده، چون دقیقا همین فریمورک JSKit رو مدتهاست که، توسط سایر فروشندگان نظارتی و مهاجمان دولتی از سال 2021 مشاهده کردن. در سال 2024، محققا بصورت عمومی کمپین مهاجمان وابسته به دولت روسیه رو گزارش کردن که همین اکسپلویت iOS و فریمورک JSKit رو در یک حملهی watering hole علیه سایتهای دولتی مغولستان استفاده کرده بودن. همچنین استفاده از اون رو در کمپینهای سایر فروشندگان نظارتی دیدن، از جمله یک فروشندهی دیگه که هنگام اکسپلویت CVE-2022-42856 در سال 2022 از همین فریمورک استفاده کرده بود.
فریمورک JSKit به خوبی نگهداری شده، از دامنهی وسیعی از نسخههای iOS پشتیبانی میکنه و به اندازهی کافی ماژولار است که بتونه بایپسهای مختلف Pointer Authentication Code (PAC) و تکنیکهای اجرای کد رو پشتیبانی کنه. این فریمورک میتونه فایلهای Mach-O درون حافظه رو برای شناسایی سیمبلهای سفارشی تجزیه کنه و در نهایت فایلهای Mach-O رو بصورت دستی از داخل حافظه نگاشت و اجرا کنه. علاوه بر این، JSKit فریمورکی نسبتا مقاوم و مهندسی شده است که هر مرحله از روند اکسپلویت با دقت تست شده. تا به امروز، محققا هیچ فریمورک مشابهی برای اندروید مشاهده نکردن.
شکل زیر نمونهای از تست و اعتبارسنجی اجرای shellcode رو نمایش میده.

بر اساس رشتههای Debug، اکسپلویتی که Intellexa استفاده کرده بود ظاهراً در داخل شرکت با عنوان “exploit number 7” رهگیری میشد. این نشان میده که نهاد خارجی که اکسپلویتها رو ارائه میده، احتمالا تعداد قابل توجهی از اکسپلویتهای iOS رو در اختیار داره که طیف وسیعی از نسخهها رو هدف قرار میده.

در مورد اکسپلویت کروم، Intellexa از یک فریمورک سفارشی استفاده کرده که تمام قابلیتهای لازم برای دستیابی به اجرای کد از هر آسیبپذیری که قادر به افشای شیء TheHole در V8 باشه رو داره. اونا ابتدا این فریمورک رو با CVE-2021-38003 و بعدها با CVE-2023-4762, CVE-2023-3079, CVE-2023-2033 و اخیرا در ژوئن 2025 با CVE-2025-6554 که در عربستان سعودی مشاهده شد، اکسپلویت کردن. جدیدترین مورد، CVE-2025-6554، یک type confusion در موتور V8 کروم بود. کروم به سرعت این مشکل رو برای تمام کاربران با یک تغییر پیکربندی کاهش و بعدش در نسخهی 138.0.7204.96 با شناسه ی CVE-2025-6554 اصلاح کرد. تمام این CVEها، آسیبپذیریهایی در V8 هستن که همگی برای افشای شیء TheHole قابل سوءاستفاده هستن.
مراحل بعدی: نظارت بر Helper
مرحلهی دوم، فنیترین بخش زنجیره است و برای توضیح کامل تمام قابلیتهاش، یک پست وبلاگی جداگانه نیاز خواهد بود. بصورت خلاصه، این مرحله مسئول خروج از Sandbox مرورگر Safari و اجرای یک پیلود مرحله سوم (که غیرقابلاعتماد است) با سطح دسترسی system میباشد. این کار از طریق اکسپلویت آسیبپذیریهای کرنل CVE-2023-41991 و CVE-2023-41992 انجام میشه. مرحلهی دوم با مرحلهی اول ارتباط برقرار میکنه تا برخی از قابلیتها (مانند بایپس PAC) رو مجددا استفاده کنه و همچنین امکان خواندن/نوشتن حافظهی کرنل رو برای مرحله سوم فراهم میکنه.
مرحلهی سوم که توسط GTIG تحت نام PREYHUNTER رهگیری شده، آخرین بخشی است که محققا تونستن اون رو ضبط کنن و از دو ماژول تشکیل شده: helper و watcher.
ماژول watcher عمدتا تضمین میکنه که دستگاه آلوده رفتار مشکوک از خود نشان نده. اگر چنین رفتاری شناسایی بشه، یک اعلان تولید شده و فرآیند اکسپلویت متوقف میشه. این ماژول همچنین مسئول نظارت بر کرشهاست.
رفتارهای زیر شناسایی میشن:
- فعال بودن Developer Mode از طریق security.mac.amfi.developer_mode_status
- اتصال کنسول از طریق diagnosticd
- تنظیم بودن locale گوشی روی ایالات متحده (US) یا اسرائیل (IL)
- نصب بودن Cydia
- در حال اجرا بودن processهای bash، tcpdump، frida، sshd یا checkra1n روی گوشی
- نصب بودن McAfee، AvastMobileSecurity یا NortonMobileSecurity
- وجود تنظیمات HTTP proxy سفارشی
- نصب بودن Root CA سفارشی
ماژول helper از طریق یک سوکت یونیکس در مسیر tmp/helper.sock، با سایر بخشهای اکسپلویت ارتباط برقرار میکنه. مشابه بدافزار ALIEN برای اندروید، این ماژول توانایی hook کردن بخشهای مختلف سیستم با استفاده از فریمورکهای سفارشی به نامهای DMHooker و UMHooker رو داره. این hookها به ماژول اجازه میده قابلیتهای پایهای جاسوس افزار رو اجرا کنه، مانند:
- ضبط مکالمات VOIP (ذخیره در مسیر/private/var/tmp/l/voip_%lu_%u_PART.m4a)
- اجرای کیلاگر
- گرفتن عکس از دوربین
این ماژول همچنین در SpringBoard هوک ایجاد میکنه تا اعلانهایی که در اثر فعالیتهای مذکور ایجاد میشن رو از دید کاربر مخفی کنه. محققا معتقدن این قابلیتها برای اطمینان اپراتور طراحی شدن تا قبل از استقرار یک جاسوسافزار پیشرفتهتر، مانند Predator، مطمئن بشه که دستگاه آلوده، دقیقا دستگاه هدف است. باینری شامل شواهدی از فرایند کامپایل است، مانند مسیر زیر که نام زنجیره ی اکسپلویت هم در اون وجود داره:
|
1 |
/Users/gitlab_ci_2/builds/jbSFKQv5/0/roe/ios16.5-smackjs8-production/. |
در مجموع، این اکسپلویتها در مقایسه با stager جاسوسافزار، از سطح بسیار بالایی از پیچیدگی برخوردار هستن. این موضوع ارزیابی محققا رو تأیید میکنه که احتمالا اکسپلویتها از یک مجموعهی ثالث خریداری شدن.
اختلال در قابلیتهای جدید تحویل
مکانیزم تحویل اصلی اکسپلویتهای Intellexa همچنان لینکهای یکبار مصرف است که مستقیما از طریق اپلیکیشنهای پیامرسان رمزگذاریشده سراسری (E2EE) برای اهداف ارسال میشه. با این حال، محققا یک تاکتیک دیگه رو هم در میان چند مشتری مشاهده کردن، استفاده از تبلیغات مخرب روی پلتفرمهای شخص ثالث برای شناسایی کاربران و سپس هدایت کاربران هدف به سرورهای تحویل اکسپلویت Intellexa.
محققا معتقدن این کمپین نمونهی دیگه ای از سوءاستفادهی فروشندگان جاسوس افزار تجاری از تبلیغات برای تحویل اکسپلویت است، و Intellexa از اوایل سال 2025 حضور خودش رو در این فضا بطور قابل توجهی افزایش داده. گوگل بهمراه شرکای خودش، شرکتهایی رو که Intellexa برای نفوذ به اکوسیستم تبلیغات ایجاد کرده بود شناسایی و حسابهای وابسته به این شرکتها رو در این پلتفرمهارو مسدود کرده.
مقابله با تهدیدات ناشی از فعالیتهای Intellexa
تلاشهای جمعی برای افزایش آگاهی، باعث حرکت به سمت یک پاسخ سیاستگذاری بینالمللی شده. گوگل مشارکت فعالی در فرآیند Pall Mall داشته، فرآیندی که با هدف ایجاد اجماع و پیشبرد محدودسازی آسیبهای ناشی از صنعت جاسوسافزار طراحی شده. ما در کنار یکدیگر بر ایجاد هنجارها و چارچوبهای بینالمللی متمرکز هستیم تا از سوءاستفاده از این فناوریهای قدرتمند جلوگیری کرده و از حقوق بشر در سراسر جهان محافظت کنیم. این تلاشها بر پایهی اقدامات قبلی دولتی ساخته شدن، از جمله اقداماتی که دولت ایالات متحده برای محدودسازی استفادهی دولتی از جاسوسافزار انجام داده و همچنین اولین تعهد بینالمللی از این نوع برای اقدامات مشابه.
با توجه به شدت و گستردگی فعالیتهای Intellexa، گوگل تصمیم گرفته که هشدار حملهی دولتی (government-backed attack warning) رو بطور هم زمان برای تمام حسابهای هدف قرار گرفته شده که از سال 2023 با مشتریان Intellexa مرتبط بودن، ارسال کنه. این اقدام شامل چند صد حساب در کشورهای مختلف از جمله: پاکستان، قزاقستان، آنگولا، مصر، ازبکستان، عربستان سعودی، تاجیکستان بوده. هدف این بوده که، افراد در معرض خطر از تهدیدهای پیشرفتهای که اونارو هدف قرار داده، مطلع بشن.
طبق سیاست افشاگری گوگل، تحقیقات گوگل برای افزایش آگاهی و بهبود امنیت کل اکوسیستم منتشر میشه. همچنین تمامی سایتها و دامنههای شناساییشده رو به Safe Browsing اضافه کردن تا از سوءاستفادههای بعدی جلوگیری کنن.
کاربران و سازمانها باید سریعا اصلاحیه هارو اعمال کنن و نرمافزارهای خودشون رو کاملا بروز نگه دارن تا امنیت اونا حفظ بشه.
گوگل همچنان روی تشخیص، تحلیل و جلوگیری از اکسپلویتهای زیرودی تمرکز خواهد کرد و آسیبپذیریها رو بلافاصله بعد از کشف به فروشندگان گزارش خواهد داد.
IoCهای گزارش:
فایلها:
- 85d8f504cadb55851a393a13a026f1833ed6db32cb07882415e029e709ae0750
- e3314bcd085bd547d9b977351ab72a8b83093c47a73eb5502db4b98e0db42cac
رولهای Yara:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
rule G_Hunting_PREYHUNTER_IOSStrings_1 { meta: author = "Google Threat Intelligence Group (GTIG)" strings: $ = "/Users/gitlab_ci_2/builds/jb" $ = "/roe/ios1" $ = "-production/libs/Exploit" ascii wide $ = "/private/var/tmp/l/voip_%lu_%u_PART.m4a" ascii wide $ = "/private/var/tmp/etherium.txt" ascii wide $ = "/private/var/tmp/kusama.txt" ascii wide $ = "_gadget_pacia" ascii wide $ = "ZN6Helper4Voip10setupHooksEvE3$_3" ascii wide $ = "Hook 1 triggered! location:" ascii wide $ = "KernelReaderI11CorelliumRWE" ascii wide $ = "NSTaskROP20WithoutDeveloperMode" ascii wide $ = "UMHookerI14RemoteTaskPort" ascii wide $ = "callFunc: building PAC cache for" ascii wide $ = "select tset FROM tsettings WHERE INSTR(tset, ?)" ascii wide $ = "select * from tsettings WHERE length(sha256) > ?" ascii wide $ = "isTrojanThreadERK" ascii wide $ = "getpid from victim returned:" ascii wide $ = "victim task kaddr:" ascii wide condition: 1 of them } |