1 पॉइंट द्वारा GN⁺ 2025-04-01 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • सार्वजनिक GitHub secret key (Secret) की वजह से GitHub के static analysis tool CodeQL पर supply chain attack का खतरा पैदा हुआ
  • संबंधित key 1.022 सेकंड तक वैध थी, और इस समय के भीतर हमलावर GitHub Actions workflow में मनमाना code execution कर सकते थे
  • इस भेद्यता को सार्वजनिक CVE के रूप में दर्ज किया गया है: CVE-2025-24362

मुख्य नुकसान के परिदृश्य

हमलावर इस भेद्यता के जरिए निम्नलिखित हमले कर सकते थे:

  • CodeQL का उपयोग करने वाली repositories के source code का लीक होना (बौद्धिक संपदा का उल्लंघन)
  • GitHub Actions secret keys की चोरी और आगे के हमलों की संभावना
  • आंतरिक infrastructure में CodeQL workflow के जरिए code execution
  • GitHub Actions Cache का उपयोग करने वाले workflows के secrets तक की चोरी संभव

हमले की पहचान और प्रयोग की प्रक्रिया

  • Praetorian research team ने GitHub Actions में बनने वाले workflow artifacts में शामिल secret keys को scan करने वाला tool विकसित किया
  • CodeQL से जुड़े repository में secret key शामिल debug artifact मिला
  • key के वैध रहने के दौरान हमलावर branch/tag बना सकते हैं और files push कर सकते हैं, यह साबित करने के लिए PoC tool artifact_racer.py बनाया और चलाया गया

मुख्य प्रयोग परिणाम

  • हमलावर इस token से:
    • नया branch बना सकते थे
    • files push कर सकते थे
    • tags जोड़ सकते थे
  • CodeQL डिफ़ॉल्ट रूप से v3 tag को refer करता है, और हमलावर उस tag को overwrite कर सकते थे → सभी CodeQL उपयोगकर्ताओं तक malicious code पहुँचाना संभव

फैलाव की संभावना: यह खतरनाक क्यों है?

  • अधिकांश उपयोगकर्ता CodeQL को manually configure नहीं करते, बल्कि GitHub repository settings में "Enable CodeQL" बटन पर क्लिक करते हैं
  • इस समय अपने-आप configure होने वाला workflow github/codeql-action repository को refer करता है, और यह v3 tag आधारित है
  • अगर हमलावर v3 tag को malicious commit से overwrite कर दें, तो असंख्य projects में अपने-आप malicious code execute हो सकता है

अतिरिक्त हमला संभावना: cache poisoning

  • डिफ़ॉल्ट CodeQL workflow GitHub Actions Cache का उपयोग करता है
  • इसके जरिए हमलावर build pipeline में malicious cache inject कर सकते हैं, और बाद के workflow में secrets की चोरी तथा आंतरिक access हासिल कर सकते हैं
  • प्रमुख संभावित प्रभावित लक्ष्य:

GitHub की प्रतिक्रिया और patch

  • 22 जनवरी 2025 को भेद्यता की रिपोर्ट के बाद, GitHub ने 3 घंटे के भीतर:
    • vulnerable workflow बंद किया
    • secrets upload रोकने के लिए PR दर्ज किया
    • patched version जारी किया: CodeQL Action v3.28.3
  • आधिकारिक सुरक्षा advisory: GHSA-vqf5-2xx6-9wfm

निवारण उपाय

  • workflow में artifacts upload करते समय upload होने वाली files को सीमित रखें
  • environment variables या .git/config, _temp/ directory की files शामिल होने से सावधान रहें
  • GITHUB_TOKEN को केवल read-only permission दें
  • upload से पहले secret scan करने की सिफारिश की जाती है (Nosey Parker जैसे tools का उपयोग)

निष्कर्ष

  • CodeQL की default configuration में भी असंख्य projects supply chain attack के जोखिम में आ सकते हैं
  • GitHub Actions की security vulnerabilities अब भी गंभीर खतरा हैं, और community की लगातार सतर्कता व defense strategy की ज़रूरत है

संबंधित जानकारी

1 टिप्पणियां

 
GN⁺ 2025-04-01
Hacker News टिप्पणियाँ
  • यह राय है कि अगर GitHub के immutable actions रिलीज़ हो जाएँ, तो 70% से ज़्यादा हमलों का समाधान हो सकता है
    • लगता है कि GitHub की साप्ताहिक समस्याएँ इसे रिलीज़ कराने पर मजबूर करेंगी
  • इस बात का कोई ज़िक्र नहीं है कि temporary token को नई deployment बनाने और artifact attestation बनाने की अनुमति क्यों थी
    • समस्या के समाधान के लिए debug log बंद कर दिए गए, लेकिन इस पर कोई जवाब नहीं है कि temporary token की permissions को code analysis engine के लिए अधिक उपयुक्त बनाया गया या नहीं
  • यह विश्वास लगातार मज़बूत हो रहा है कि CI और CD पूरी तरह अलग-अलग environment होने चाहिए
    • CI के compromise होने से CD से जुड़े token leak नहीं होने चाहिए
  • GitHub का response time काफ़ी प्रभावशाली है
  • जिनका surname Prater है, उनके नज़रिए से praetorian.com का मालिक होना अच्छा लगेगा — ऐसी राय है
  • public GitHub actions का उपयोग समस्याएँ पैदा कर सकता है, और workflow प्रक्रिया का विश्लेषण किए बिना उनका उपयोग करना और भी जोखिम भरा है
    • इसके बजाय woodpecker या किसी अन्य बेहतरीन CI builder (circle, travis, gitlab आदि) का उपयोग करके self-host करने की सिफारिश की गई है
  • OpenZFS PR में CodeQL का उपयोग किया जा रहा है, और OpenZFS में कोई समस्या नहीं थी — यह उल्लेख है
    • OpenZFS का code कोई secret नहीं है
  • यह राय है कि क्या समस्या सच में हल हो गई है, इस पर जिज्ञासा बनी हुई है
  • शिकायत है कि साइट की performance इतनी खराब है कि scroll करना लगभग असंभव है