6 पॉइंट द्वारा darjeeling 6 일 전 | 4 टिप्पणियां | WhatsApp पर शेयर करें

JFrog की सुरक्षा शोध टीम ने पाया कि npm का @bitwarden/cli 2026.4.0 वर्शन हाईजैक कर लिया गया था। इसमें वैध Bitwarden metadata और branding को जस का तस रखा गया, जबकि केवल preinstall स्क्रिप्ट और bw binary entry point को malicious loader (bw_setup.js) से बदल दिया गया।

काम करने का तरीका

इंस्टॉल के समय loader पहले GitHub से Bun runtime डाउनलोड करता है, फिर obfuscated JavaScript payload (bw1.js) चलाता है। Node.js की जगह Bun का उपयोग करना खुद detection evasion की एक रणनीति है।

यह payload तीन collectors के जरिए डेवलपर workstations और CI environments से credentials को व्यापक रूप से इकट्ठा करता है।

  • filesystem collector: SSH keys (~/.ssh/), Git credentials (.git-credentials), npm tokens (~/.npmrc), .env, AWS credentials (~/.aws/credentials), GCP credentials (~/.config/gcloud/credentials.db) आदि
  • shell/environment collector: gh auth token कमांड चलाना, process.env स्कैन करके GitHub और npm token patterns का मिलान
  • GitHub Actions collector: token permission वाले repo में workflow inject करके Actions secrets तक निकालना

खास तौर पर ध्यान देने वाली बात यह है कि ~/.claude.json, ~/.claude/mcp.json, ~/.kiro/settings/mcp.json जैसी AI tools और MCP configuration files भी संग्रह के दायरे में शामिल थीं।

दोहरे exfiltration paths

चुराया गया डेटा gzip compression के बाद AES-256-GCM + RSA-OAEP hybrid encryption से गुजरकर भेजा जाता है।

  • पहला path: audit.checkmarx.cx/v1/telemetry पर HTTPS POST (वैध security service जैसा भेष)
  • दूसरा path (GitHub का दुरुपयोग): पहला path विफल होने पर GitHub commit messages में LongLiveTheResistanceAgainstMachines marker के साथ double Base64 encoded PAT खोजकर निकाला जाता है। beautifulcastle marker और RSA signature verification के जरिए वैकल्पिक exfiltration domain भी dynamically recover किया जाता है। अंत में पीड़ित के GitHub account में नया repo बनाकर encrypted JSON को results/ directory में अपलोड किया जाता है।

संक्रमण की पहचान

अंदर मौजूद वैध Bitwarden CLI metadata 2026.3.0 है, लेकिन package root 2026.4.0 दिखाता है। इससे विश्लेषकों ने निष्कर्ष निकाला कि यह वैध build pipeline नहीं था, बल्कि बाहर से एक malicious layer चढ़ाई गई थी।

प्रतिक्रिया के तरीके

अगर इस version की install history है, तो मानना चाहिए कि उस host के सभी credentials लीक हो चुके हैं।

  • npm uninstall -g @bitwarden/cli और cache साफ करना
  • GitHub PAT, npm tokens, AWS access keys का पूरा rotation
  • Azure Key Vault / GCP Secret Manager audit logs की जांच
  • GitHub Actions workflows में unauthorized execution history की समीक्षा
  • audit.checkmarx.cx और 94.154.172.43 को network blocklist में डालना
  • AI tool configuration files (Claude, Kiro आदि) में sensitive information के exposure की जांच

यह सिर्फ एक सामान्य npm credential stealer नहीं, बल्कि supply chain compromise + multi-stage secret theft + GitHub infrastructure weaponization को जोड़ने वाला परिष्कृत हमला है।

4 टिप्पणियां

 
savvykang 6 일 전

> THE MOST TRUSTED PASSWORD MANAGER
> Defend against hackers and data breaches

कंपनी की वेबसाइट का टैगलाइन इतना बेमानी लगा कि मैंने अकाउंट ही बंद कर दिया।

 
t7vonn 6 일 전

डरावना है;; मैं इसे हर दिन इस्तेमाल करता था, किस्मत अच्छी रही कि homebrew वाला हिस्सा हाइजैक नहीं हुआ
उफ़… लगता है अब सभी npm global लाइब्रेरीज़ को फिलहाल हटा देना चाहिए या फिर pre/postinstall बंद कर देना चाहिए

 
lamanus 5 일 전

homebrew ने postinstall को डिफ़ॉल्ट रूप से disable करके सिर्फ़ अपवादस्वरूप allow करने वाला बदलाव कर दिया है। इसे किस्मत कहें शायद, मैं npm देखे बिना repo tag से update करता हूँ, इसलिए इस बार का version बच गया। हाल में npm cooldown भी लागू हुआ है, इसलिए शायद npm देखा भी होता तो भी यह publish नहीं हुआ होता।

 
sanghunka 6 일 전

वाह, यह तो काफ़ी चौंकाने वाला है।