TanStack सप्लाई चेन ब्रीच: जब 'विश्वसनीय' सॉफ़्टवेयर आपके खिलाफ हो जाए
TL;DR
TanStack सप्लाई चेन ब्रीच: जब 'विश्वसनीय' सॉफ़्टवेयर आपके खिलाफ हो जाए
11 मई, 2026 को डेवलपर जगत को एक बड़ा झटका लगा। 19:20 से 19:26 UTC के बीच, आधुनिक वेब डेवलपमेंट की आधारशिला माने जाने वाले TanStack npm नेमस्पेस को TeamPCP नामक एक थ्रेट एक्टर ने हाईजैक कर लिया। उन छह मिनटों में, उन्होंने 42 अलग-अलग @tanstack/* पैकेजों में 84 दुर्भावनापूर्ण (malicious) वर्ज़न जारी किए।
यह कोई सामान्य टाइपो-स्क्वाटिंग हमला नहीं था। हमलावरों ने केवल खराब कोड अपलोड नहीं किया; उन्होंने वास्तविक बिल्ड पाइपलाइन से समझौता किया। GitHub Actions में कमजोरियों का फायदा उठाकर, उन्होंने सीधे सप्लाई चेन में एक क्रेडेंशियल-चोरी करने वाला वर्म (worm) इंजेक्ट कर दिया। सबसे चौंकाने वाली बात यह है कि उन सभी दुर्भावनापूर्ण पैकेजों में वैध SLSA (सप्लाई-चेन लेवल्स फॉर सॉफ़्टवेयर आर्टिफैक्ट्स) प्रोवेनेंस मौजूद था।
विश्वास का भ्रम
यह सॉफ़्टवेयर सुरक्षा के लिए एक महत्वपूर्ण मोड़ है। पहली बार, हमने देखा है कि एक दुर्भावनापूर्ण npm पैकेज वैध SLSA बिल्ड लेवल 3 प्रोवेनेंस के साथ आया है। जरा इस पर गौर करें। बिल्ड प्रक्रिया इतनी बुरी तरह से समझौता-ग्रस्त थी कि सुरक्षा सत्यापन (security attestations)—जो यह साबित करने के लिए थे कि पैकेज सुरक्षित है—तकनीकी रूप से सटीक थे, लेकिन मौलिक रूप से दुर्भावनापूर्ण थे।
जैसा कि TanStack द्वारा प्रकाशित घटना के फॉलो-अप में विस्तृत है, कोड को npm install चलाते ही सक्रिय होने के लिए डिज़ाइन किया गया था। एक बार सक्रिय होने के बाद, यह सब कुछ खोजने लगा: AWS कीज़, GCP क्रेडेंशियल्स, Kubernetes कॉन्फ़िगरेशन, GitHub टोकन और SSH कीज़। इसके बाद इसने Session/Oxen नेटवर्क के माध्यम से चुपचाप उस डेटा को बाहर निकाल लिया। यदि आप इन पैकेजों का उपयोग कर रहे थे, तो आपके सीक्रेट्स वास्तव में हमलावरों को रियल-टाइम में प्रसारित किए जा रहे थे।
हमले की संरचना
TeamPCP—जिन्हें आप DeadCatx3, PCPcat, या ShellForce जैसे अन्य नामों से भी जानते होंगे—ने केवल TanStack तक ही सीमित नहीं रखा। उन्होंने "Mini Shai-Hulud" वर्म का एक वेरिएंट तैनात किया। पांच घंटे की अवधि के भीतर, संक्रमण npm और PyPI दोनों पर 170 से अधिक पैकेजों में फैल गया।
npm सप्लाई चेन कॉम्प्रोमाइज पोस्ट-मॉर्टम स्पष्ट करता है कि हालांकि व्यक्तिगत npm अकाउंट्स को हैक नहीं किया गया था, लेकिन हमलावरों ने GitHub Actions pull_request_target वर्कफ़्लो के माध्यम से एक बैक डोर ढूंढ लिया। उन्होंने अनिवार्य रूप से CI/CD पाइपलाइन को उनके लिए कठिन काम करने के लिए धोखा दिया।
| मीट्रिक | विवरण |
|---|---|
| घटना की तिथि | 11 मई, 2026 (19:20–19:26 UTC) |
| प्रभावित पैकेज | 42 @tanstack/* पैकेज |
| दुर्भावनापूर्ण वर्ज़न | कुल 84 वर्ज़न |
| प्रोवेनेंस स्थिति | वैध SLSA बिल्ड लेवल 3 (समझौता-ग्रस्त) |
| डेटा चोरी की विधि | Session/Oxen नेटवर्क |
| मुख्य थ्रेट एक्टर | TeamPCP / DeadCatx3 |
पारंपरिक सुरक्षा विफल क्यों हुई?
हमने वर्षों से डेवलपर्स को "प्रोवेनेंस की जांच करने" और "हस्ताक्षरों को सत्यापित करने" के लिए कहा है। लेकिन क्या होगा जब बिल्ड वातावरण ही झूठ बोल रहा हो?
चूंकि समझौता स्रोत पर हुआ था, इसलिए स्वचालित ट्रस्ट मैकेनिज्म ने वही किया जिसके लिए उन्हें प्रोग्राम किया गया था: उन्होंने एक "विश्वसनीय" बिल्ड को सत्यापित किया जिसमें दुर्भावनापूर्ण पेलोड शामिल था। यह केवल TanStack की समस्या नहीं है। हमने Trivy, Checkmarx KICS, LiteLLM और Bitwarden CLI पर हालिया हमलों में भी इसी तरह के पैटर्न देखे हैं। यह स्पष्ट है कि हम CI/CD इंफ्रास्ट्रक्चर के केंद्र पर लक्षित एक समन्वित, उच्च-स्तरीय अभियान देख रहे हैं।
यदि आप समझौता-ग्रस्त वर्ज़न का उपयोग कर रहे थे, तो आधिकारिक सुरक्षा सलाह स्पष्ट है: सबसे बुरे की उम्मीद करें। यह तथ्य कि TeamPCP, Vect रैनसमवेयर समूह के साथ मिलकर काम कर रहा है, ताबूत में आखिरी कील है। वे केवल डेटा नहीं चुरा रहे हैं; वे बाद में पूर्ण पैमाने पर विनाशकारी हमलों की सुविधा के लिए क्रेडेंशियल्स एकत्र कर रहे हैं।
सफाई: अब आपको क्या करने की आवश्यकता है
यदि आपकी CI/CD पाइपलाइनों ने इन पैकेजों को छुआ है, तो आपको ऐसे कार्य करने की आवश्यकता है जैसे कि आपका पूरा वातावरण समझौता-ग्रस्त हो गया है। स्थिति की वास्तविकता यह है:
- इसे नष्ट करें (या कम से कम ऑडिट करें): हर उस CI/CD वातावरण या देव मशीन को अपराध स्थल मानें जिसने इन पैकेजों को छुआ है।
- सब कुछ रोटेट करें: केवल अपने पासवर्ड न बदलें। हर उस API की, क्लाउड टोकन और SSH की को रोटेट करें जिसे उन मशीनों द्वारा एक्सेस किया जा सकता था। मान लें कि वे पहले से ही हमलावरों के हाथों में हैं।
- सुरागों का पता लगाएं: 11 मई के आसपास किसी भी
npm installगतिविधि या अजीब आउटबाउंड नेटवर्क ट्रैफ़िक के लिए अपने CI/CD लॉग्स की जांच करें। - अपनी डिपेंडेंसी साफ करें: आधिकारिक पैकेज रजिस्ट्री ट्रैकिंग में सूचीबद्ध सुरक्षित वर्ज़न पर अपडेट करें। यह न मानें कि आपकी वर्तमान लॉकफ़ाइल सुरक्षित है।
- लेटरल मूवमेंट पर नज़र रखें: चूंकि ये हमलावर रैनसमवेयर से जुड़े हैं, इसलिए अपने आंतरिक नेटवर्क पर कड़ी नज़र रखें। वे आपके बिल्ड सर्वर से आपके प्रोडक्शन वातावरण में जाने की कोशिश कर रहे हैं।
ऑटोमेशन की नाजुकता
"Mini Shai-Hulud" वर्म एक गंभीर याद दिलाता है कि हमारी आधुनिक बिल्ड पाइपलाइनें विश्वास के एक नाजुक जाल से जुड़ी हुई हैं। GitHub Actions को लक्षित करके, TeamPCP ने उन परिधि सुरक्षा (perimeter defenses) को प्रभावी ढंग से दरकिनार कर दिया जिन्हें हमने एक दशक से बनाया है। हम इस धारणा के तहत काम कर रहे थे कि यदि बिल्ड वातावरण स्वचालित और "सिद्ध" है, तो यह सुरक्षित होना चाहिए। यह घटना साबित करती है कि यह धारणा एक खतरनाक भ्रम है।
जो लोग गहराई में जाना चाहते हैं, उनके लिए TanStack राउटर रिपॉजिटरी इश्यू ट्रैकर में इस बात का गहरा विश्लेषण है कि OIDC टोकन निष्कर्षण वास्तव में कैसे काम करता है। यह इस बात पर एक गंभीर अध्ययन है कि एक पाइपलाइन में कितनी आसानी से हेरफेर किया जा सकता है।
जैसे-जैसे जांच आगे बढ़ रही है, डेवलपर समुदाय के लिए संदेश सरल है: पाइपलाइन पर आँख बंद करके भरोसा करना बंद करें। हम एक ऐसे बिंदु पर पहुँच गए हैं जहाँ बिल्ड वातावरण की अखंडता को अब माना नहीं जा सकता—इसे सत्यापित, ऑडिट और उसी संदेह के साथ देखा जाना चाहिए जो हम कोड पर लागू करते हैं। सतर्क रहें, क्योंकि थ्रेट एक्टर्स निश्चित रूप से सो नहीं रहे हैं।