حمله زنجیره تأمین(Supply Chain Attack) چیست؟
در عصر دیجیتال امروز، تهدیدات سایبری به طور مداوم در حال تکامل هستند. یکی از پیچیدهترین و خطرناکترین این تهدیدها، حمله زنجیره تأمین یا Supply Chain Attack است. حمله زنجیره تأمین به نوعی حمله سایبری گفته میشود که در آن، مهاجمان به جای حمله مستقیم به سازمان هدف، ابزارها یا خدمات شخص ثالثی را که سازمان به آنها اعتماد دارد، آلوده میکنند. معمولاً در این حملات، مهاجم ابتدا به تأمینکنندگان نرمافزار یا خدمات دسترسی پیدا کرده و کد مخرب را در آنها جاسازی میکند. سپس این کد به مشتریان این تأمینکنندگان منتقل شده و باعث نفوذ به سیستمهای آنها میشود. این حملات به طور غیرمستقیم انجام میگیرند. تصور کنید شما یک فروشگاه آنلاین دارید و برای پردازش پرداختهای مشتریان از یک افزونه پرداخت آنلاین محبوب و معتبر استفاده میکند. روزی شرکت سازنده این افزونه بهروزرسانی جدیدی منتشر میکند که شما بلافاصله نصب میکنید. اما در واقع، هکرها به سرورهای این شرکت نفوذ کرده و کد مخربی را در این بهروزرسانی جاسازی کردهاند که اطلاعات کارتهای اعتباری مشتریان شما را به سرور آنها ارسال میکند. شما و مشتریانتان به این افزونه اعتماد دارید، اما ناخواسته به سارقان اطلاعات بانکی کمک میکنید. این مثال ساده و قابل فهمی از حملات زنجیره تأمین است که نشان میدهد چگونه مهاجمان با مورد هدف قرار دادن یک حلقه ضعیف در زنجیره (شرکت سازنده افزونه) میتوانند به هدف نهایی خود (اطلاعات مالی مشتریان) دست یابند، بدون آنکه مستقیماً به سیستم شما حمله کنند. خطرناکترین جنبه این حمله، اعتمادی است که همه طرفین به منبع آلوده دارند.
حملهی Supply Chain چگونه عمل میکند؟
حملهی Supply Chain بر پایهی سوءاستفاده از روابط و اعتماد میان سازمانها شکل میگیرد. در محیط کسبوکار امروز، هر سازمانی ناگزیر به همکاری با شرکتهای دیگر است. این ارتباطات، لایهای از اعتماد ایجاد میکنند که بدون تدابیر امنیتی مناسب، به دروازهای برای ورود مهاجمان تبدیل میشود. در حملهی Supply Chain، مهاجم آسیبپذیرترین حلقه در زنجیرهی اعتماد را مورد هدف قرار میدهد. حتی اگر سازمان اصلی دارای سیستمهای امنیتی قدرتمندی باشد، مهاجم میتواند از طریق یک شریک یا تأمینکننده با امنیت کمتر نفوذ کرده و با عبور از موانع حفاظتی، به شبکهی اصلی دسترسی پیدا کند. تنها یک نقطهی ضعف کافی است تا کل ساختار دفاعی سازمان به خطر بیفتد. یکی از اهداف متداول در این نوع حملات، شرکتهای ارائهدهندهی خدمات مدیریتشده یا MSPها هستند. این شرکتها که مسئولیت مدیریت زیرساخت، شبکه یا نگهداری سیستمهای سازمانی را بر عهده دارند، معمولاً دسترسی عمیقی به شبکههای مشتریان خود دارند. اگر مهاجمان بتوانند امنیت یک MSP را نقض کنند، عملاً مسیر نفوذ به چندین شبکهی دیگر نیز برای آنها هموار میشود. نوع دیگری از حملهی Supply Chain، نفوذ به فرآیندهای خودکار توسعهی نرمافزار است که با عنوان CI/CD شناخته میشود. در این روش، مهاجم با دستکاری یکی از اجزای حیاتی در این زنجیره، میتواند کدهای مخرب یا آسیبپذیریهای امنیتی را مستقیماً به محصول نهایی تزریق کند. از آنجا که این محصول مورد اعتماد مشتریان است، پس از انتشار، بدون هیچ مانعی وارد سیستمهای آنها شده و باعث گسترش آلودگی در سطح وسیع میشود.
تکنیکهای رایج نفوذ در حملات Supply Chain
حملات Supply Chain به شکلهای مختلفی انجام میشوند، اما وجه اشتراک همهی آنها این است که با سوءاستفاده از نقاط ضعف امنیتی در محصولات یا خدمات مورد اعتماد شرکتها، زمینهی نفوذ فراهم میشود. برخی از این روشها عبارتاند از:
- سرقت گواهینامههای دیجیتال(Stolen certificates): اگر مهاجمی موفق به سرقت گواهی امنیتی یک شرکت شود(گواهیای که معمولاً برای اثبات اصالت یا سلامت یک نرمافزار یا محصول صادر میشود) میتواند از آن برای انتشار بدافزار استفاده کند. در این حالت، بدافزار به ظاهر از سوی شرکت معتبری تأییدیه گرفته و کاربران بدون شک آن را اجرا میکنند.
- آلوده کردن ابزارهای توسعه یا زیرساختهای برنامهنویسی: مهاجمان ممکن است ابزارهای مورد استفاده برای ساخت نرمافزارها را مورد هدف قرار دهند. آنها با نفوذ به این ابزارها، پیش از آنکه حتی فرآیند توسعه آغاز شود، کدهای مخرب یا ضعفهای امنیتی را به شکل پنهان در بستر توسعه وارد میکنند. در این روش آلودگی در مراحل ابتدایی چرخه تولید نرمافزار رخ میدهد و میتواند به صورت خودکار در تمامی محصولات نهایی گسترش یابد. نمونههای معروف این نوع حمله شامل آلودهسازی کامپایلرها و سیستمهای Version Control مانند Git است که تأثیری گسترده و طولانیمدت بر امنیت سایبری سازمانها دارند.
- بدافزار از پیش نصبشده روی دستگاهها: در برخی موارد، بدافزارها از قبل روی دستگاههایی مانند گوشی همراه، فلشمموری (USB)، دوربین یا سایر ابزارهای قابلحمل نصب میشوند. به محض آنکه کاربر این تجهیزات را به سیستم یا شبکهی خود متصل کند، کد مخرب فعال میشود و زمینهی نفوذ ایجاد میگردد.
- کد مخرب در فریمور(firmware) سختافزارها: اگر مهاجم موفق شود کد مخربی را در فریمور یکی از قطعات دیجیتال وارد کند، میتواند از این طریق به سیستم یا شبکههای هدف دسترسی پیدا کند. این نوع حمله معمولاً توسط نرمافزارهای امنیتی شناسایی نمیشود. فریمورها معمولاً برای کنترل عملکرد قطعات سختافزاری مانند دیسکها، کارتهای شبکه یا حتی دستگاههای کوچک مانند دوربینها و حسگرها استفاده میشوند. در صورت وجود کد مخرب در فریمور، مهاجم میتواند بهطور پنهانی به دادهها دسترسی پیدا کرده، آنها را دستکاری کرده یا حتی کنترل کامل سیستم را در اختیار بگیرد، بدون آنکه سیستمهای امنیتی متوجه این نفوذ شوند.
انواع حملات Supply Chain:
- Browser-based attacks: در این نوع حملات، مهاجمان کدهای مخرب را در مرورگرهای کاربران نهایی اجرا میکنند. آنها ممکن است به طور خاص کتابخانههای جاوااسکریپت یا افزونههای مرورگر را مورد هدف قرار دهند، که به طور خودکار کد را در دستگاههای کاربران اجرا میکنند. علاوه بر این، مهاجمان میتوانند از این طریق به اطلاعات حساس ذخیرهشده در مرورگر دسترسی پیدا کنند، مانند کوکیها و سایر دادههای شخصی کاربران، که میتواند برای سرقت هویت یا انجام فعالیتهای مخرب دیگر مورد استفاده قرار گیرد.
- Software attacks: در این نوع حملات، بدافزارها به طور پنهانی در بهروزرسانیهای نرمافزاری جاسازی میشوند. زمانی که کاربران به طور خودکار این بهروزرسانیها را دانلود و نصب میکنند، بدون آنکه آگاه باشند، دستگاههای آنها به ابزارهایی برای نفوذ مهاجمان تبدیل میشود.
- Open-source attacks: این حملات از آسیبپذیریهای موجود در کدهای open source بهرهبرداری میکنند. کدهای open source که به طور عمومی در دسترس هستند، میتوانند به سازمانها کمک کنند تا روند توسعه نرمافزار و برنامهها را تسریع کرده و هزینهها را کاهش دهند. با این حال، این ویژگیها ممکن است به نقطه ضعفی تبدیل شوند؛ زیرا مهاجمان میتوانند با دستکاری آسیبپذیریهای شناختهشده یا پنهان کردن بدافزارها در این کدها، بهراحتی به سیستمها یا دستگاههای کاربران نفوذ کنند. علاوه بر این، به دلیل عدم نظارت دقیق بر کدهای open source، حتی پس از شناسایی آسیبپذیریها، زمان لازم برای رفع آنها ممکن است طولانی باشد که این امر فرصت بیشتری برای بهرهبرداری از نقاط ضعف به مهاجمان میدهد.
- JavaScript attacks: در این نوع حملات، مهاجمان از آسیبپذیریهای موجود در کدهای JavaScript بهرهبرداری میکنند. آنها میتوانند اسکریپتهای مخرب را در صفحات وب جاسازی کنند به طوری که به صورت خودکار و بلافاصله پس از بارگذاری صفحه توسط کاربر اجرا شوند. این اسکریپتهای مخرب ممکن است منجر به سرقت اطلاعات حساس، تغییر رفتار صفحه یا دسترسی غیرمجاز به سیستمهای کاربری شوند. با توجه به گستردگی استفاده از JavaScript در توسعه وب، این نوع حملات میتواند تأثیرات گستردهای بر امنیت کاربران و سازمانها داشته باشد.
- Magecart attacks: در این نوع حملات، مهاجمان با استفاده از کدهایJavaScript مخرب، اطلاعات حساس کارتهای اعتباری کاربران را از فرمهای پرداخت وبسایتها سرقت میکنند. این فرمها اغلب توسط اشخاص ثالث مدیریت میشوند و به دلیل ظاهر قانونی و قابل اعتماد آنها، کاربران معمولاً متوجه تغییر یا نفوذ در آنها نمیشوند. به همین دلیل، این روش حمله که به نام “formjacking” نیز شناخته میشود، میتواند باعث سوءاستفادههای مالی گسترده و کاهش اعتماد مشتریان به سامانههای پرداخت آنلاین گردد. علاوه بر این، مهاجمان با تغییر در کدهای موجود به شکل پنهانی، امکان دسترسی به دادههای حساس را بدون ایجاد نشانههای آشکار فراهم میکنند.
- Watering hole attacks: در این حملات، مهاجمان وبسایتهایی را که توسط تعداد زیادی از کاربران استفاده میشوند، شناسایی میکنند. مهاجمان ممکن است از تاکتیکهای مختلفی برای شناسایی آسیبپذیریهای امنیتی در داخل سایت استفاده کنند و سپس از آنها برای ارسال بدافزار به سیستم کاربران بهرهبرداری کنند.
- Cryptojacking attacks: در این نوع حملات، مهاجمان منابع پردازشی مورد نیاز برای استخراج ارز دیجیتال را میدزدند. این کار میتواند از چند طریق انجام شود: از طریق وارد کردن کد یا تبلیغات مخرب به وبسایتها یا استفاده از تاکتیکهای فیشینگ برای ارسال لینکهای آلوده به بدافزار به سیستمهای کاربران.
نمونههای واقعی از حملات Supply Chain:
در اینجا به برخی از نمونههای واقعی حملات Supply Chain که شرکتهای بزرگ را تحت تأثیر قرار دادهاند، اشاره میکنیم:
- MOVEit: در سال ۲۰۲۳، این حمله Supply Chain از یک آسیبپذیری SQL injection در نرمافزار MOVEit، که پلتفرم مدیریتشده انتقال فایل است، بهرهبرداری کرد. این حمله بیش از ۱۳۰ سازمان در سراسر جهان را تحت تأثیر قرار داد و آسیبهای زیادی به آنها وارد کرد.
- SolarWinds: در سال ۲۰۲۰، مهاجمان یک backdoor را به فرآیند بهروزرسانی نرمافزار شرکت SolarWinds وارد کردند. این backdoor به مهاجمان این امکان را داد که به طور غیرمجاز به سرورهای تولیدی سازمانها و نهادهای دولتی دسترسی پیدا کنند. نتیجه این حمله، سرقت گسترده دادهها و بروز مشکلات امنیتی جدی در چندین سازمان بود که تاثیرات زیادی بر امنیت اطلاعات آنها داشت.
- Codecov: مهاجمان با آلوده کردن ابزار Codecov Bash Uploader، گزارشهای خودکاری را به مشتریان ارسال کرده و با وارد کردن کدهای مخرب در اسکریپتهای آن، به جاسوسی از دادههای مشتریان و سرقت اطلاعات حساس از سرورهای Codecov پرداختند.
- ASUS: این حمله در سال ۲۰۱۸ رخ داد و طبق تحقیقات انجامشده توسط محققان شرکت Symantec، مهاجمان از قابلیت بهروزرسانی خودکار در نرمافزارهای ASUS سوءاستفاده کردند. در این حمله، بدافزار از طریق بهروزرسانی خودکار به سیستمهای کاربران وارد شد و تا ۵۰۰,۰۰۰ دستگاه در سراسر جهان را تحت تأثیر قرار داد.
تأثیرات حملات supply chain چیست؟
حملات supply chain میتوانند تأثیرات مخربی بر درآمد شرکتها گذاشته و روابط آنها با ارائهدهندگان خدمات یا محصولات را خدشهدار کنند. این حملات ممکن است منجر به پیامدهای زیر شوند:
- نشت و افشای دادهها: در بسیاری از حملات supply chain، به ویژه حملات مبتنی بر سختافزار، کدهای مخرب با شنود اطلاعات، دادهها را به سروری تحت کنترل مهاجم ارسال میکنند. این حملات میتوانند منجر به سرقت اطلاعات حساس شوند.
- نصب بدافزار: کد مخرب اجرا شده درون یک نرمافزار میتواند برای دانلود و نصب بدافزار روی شبکه سازمانی استفاده شود. مهاجمان از این طریق میتوانند انواع مختلفی از بدافزارها مانند باجافزار، روتکیت، کیلاگر، ویروس و… را تزریق کنند.
- خسارت مالی: اگر مهاجم موفق شود یکی از کارکنان را فریب دهد تا مبلغی به یک حساب جعلی واریز کند یا یک فاکتور جعلی پرداخت شود، سازمان ممکن است میلیونها واحد پولی متضرر شود.
- اختلال در عملیات سازمان: اجرای موفق یک حمله supply chain میتواند به شدت فعالیتهای عملیاتی سازمان را مختل کرده و باعث توقف کار، تأخیر در روندها و کاهش چشمگیر بهرهوری شود.
- آسیب به شهرت: هنگامی که این حملات بر کیفیت یا قابلیت اطمینان محصولات یا خدمات یک سازمان تأثیر میگذارند، اعتبار آن به شدت آسیب میبیند که میتواند منجر به از دست رفتن اعتماد مشتریان یا شرکای تجاری شود.
روشهای مقابله با حملات supply chain
بهمنظور مقابله با حملات supply chain، سازمانها میتوانند از روشهای متعددی بهرهبرداری کنند که شامل بهبود زیرساختهای امنیت سایبری عمومی و تضمین امنیت نقاط انتهایی در برابر نفوذ میشود. در ادامه، برخی از بهترین شیوهها برای مقابله با این نوع حملات ارائه شده است:
- بازبینی زیرساختهای غیرمجاز Shadow IT: Shadow IT به سیستمها، نرمافزارها و خدماتی اشاره دارد که کارکنان بدون تأیید رسمی بخش فناوری اطلاعات سازمان استفاده میکنند. این سیستمها میتوانند نقاط ضعف قابل توجهی در دفاع سایبری سازمان ایجاد کنند. شناسایی و بازبینی منظم این زیرساختهای غیررسمی، گام مهمی در کاهش خطر حملات Supply Chain است. پس از شناسایی، باید ارزیابی دقیقی از ریسکهای امنیتی مرتبط با هر سیستم انجام شود. سازمانها باید در خصوص یکپارچهسازی این سیستمها در زیرساخت رسمی (در صورتی که ارزش تجاری قابل توجهی دارند) یا حذف آنها (اگر ریسکهای غیرقابل قبولی ایجاد میکنند) تصمیمگیری کنند. این فرآیند باید با حساسیت و با در نظر گرفتن نیازهای کاربران انجام شود تا از روی آوردن دوباره آنها به راهحلهای غیررسمی جلوگیری شود.
- ایجاد فهرستی بهروز و کارآمد از داراییهای نرمافزاری: هر نرمافزاری، صرفنظر از میزان مفید بودن آن، میتواند یک نقطه آسیبپذیر در سیستم ایجاد کند. با تهیه و نگهداری فهرستی بهروز از تمامی نرمافزارهایی که در شرکت شما استفاده میشود، قادر خواهید بود به طور مؤثر شناسایی کنید که کدام برنامهها، بهروزرسانیها یا ارتقاها ممکن است باعث بروز مشکلات امنیتی شوند. همچنین با دستهبندی نرمافزارها بر اساس سطح امنیتی آنها، میتوانید تعداد مسیرهای احتمالی حملات را کاهش دهید.
- بررسی اقدامات امنیتی شرکای تجاری و ارزیابی تطابق آن با استانداردهای سازمانی: ضروری است که هر یک از شرکتها یا سازمانهایی که با آنها همکاری دارید، اطلاعات جامع و شفافی درباره تدابیر امنیتی خود ارائه دهند. این اطلاعات به شما کمک میکند تا میزان ایمنی محصولات یا خدمات دریافتی را ارزیابی کنید. همچنین پیشنهاد میشود این اطلاعات توسط یک متخصص امنیت سایبری بررسی شود تا اطمینان حاصل شود که اقدامات امنیتی آنها متناسب با سطح ریسک و الزامات امنیتی سازمان شماست.
- بهرهگیری از ابزارهای حفاظتی در سمت کلاینت: در معماری کلاینت سرور، کاربران معمولاً دادهها و فایلها را از سمت سرور دریافت میکنند. استفاده از ابزارهای امنیتی در سمت کلاینت این امکان را فراهم میسازد که محتوای دریافتی پیش از اجرا یا نصب، به صورت خودکار بررسی و فیلتر شود. این ابزارها میتوانند کدهای مخرب را شناسایی کرده و پیش از آنکه آسیبی به سامانه وارد شود، فرآیند اجرا یا نصب آنها را متوقف کنند. چنین مکانیزمی نقش مؤثری در پیشگیری از حملات supply chain دارد.
- استفاده از ابزارهای تشخیص و پاسخ به تهدیدات در نقاط انتهایی (EDR):حملات supply chain اغلب از نقاط انتهایی آسیبپذیر بهعنوان مسیر ورود به شبکه سازمانی سوءاستفاده میکنند. پیادهسازی راهکارهای تشخیص و پاسخ به تهدیدات در نقاط انتهایی (Endpoint Detection and Response) امکان شناسایی و خنثیسازی این حملات را در همان مراحل اولیه فراهم میسازد. این ابزارها با ایجاد لایهای محافظ در سطح نقاط انتهایی، مانع از نفوذ مهاجمان میشوند و از گسترش تهدیدات به سایر بخشهای شبکه جلوگیری میکنند. بهاینترتیب، امنیت کلی زیرساخت سازمان بهطور چشمگیری افزایش مییابد.
- اجرای سیاستهای یکپارچگی کد: اجرای سیاستهای یکپارچگی کد، یکی از مؤثرترین روشها برای کاهش خطر حملات Supply Chain است. در این رویکرد، سازمان سیستمی را پیادهسازی میکند که تنها به نرمافزارهای مجاز و تأیید شده اجازه اجرا در محیط سازمانی را میدهد.
- ایجاد زیرساخت امن برای توسعه و بهروزرسانی نرم افزار: زیرساخت امن برای فرآیندهای توسعه و بهروزرسانی نرمافزار، نقش حیاتی در جلوگیری از حملات Supply Chain دارد. این زیرساخت باید شامل نصب منظم و بهموقع پچهای امنیتی(security patch) برای تمامی نرمافزارها و سیستمعاملها باشد. همچنین استفاده از روشهای احراز هویت چندمرحلهای برای دسترسی به سیستمهای حساس، لایه امنیتی مهم دیگری است که دسترسی غیرمجاز را بسیار دشوار میسازد. علاوه بر این، نظارت مستمر بر فعالیتهای مشکوک در زیرساخت فناوری اطلاعات میتواند به شناسایی و واکنش سریع به هرگونه نفوذ احتمالی کمک کند.
- آموزش و آگاهیبخشی کارکنان: عامل انسانی یکی از مهمترین عناصر در زنجیره امنیت سایبری است. آموزش و آگاهیبخشی مداوم کارکنان در خصوص تهدیدات سایبری و روشهای تشخیص حملات Supply Chain، میتواند به طور چشمگیری احتمال موفقیت این حملات را کاهش دهد. کارکنان آموزشدیده میتوانند نشانههای مشکوک را شناسایی کرده و به موقع گزارش دهند. ایجاد سازوکاری مشخص برای گزارش فوری مشکلات امنیتی، امکان واکنش سریع به تهدیدات را فراهم میکند.
- استفاده از اصل حداقل دسترسی: اصل حداقل دسترسی یکی از بنیادیترین مفاهیم در امنیت سایبری است که بر محدود کردن دسترسی کاربران تنها به منابعی که برای انجام وظایفشان ضروری است، تأکید دارد. تفکیک وظایف و مسئولیتها میان افراد مختلف، به طوری که هیچ فردی به تنهایی امکان اجرای تمام مراحل یک فرآیند حساس را نداشته باشد، لایه امنیتی دیگری میافزاید. بازنگری دورهای و بهروزرسانی سطوح دسترسی کاربران نیز اهمیت بالایی دارد تا اطمینان حاصل شود که دسترسیها متناسب با نقشهای فعلی افراد است.