یک کمپین typosquatting در حال انجام، توسعه دهندگان را از طریق صدها کتابخانه محبوب جاوا اسکریپت که تعداد دانلودهای هفتگی آنها به دهها میلیون میرسد، مورد نفوذ قرار داده است. هدف از این حمله، نفوذ به سیستم توسعه دهندگان توسط بدافزارهای رباینده اطلاعات و جاسوس افزارها است.
Typosquatting نوعی حمله مهندسی اجتماعی است که به اشتباهاتی مانند اشتباهات تایپی توسط کاربران اینترنت هنگام وارد کردن آدرس وب سایت در مرورگر وب متکی است. کاربری که به طور تصادفی یک آدرس وب سایت نادرست را وارد می کند ممکن است به هرURL، از جمله یک وب سایت جایگزین متعلق به یک مهاجم سایبری هدایت شود.
Typosquatting که با نامهای URL hijacking، sting site، cousin domain و fake URL نیز شناخته میشود، معمولاً شامل فریب دادن کاربران برای بازدید از وب سایتهای مخرب با URLهایی است که غلط املایی رایج در آدرس URL خود دارند.
حمله typosquatting اخیر، توسعه دهندگان npm را با صدها نسخه تایپسکوات شده از نمونههای قانونی هدف قرار میدهد تا آنها را فریب دهد، بدافزارهای چند پلتفرمی را دانلود و بر روی سیستم خود اجرا کنند.
بر اساس یافتههای جداگانه Checkmarx، Phylum و Socket که در چند روز گذشته منتشر شدهاند، این حمله از قراردادهای هوشمند اتریوم برای توزیع آدرس سرور فرماندهی و کنترل (C2) استفاده میکند که مسدود کردن آن را سختتر خواهد کرد.
این فعالیت اولین بار در 31 اکتبر 2024 شناسایی شد و تاکنون بیش از 287 پکیج typosquat شده در رجیستری پکیج npm منتشر شده است.
هنگامی که این کمپین به طور جدی شروع به گسترش کرد، مشخص شد که مهاجم (یا مهاجمان) در مراحل اولیه حمله، توسعه دهندگانی را هدف قرار میدهد که قصد استفاده از کتابخانههای محبوب Puppeteer، Bignum.js و ارزهای دیجیتال مختلف را دارند.
کاربران احتمالا هنگام جستجوی این پکیجها، به اشتباه “Pupeter” یا ” Pupetier” را تایپ کردهاند و سپس به وب سایت مخرب هدایت شدهاند. کتابخانه معروف Puppeteer تقریباً چهار میلیون دانلود در هفته دارد!
پکیجهای آلوده، حاوی جاوا اسکریپت مبهم هستند که در طول فرآیند نصب اجرا میشوند که در نهایت منجر به بازیابی یک باینری از یک سرور راه دور مبتنی بر سیستم عامل خواهد شد.
این باینری موجب تداوم دسترسی میگردد و اطلاعات حساس مربوط به دستگاه هک شده را به C2 ارسال میکند.
Socket نیز فاش کرد که محققان این شرکت، یک پکیج مشکوک به نام haski را مشاهده کردهاند که به نظر میرسد یک تایپوسکوات برای husky است. haski مانند سایر پکیجهای مخرب، از نام کتابخانه بسیار پرکاربرد git hooks الگوبرداری کرده است که بیش از 12.۶ میلیون دانلود در هفته دارد. با این حال، Haski حاوی کد مبهم میباشد و به آدرس کیف پول اتریوم لینک داده شده است.
استفاده از فناوری بلاکچین برای زیرساخت فرماندهی و کنترل و ماهیت غیرمتمرکز زنجیره بلوکی، رویکرد جدیدی را برای حملات زنجیره تامین npm نشان میدهد، رویکردی که انسداد سنتی C2 را بیاثر میکند چرا که شناسایی این نوع حملات توزیع بدافزار را دشوارتر میکند.
کد جاوا اسکریپت با قرارداد هوشمند اتریوم با استفاده از کتابخانه ethers.js برای واکشی آدرس IP تعامل دارد. لازم به ذکر است که کمپینی به نام EtherHiding از تاکتیک مشابهی با استفاده از قراردادهای زنجیره هوشمند بایننس (BSC) برای انتقال به فاز بعدی زنجیره حمله استفاده کرده است.
در حال حاضر مشخص نیست که چه کسی پشت این حملات قرار دارد، اما تیم تحقیقاتی Socket Threat در بررسیهای خود متوجه شده است که پیامهای خطایی وجود دارد که به زبان روسی نوشته شدهاند. از این رو، احتمال میرود که هکرها روسی زبان باشند.
چندی پیش نیز در اواخر ماه اکتبر، پلتفرم Phylum چندین پکیج مشکوک منتشر شده در رجیستری npm را شناسایی کرد که برای استخراج کلیدهای خصوصی اتریوم و دسترسی از راه دور به دستگاهها از طریق پروتکل SSH طراحی شده بود.
پکیجها تلاش میکردند تا با نوشتن کلید عمومی SSH هکر در فایل authorized_keys کاربر root، به دستگاه قربانی دسترسی پیدا کنند. رویکرد این حمله به گونهای بود که کد مخرب مستقیماً در پکیجها تعبیه شده بود و به هکر اجازه میداد تا کلیدهای خصوصی اتریوم را در دامنه “ether-sign[.]com” تحت کنترل خود ذخیره کند.
سوء استفاده از پکیجهای قانونی npm و آلوده کردن آنها به بدافزار به یکی از تاکتیکهای رایج هکرها تبدیل شده است. توسعهدهندگان نرم افزار، اهداف با ارزشی در این نوع حملات به شمار میآیند، از این رو میبایست، به هنگام دانلود پکیجها از مخازن نرمافزار هوشیار باشند.