Home بلاگ برنامه نویسی افزایش ۱۸۸٪ حملات زنجیره تأمین در PyPI و npm  |  تحلیل بسته‌های مخرب، تکنیک‌های جدید هکرها و راهکارهای دفاعی ۲۰۲۵

افزایش ۱۸۸٪ حملات زنجیره تأمین در PyPI و npm  |  تحلیل بسته‌های مخرب، تکنیک‌های جدید هکرها و راهکارهای دفاعی ۲۰۲۵

0
افزایش ۱۸۸٪ حملات زنجیره تأمین در PyPI و npm  |  تحلیل بسته‌های مخرب، تکنیک‌های جدید هکرها و راهکارهای دفاعی ۲۰۲۵

سال 2025 نقطه عطفی در تغییرِ چهره تهدیدات امنیتی، به‌ویژه در حملات زنجیره تأمین (Supply Chain Attacks) بود. تعداد بسته‌های مخرب در مخازن PyPI و npm به‌شدت افزایش یافته و تاکتیک‌هایی مانند DLL side-loading، typosquatting  و C2 communication توسعه‌ یافته‌اند. در این مقاله از سلام دیجی بررسی می کنیم که چگونه این رفتار مخرب در حال پیچیده‌تر شدن است و چه راهکارهایی برای مقابله‌ی مؤثر وجود دارد.

۱. افزایش قابل‌توجه بسته‌های مخرب

🔸 شرکت Sonatype رشد ۱۸۸٪ای بسته‌های مخرب را در سه‌ماهه دوم سال ۲۰۲۵ گزارش کرده که شامل 16,279  بسته ی مخرب در npm و PyPI می‌شود. بیش از نیمی از این بسته‌ها برای استخراج داده‌های حساس مانند رمزعبور، API key  و داده‌های CI/CD طراحی شده‌اند.

🔸 گروه Lazarus در کره‌شمالی مسئول بیش از ۱۰۷ بسته مخرب بوده که با بیش از ۳۰,۰۵۰ دانلود فعال، در حال گسترش Operation Marstech Mayhem هستند.

💡 نمونه‌کد: اسکن امنیتی پکیج‌های npm قبل از نصب

npm audit --json

این دستور گزارشی JSON از آسیب‌پذیری‌ها ارائه می‌دهد تا پیش از نصب، امنیت بسته‌ها بررسی شود.

۲. تکنیک‌های پیشرفته حمله

🔸 در حمله‌ای خاص، بسته‌ی termncolor در PyPI، ابتدا با وارد کردن بسته‌ی colorinal  به سیستم نفوذ کرده و سپس از طریق DLL side-loading  فایل‌هایی مانند exe  و libcef.dll  را اجرا می‌کند. این DLL قابلیت استخراج اطلاعات و برقراری ارتباط C2 از طریق Zulip  را دارد و برای پایداری حمله، ورودی در رجیستری Run ویندوز اضافه می‌کند.

🔸 در حملات دیگر، بسته‌های PyPI مخرب به‌صورت پوشش‌دهنده (masquerade) ابزارهای ساده ی زمانی منتشر می‌شدند تا اعتبار توسعه‌دهنده را سوءاستفاده کرده و توکن‌های ابری را سرقت کنند.

💡 نمونه‌کد: نصب ایمن بسته‌های PyPI با هش

 

# requirements.txt
requests==2.32.3 \
    --hash=sha256:2e0b5f... \
    --hash=sha256:b7d42a...

 

pip install --require-hashes -r requirements.txt

 

۳. حملات cross-ecosystem و typosquatting

🔸 کمپین‌هایی از حملات cloud-to-dev در هر دو اکوسیستم PyPI و npm گزارش شده‌اند که با تاکتیک‌هایی همچون typosquatting و نام‌گذاری مشابه بسته‌های معتبر (مثل colorama و colorizr) طعمه‌گذاری می‌کنند.

🔸 Socket اخیراً کشف کرده که ۶۰ بسته مخرب در npm، پس از نصب به‌صورت اسکریپت پست‌اینستال اطلاعات حساس را استخراج می‌کنند، از جمله IP داخل شبکه، DNS و نام‌هاست.

🔸 گروه Lazarus از تاکتیک‌های مشابه در npm و PyPI استفاده کرده و تعداد 234 بسته مخرب را بارگذاری کرده است. تا کنون تا 36,000 قربانی تخمین زده شده.

💡 نمونه‌کد: غیرفعال‌کردن اسکریپت‌های postinstall در npm

# .npmrc
ignore-scripts=true
audit=true
fund=false

این تنظیمات جلوی اجرای اسکریپت‌های مخفی پس از نصب را می‌گیرد.

۴. راهکارهای محافظتی و پیشرفته

واکنش پلتفرم‌ها:

🔸 PyPI از ژوئن ۲۰۲۵ بیش از 1,800 آدرس ایمیل منقضی‌شده را برای محافظت در برابر Account Takeover بلاک کرده. این اقدام، حملات «domain resurrection» را مسدود می‌کند.

🔸 PSF نسبت به حملات فیشینگ targeting توسعه‌دهندگان هشدار داده است؛ مهاجمان با استفاده از دامنه‌های typosquatting (مانندorg) تلاش می‌کنند توکن‌های ورود را سرقت کنند.

ابزارهای نوین امنیتی:

🔸 MalGuard سامانه‌ای است که با تحلیل گراف مرکزی و الگوریتم LIME، توانسته ۱۱۳ بسته مخرب را از مجموع بیش از ۶۴ هزار بسته جدید شناسایی و حذف کند.

🔸 TypoSmart فناوری مقابله با typosquatting است که سرعت تشخیص را ۷۳–۹۱٪ و false-positive را کاهش ۷۰٪ فراهم کرده و در یک ماه ۳,۶۵۸ بسته مخرب را حذف کرده است.

🔸 پژوهشی در حوزه pinning نشان می‌دهد که قطعاً این روش کافی نیست. گاهی حتی موجب افزایش ریسک در گراف‌های پیچیده npm می‌شود و راهکارهایی نظیر collective pinning پیشنهاد می‌شود.

🔸 تهدید جدیدی به نام slopsquatting  پیش آمده که توسط LLMها ایجاد می‌شود. یعنی بسته‌هایی با نام‌های خیالی که ۲۰٪ از کدهای تولیدشده توسط LLM به آن‌ها اشاره کرده‌اند! پیشرفت‌های آموزشی و validatorها نیاز اصلی هستند.

💡 نمونه‌کد: اجرای تست امنیتی خودکار در CI/CD

 

# GitHub Actions workflow
name: Security Scan

on: [push]

jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Run npm audit
        run: npm audit --production

این اسکن باعث می‌شود قبل از هر دیپلوی، وابستگی‌ها بررسی شوند.

۵. جمع‌بندی و تأکید بر اهمیت موضوع

حملات زنجیره تأمین در مخازن PyPI و npm نشان‌دهنده تغییر واقعی در نوع تهدیدات سایبری هستند:

موضوع

هشدار

رشد ناگهانی حملات

حملات ۱۸۸٪ افزایش داشته‌اند.

تنوع تاکتیک‌ها

DLL hijacking، typosquatting، domain takeover و cross-ecosystem.

تهدید کشورهای APT

گروه‌هایی مثل Lazarus با قربانیان زیاد درگیرند.

ابزارهای حفاظتی ظهور یافته

از MalGuard و TypoSmart تا واکنش پلتفرم‌ها.

نقش حیاتی جامعه و آموزش

توسعه‌دهندگان باید آگاه، محتاط و مجهز به ابزار باشند.

 

LEAVE A REPLY

Please enter your comment!
Please enter your name here