35 malicious npm packages linked
هجوم سلسلة التوريد المرتبط بكوريا الشمالية يستهدف المطورين عبر 35 حزمة npm ضارة
مقدمة
كشفت أبحاث أمنية عن دفعة جديدة من حزم npm الضارة المرتبطة بعملية "المقابلة المعدية" (Contagious Interview) التي تنفذها جهة يشتبه بكونها مدعومة من كوريا الشمالية.
تفاصيل الهجوم
وفقًا لشركة Socket، تم تحميل 35 حزمة خبيثة من خلال 24 حساب npm، وقد تم تنزيلها أكثر من 4000 مرة. تشمل الحزم المكتشفة ما يلي:
- react-plaid-sdk
- sumsub-node-websdk
- vite-plugin-next-refresh
- vite-plugin-purify
- nextjs-insight
- vite-plugin-svgn
- node-loggers
- react-logs
- reactbootstraps
- framer-motion-ext
- serverlog-dispatch
- mongo-errorlog
- next-log-patcher
- vite-plugin-tools
- pixel-percent
- test-topdev-logger-v1
- test-topdev-logger-v3
- server-log-engine
- logbin-nodejs
- vite-loader-svg
- struct-logger
- flexible-loggers
- beautiful-plugins
- chalk-config
- jsonpacks
- jsonspecific
- jsonsecs
- util-buffers
- blur-plugins
- proc-watch
- node-orm-mongoose
- prior-config
- use-videos
- lucide-node
- router-parse
من بين هذه الحزم، لا تزال ست حزم متاحة للتحميل على npm حتى الآن: react-plaid-sdk، sumsub-node-websdk، vite-plugin-next-refresh، vite-loader-svg، node-orm-mongoose، وrouter-parse.
البنية الهندسية للهجوم
تحتوي جميع الحزم الضارة على محمّل مشفّر يُعرف باسم HexEval، يعمل على جمع معلومات المضيف بعد التثبيت، ثم يرسل حزمة تحميل إضافية تُسلم برنامج سرقة JavaScript يُدعى BeaverTail.
يقوم BeaverTail بعد ذلك بتنزيل وتشغيل خلفية Python خبيثة تُعرف باسم InvisibleFerret، مما يمكّن المهاجمين من جمع بيانات حساسة والسيطرة عن بعد على الأجهزة المصابة.
ووصفت باحثة Socket كيريل بويتشينكو هذه البنية بأنها "تشبه دمى العش"، مما يصعّب على أدوات الفحص الساكنة والتدقيق اليدوي اكتشافها. وأضافت أنه تم العثور على حزمة أخرى تضم مسجل ضغطات مفاتيح متعدد المنصات لتتبع كل ضغطة، ما يعكس قدرة المهاجمين على تخصيص الحزم لمستوى مراقبة أكثر عمقًا عند الحاجة.
الخلفية وسياق الهجوم
بدأت حملة Contagious Interview في أواخر 2023، ونشرتها لأول مرة شركة Palo Alto Networks Unit 42. تستهدف أنظمة المطورين بهدف سرقة العملات المشفرة والبيانات، وينسبها الخبراء إلى جهات مدعومة من الدولة الكورية الشمالية.
تمت متابعة الحملة تحت عدة أسماء منها CL‑STA‑0240 وDeceptiveDevelopment وFamous Chollima وUNC5342 وغيرها.
شهدت مراحل لاحقة من الحملة استخدام أسلوب ClickFix الاجتماعي الهندسي لنشر برمجيات خبيثة أخرى مثل GolangGhost وPylangGhost، ويرجع له نموذج فرعي يُعرف بـClickFake Interview.
آلية الاستهداف عبر npm
يعتمد جزء npm من العملية على تظاهر المهاجمين بأنهم موظفو توظيف على LinkedIn، حيث يرسلون رسائل إلى مطورين يبحثون عن عمل، ويزوّدونهم بمشاريع تعليمية عبر GitHub أو Bitbucket تضم الحزم الضارة.
يُطلب من المطورين استنساخ المشاريع وتشغيلها في بيئة محلية (خارج الحاويات) خلال المقابلة المفتعلة، مما يؤدي لتثبيت البرمجيات الضارة دون وعيهم.
خاتمة
تعكس هذه الحملة قدرة عالية على التنفيذ من كوريا الشمالية، حيث تستغل سلسلة التوريد، والهندسة الاجتماعية، وتقنيات التسلل في الزمن الحقيقي للوصول إلى أنظمة المطورين من خلال الحزم المفتوحة المصدر.
من خلال تضمين محمّلات خبيثة كـHexEval ضمن حزم npm زائفة، يتم تجاوز دفاعات النظام المكتبية والسيطرة فعليًا على الأجهزة المستهدفة.