
۷ بستهی مخرب PyPI شناسایی شده است که از پروتکل SMTP در جیمیل برای اجرای دستورات مخرب خود استفاده میکنند.
هفت بستهی مخرب PyPi شناسایی شده است که با استفاده از SMTP و WebSockets در جیمیل دادههای کاربران را استخراج و اجرای دستورات از راه دور را ممکن می سازد. این تکنیک بسیار زیرکانه است زیرا ترافیک SMTP معمولاً توسط فایروالها و سیستمهای تشخیص قانونی تلقی میشود.
با این حال، برخی از این بستهها بیش از چهار سال در PyPI بودند و حتی یکی از آنها بیش از ۱۸۰۰۰ بار دانلود شده بود.
7 کتابخانه مخرب پایتونی در PyPI به شرح زیر است:
Coffin-Codes-Pro (9000 دانلود)
Coffin-Codes-NET2 (6200 دانلود)
Coffin-Codes-NET (6100 دانلود)
Coffin-Codes-2022 (18100 دانلود)
Coffin2022 (6500 دانلود)
Coffin-Grave (6500 دانلود)
cfc-bsb (2900 دانلود)
به نظر میرسد بستههای «Coffin» در حال جعل هویت بستهی قانونی Coffin هستند که به عنوان یک آداپتور سبک برای ادغام قالبهای Jinja2 در پروژههای Django عمل میکند.
عملکرد مخرب Socket که در این بستهها کشف شده است، بر دسترسی از راه دور مخفیانه و استخراج دادهها از طریق Gmail متمرکز است.
این بستهها از اعتبارنامههای Gmail که به صورت هاردکد شده بودند، برای ورود به سرور SMTP (smpt.gmail.com) استفاده میکردند و اطلاعات شناسایی را ارسال میکردند تا به مهاجم اجازه دهند از راه دور به سیستم آسیبدیده دسترسی پیدا کند.
از آنجاییکه جیمیل یک سرویس قابل اعتماد است، بعید است که فایروالها و EDRها این فعالیت را به عنوان مشکوک علامتگذاری کنند.
پس از مرحله سیگنالدهی ایمیل، بدافزار با استفاده از WebSocket از طریق SSL به یک سرور راه دور متصل میشود و دستورالعملهای پیکربندی تونل را برای ایجاد یک تونل دو طرفه، رمزگذاری شده و پایدار از میزبان به مهاجم برقرار میکند.
با استفاده از یک کلاس، بدافزار ترافیک را از میزبان راه دور به سیستم محلی از طریق تونل هدایت میکند و امکان دسترسی به پنل مدیریت داخلی و API، انتقال فایل، استخراج ایمیل، اجرای دستور shell، برداشت اعتبارنامهها و جابجایی اطلاعات را فراهم میکند.
نشانههای قوی از قصد سرقت ارزهای دیجیتال برای این بستهها وجود دارد، که در آدرسهای ایمیل مورد استفاده (به عنوان مثال، blockchain.bitcoins2020@gmail.com) و تاکتیکهای مشابهی که در گذشته برای سرقت کلیدهای خصوصی Solana استفاده شده است، مشاهده میشود.
اگر هر یک از این بستهها را در محیط خود نصب کردهاید، فوراً آنها را حذف کنید و در صورت نیاز کلیدها و اعتبارنامهها را جابجا کنید.
گزارش مرتبطی از بستهی مخرب ارز دیجیتالی به نام «crypto-encrypt-ts» که در npm یافت شده بود، وجود دارد.
این بسته خود را به عنوان نسخهی TypeScript از کتابخانهی محبوب اما اکنون بدون پشتیبانی «CryptoJS» جا میزند و در عین حال، اطلاعات محرمانه و متغیرهای محیطی کیف پول ارز دیجیتال را به یک نقطهی پایانی Better Stack که توسط عامل تهدید کنترل میشود، منتقل میکند.
این بستهی مخرب که از طریق cron jobs در سیستمهای آلوده باقی میماند، فقط کیف پولهایی را هدف قرار میدهد که موجودی آنها از ۱۰۰۰ واحد بیشتر است و سعی در ربودن کلیدهای خصوصی آنها را دارد.
توصیه های امنیتی:
- نظارت بر اتصالات خروجی غیرمعمول شبکه را بیشتر کنید به ویژه ترافیک SMTP.
- تأیید صحت بسته از طریق تعداد دانلودها و تاریخچه ناشر را حتما بررسی کنید.
- اجرای کنترلهای دسترسی یا ACL سختگیرانه برای منابع حساس.
- استفاده از محیطهای ایزوله برای آزمایش کدهای شخص ثالث، مشکوک، مخرب یا آلوده.
هر هفت بسته از PyPI حذف شدهاند، اما این تکنیک نشاندهنده یک تهدید در حال تکامل است که تیمهای امنیتی باید آن را از نزدیک زیر نظر داشته باشند، زیرا با تکنیک MITRE ATT&CK T1102.002 (سرویس وب: ارتباط دو طرفه) همسو است و این تهدیدی بزرگ برای سیستم های امنیتی در شبکه های سازمانی می باشد و دقت بالای کارشناسان امنیت اطلاعات را نیز میطلبد.