CTF टोकन - अवैध csrf टोकन - गूगल ctf

CTF टोकन्स, CSRF मधील चुका आणि उघड झालेली गुपिते

अनुक्रमणिका

अवश्य वाचा

नवीनतम मनोरंजक पोस्ट्स

लाइव्ह होण्यापूर्वी डेव्हलपर्सनी काय जाणून घेतले पाहिजे

ॲपसेकच्या चुका प्रोडक्शनमध्ये शिरकाव करतातच, विशेषतः जेव्हा त्या उघडपणे दिसणाऱ्या ठिकाणी लपलेल्या असतात. मग ते शिल्लक राहिलेले CTF टोकन असो, अवैध CSRF टोकन असो, किंवा ओपन-सोर्स पॅकेजेसमध्ये दडलेली गुपिते असोत, धोके खरे आहेत. डेव्हलपर्स अनेकदा असे गृहीत धरतात की डेव्हलपमेंट वातावरणात या समस्या निरुपद्रवी असतात, परंतु हल्लेखोरांना सहज मिळणारे लक्ष्य आवडते. लाइव्ह होण्यापूर्वी तुम्हाला काय माहित असणे आवश्यक आहे, ते येथे दिले आहे.

गुप्त माहिती पाठवणे थांबवा: CTF टोकनसुद्धा एक सुरक्षा धोका का आहे

जर तुम्ही कधी 'हे फक्त चाचणीसाठी आहे' असे समजून एखादे गूगल सीटीएफ टोकन किंवा डमी सिक्रेट रेपोमध्ये ठेवले असेल, तर तुम्ही एकटे नाही आहात. पण ते सुरक्षित नाही. सार्वजनिक उदाहरणे दाखवतात की, सुरक्षा आव्हानांमधून उघड झालेली टोकन्ससुद्धा प्रत्यक्ष डेटा चोरीमध्ये कशी वापरली गेली आहेत.

सांकेतिक भाषेत ठेवलेली रहस्ये धोकादायक असतात.:

  • ते बहुतेकदा बिल्ड लॉग्स किंवा डॉकर इमेजेसमध्ये आढळतात.
  • तुमच्या अपेक्षेपेक्षा जास्त वेळा त्यांचा वेगवेगळ्या वातावरणांमध्ये पुनर्वापर केला जातो.
  • रेपो व्हिजिबिलिटी किंवा सीआय आर्टिफॅक्ट्ससोबत वापरल्यास सीटीएफ टोकनचा सुद्धा गैरवापर केला जाऊ शकतो.

याचे एक उदाहरण म्हणजे: एका GitHub Action ने व्हर्बोज आउटपुटमुळे सार्वजनिक लॉगमध्ये टेस्ट क्रेडेंशियल्स लीक केली. ते निर्मितीचे गुपित नव्हते.पण त्यामुळे हल्लेखोरांना एक आराखडा मिळाला.

अवैध CSRF टोकन: एक छुपे ॲप ब्रेकर

क्रॉस-साइट रिक्वेस्ट फॉर्जरी (CSRF) हा एक असा हल्ला आहे जो वापरकर्त्याच्या ब्राउझरला फसवून, तो प्रमाणीकृत असलेल्या वेब ॲप्लिकेशनवर अवांछित विनंत्या करण्यास प्रवृत्त करतो. CSRF संरक्षण सामान्यतः एक टोकन तयार करून कार्य करते, जे स्थिती बदलणाऱ्या कोणत्याही विनंतीसोबत (जसे की फॉर्म सबमिशन किंवा API कॉल्स) पाठवणे आवश्यक असते. जर टोकन नसेल किंवा अवैध असेल, तर ती विनंती अवरोधित केली जाते.

आधुनिक ॲप्समध्ये, विशेषतः सिंगल-पेज ॲप्लिकेशन्स (SPAs) किंवा API-फर्स्ट बॅकएंड्समध्ये, जर ही रचना योग्यरित्या लागू केली नाही तर ती कोणतीही सूचना न देता अयशस्वी होऊ शकते किंवा निष्प्रभ ठरू शकते.

आज CSRF संरक्षण कशामुळे भेदले जाते:

  • चुकीच्या पद्धतीने कॉन्फिगर केलेले SameSite कुकी गुणधर्म.
  • ऑथ फ्लो हे डोमेन किंवा मायक्रो सर्व्हिसेसमध्ये विभागलेले असतात.
  • टोकनचे नूतनीकरण न झाल्यानंतर login स्थिती बदलते.

CSRF भेदण्यासाठी तुम्हाला एखाद्या दुर्भावनापूर्ण स्क्रिप्टची गरज नाही. त्यासाठी फक्त खराब सेशन हाताळणी पुरेशी आहे. एका ॲपने त्याची SameSite कुकी पुन्हा प्रमाणित करण्यात अपयश आले, त्यानंतर loginजोपर्यंत वापरकर्ता संरक्षित मार्गावर पोहोचत नाही, तोपर्यंत टोकनमधील विसंगती लक्षात न येता पुढे जाऊ दिल्या जातात.

महत्त्वाची गोष्ट म्हणजे, अवैध CSRF टोकनचा संदेश दिसणे ही केवळ एक किरकोळ फ्रंटएंड समस्या नाही; ते सेशन फ्लो किंवा टोकन व्यवस्थापनातील एका खऱ्या असुरक्षिततेचे संकेत देऊ शकते. ही केवळ CTF वातावरणात किंवा डेव्ह टेस्टिंगमध्ये दिसणारी गोष्ट नसून, प्रोडक्शन सिस्टीममधील एक व्यापक समस्या आहे.

गुप्त गळती Pipelines: का CI/CD तुमचा पहिला हल्ला करण्याचा पृष्ठभाग – CTF टोकन

तुमचा सीआय pipeline कोड, कॉन्फिग्स, टेस्ट्स आणि लॉग्स या सर्वांवर प्रक्रिया करते. इथेच बहुतेकदा गुपिते उघड होतात.

सामान्य गळतीची ठिकाणे:

  • हार्डकोडेड रहस्ये in .env फायली
  • विस्तृत इन्स्टॉल स्क्रिप्ट्स (उदा., एनपीएम स्थापित) इंजेक्ट केलेल्या टोकनची लॉगिंग करणे.
  • चुकीच्या पद्धतीने कॉन्फिगर केलेले रनर्स किंवा क्रेडेन्शियल्स ऍक्सेस करणाऱ्या तृतीय-पक्षाच्या कृती.

एका विकासकाने एकदा इंजेक्शन दिले सीटीएफ टोकन डीबगिंगसाठी. ते तीन मर्जमधून वाचले, लॉग्समध्ये आले आणि सर्च इंजिनद्वारे इंडेक्स झाल्यानंतर स्वयंचलित स्कॅनर्सनी ते शोधून काढले.

शिफारस केलेले नियंत्रणे:

  • जलद अयशस्वी होणाऱ्या धोरणांसाठी .env रहस्ये मध्ये commits.
  • लॉग सॅनिटायझेशन डीफॉल्टनुसार सक्षम केलेले आहे.
  • गिटलीक्स, ट्रफलहॉग सारखे रिअल-टाइम स्कॅनर किंवा नेटिव्ह गिटहब सिक्रेट डिटेक्शन.

अवलंबित्व देखील लीक होऊ शकते: ओपन सोर्स आणि थर्ड-पार्टी पॅकेजचे धोके

ओपन सोर्स पॅकेजेस ते गुपितांपासून सुरक्षित नसतात. काहींमध्ये तर चुकून खऱ्या चाव्याही अंतर्भूत केलेल्या असतात. अलीकडील एक गुगल सीटीएफ या आव्हानाने नेमक्या याच व्हेक्टरचे अनुकरण केले, ज्यामुळे हे स्पष्ट झाले की चांगल्या हेतूने तयार केलेली पॅकेजेससुद्धा कशी धोका निर्माण करू शकतात.

प्रत्यक्ष उदाहरणे:

  • node_modules/example-creds.json उत्पादन स्वरूपाशी जुळणारे OAuth चाचणी टोकन असलेले.
  • .env.debug स्थानिक विकासादरम्यान API की सह चुकून प्रकाशित झालेल्या फाइल्स.
  • युनिट टेस्ट फिक्स्चर, ज्यामध्ये अंतर्गत वातावरणासाठी असलेले JWT किंवा क्लाउड क्रेडेंशियल्स समाविष्ट आहेत.
  • सोप्या चाचणी आयोजनासाठी वास्तविक टोकन किंवा गुपिते अंतर्भूत करणारे शिल्लक राहिलेले चाचणी हार्नेस.

हे दुर्मिळ अपवाद नाहीत; ते इतक्या वारंवार घडतात की त्यांना प्रणालीगत मानले जाऊ शकते. सार्वजनिक पॅकेजेसमधील सिक्रेट्स स्कॅनिंग टूल्सद्वारे नियमितपणे फ्लॅग केले जातात आणि मॅन्युअल कोड रिव्ह्यूमध्ये अनेकदा दुर्लक्षित राहतात.

सतत स्कॅनिंग का महत्त्वाचे आहे:

  • तृतीय-पक्ष पॅकेजेस पूर्वसूचना न देता बदल होऊ शकतो. अगदी किरकोळ आवृत्तीच्या बदलामुळेही संवेदनशील माहिती असलेली नवीन फाईल समाविष्ट होऊ शकते.
  • मॅन्युअल तपासणी मोठ्या प्रमाणावर करता येत नाही; मोठ्या प्रमाणावर दडलेली गुपिते शोधण्यासाठी स्वयंचलित साधने हाच एकमेव मार्ग आहे.
  • स्वयंचलित धोरणे वापरा जी सिक्रेट्ससाठी अवलंबित्व पुनरावर्तीपणे स्कॅन कराअगदी आतच नोड_मॉड्यूल्सचाचणी डेटा, किंवा .env कलाकृती.

बिल्ड पॉलिसींनी सार्वजनिक पॅकेजेसची तपासणी अंतर्गत कोडप्रमाणेच काटेकोरपणे केली पाहिजे, कारण त्यात एक एम्बेडेड CTF टोकन किंवा शिल्लक राहिलेला भाग असू शकतो. .env फक्त फाईल करणे पुरेसे आहे.

डेव्हऑप्स प्रतिकार उपाय: सुरक्षित CI/CD स्केल होणारे डिफॉल्ट्स

आपल्या सुरक्षित pipeline हे केवळ साधनांबद्दल नाही; तर स्वयंचलित धोरणे तयार करण्याबद्दल आहे आणि guardrails जे धोकादायक नमुने उत्पादनापर्यंत पोहोचण्यापूर्वीच ओळखतात. वास्तविक जगातील CI/CD स्वच्छता यासाठी सतत अंमलबजावणी आणि प्रतिबंधाला प्राधान्य देणारे स्पष्ट नियम आवश्यक आहेत.

सुरक्षिततेसाठी विस्तारित पद्धती pipelines:

  • गुप्त स्कॅनिंग at commit वेळसर्व तपासा commitएस आणि pull requests विशेषतः गुपितांसाठी .env फाइल्स, config.js, YAML फाइल्स, आणि टोकन पॅटर्न जे एकासारखे दिसतात सीटीएफ टोकनउल्लंघन आढळल्यास ब्लॉक आपोआप विलीन होतात.
  • जलद धोरण अंमलबजावणीCI जॉबच्या शेवटी बिल्ड अयशस्वी करण्याची वाट पाहू नका. सिक्रेट्स किंवा चुकीचे कॉन्फिग्स आढळल्यास जॉब लवकर समाप्त होईल अशी धोरणे (पॉलिसी) सेट करा. यामुळे वेळ वाचतो आणि सदोष कोडला पुढे जाण्यापासून प्रतिबंध होतो. pipeline.
  • लॉग तपासणी आणि संपादनलॉग्स हे गोपनीय माहिती उघड होण्याचे एक सामान्य स्त्रोत आहेत. संवेदनशील मूल्यांसाठी लॉग स्क्रबिंग किंवा मास्किंग लागू करा, जसे की अधिकृतता: हेडर्स, कुकीज आणि API टोकन्स. सारख्या नमुन्यांसाठी ऑडिट लॉग. गुगल सीटीएफ ओळखचिन्हे किंवा अंतर्गत टोकन.
  • CSRF संरक्षण कव्हरेजसेशन फ्लो प्रमाणित करणाऱ्या आणि SameSite व क्रॉस-ओरिजिन परिस्थितीत कुकीज व CSRF टोकन्स सुसंगतपणे कार्य करतात याची खात्री करणाऱ्या स्वयंचलित चाचण्या समाविष्ट करा. जिथे सिस्टम त्रुटी निर्माण करू शकते किंवा स्वीकारू शकते, अशा समस्यांना चिन्हांकित करा. अवैध CSRF टोकन.
  • सक्तीचे गुप्त रोटेशनजेव्हा PRs मर्ज केले जातात किंवा जेव्हा लीक्स आढळतात तेव्हा सिक्रेट्स आणि टोकन्स रोटेट करणे आवश्यक आहे. प्रोडक्शन किंवा CI एनवायरनमेंटमध्ये शिळे सिक्रेट्स जास्त काळ टिकून राहू नयेत यासाठी की रोटेशन वर्कफ्लो ऑटोमेट करा.
  • डेव्हलपमेंटमध्ये रेड-टीम सिम्युलेशन टाळा.चाचणीच्या उद्देशाने जरी असले तरी, डेव्हलपमेंट (dev) किंवा सीआय (CI) फ्लोमध्ये ठोस हल्ला कमांड किंवा पेलोड समाविष्ट करणे टाळा. डिटेक्शन लॉजिक दाखवत असल्यास, स्यूडोकोड वापरा (उदा., // उदाहरण टोकन=एबीसी१२३) आणि त्याला नॉन-फंक्शनल प्लेसहोल्डर म्हणून चिन्हांकित करा. खऱ्या एक्सप्लॉइट सिंटॅक्सचा गैरवापर, अगदी चाचण्यांमध्ये सुद्धा, सार्वजनिक लॉगमध्ये किंवा ऑडिट दरम्यान उलट परिणाम करू शकतो.

सुरक्षा जागृतीने प्रत्यक्ष परिस्थितींमध्ये स्वच्छतेची अंमलबजावणी करण्यावर लक्ष केंद्रित केले पाहिजे: commitवेळ स्कॅनिंग, गुप्त माहिती अवरोधित करणे आणि सत्र प्रमाणीकरण, कृत्रिम हल्ला अनुकरण नव्हे. सुरक्षा ही कोड रिव्ह्यूनंतरची पायरी न बनता, ती तुमच्या टीमच्या बिल्ड प्रक्रियेचाच एक भाग बनवणे हे ध्येय आहे. टोकन स्कॅनिंगपासून ते CSRF व्हॅलिडेशनपर्यंत सर्व काही एकाच प्रक्रियेत अंतर्भूत असले पाहिजे. pipelineतुमचा कोड तयार करणारे आणि तपासणारे.

मोठ्या प्रमाणावर धोके ओळखणे: झायजेनी डेव्हसेकऑप्सची अंमलबजावणी करण्यास कशी मदत करते

सुरक्षित DevSecOps चा भाग म्हणून pipeline, झायगेनी संपूर्ण प्रक्रियेत आवश्यक सुरक्षा तपासण्या स्वयंचलित करणारा एक अंमलबजावणी स्तर म्हणून काम करतो. CI/CD जीवनचक्र. चांगल्या पद्धतींची जागा घेणे ही त्याची भूमिका नाही, तर त्या विविध वातावरणांमध्ये मोठ्या प्रमाणावर सातत्याने लागू केल्या जातील याची खात्री करणे ही आहे.

झायजेनी संपूर्ण की नियंत्रणे स्वयंचलित करते pipeline, जसे की:

  • स्कॅनिंग pull requests आणि बांधतो उघड झालेल्या गुपितांसाठी, ज्यामध्ये एकासारखे दिसणारे टोकन समाविष्ट आहेत सीटीएफ टोकन किंवा चाचणी कलाकृतींमध्ये लपवलेली क्रेडेन्शियल्स.
  • तैनाती अवरोधित करणे if .env फाईल्स किंवा ज्ञात संवेदनशील नमुने आढळतात commits, बिल्ड्स, किंवा डिपेंडेंसीज.
  • सक्तीच्या गुप्त रोटेशनची अंमलबजावणी करणे मर्ज झाल्यावर जेव्हा एखादे सिक्रेट आढळते, तेव्हा जुने किंवा असुरक्षित टोकन्स शिल्लक राहणार नाहीत याची खात्री केली जाते.
  • CSRF चुकीच्या कॉन्फिगरेशनची ओळखज्यामध्ये अशा नमुन्यांचा समावेश आहे ज्यामुळे परिणाम होऊ शकतो अवैध CSRF टोकन त्रुटी, सत्र विसंगती किंवा SameSite समस्या दर्शवणे.
  • सीआय-नेटिव्ह इंटिग्रेशन विविध प्लॅटफॉर्मवर (GitHub, GitLab, Jenkins, Bitbucket), डेव्हलपर्सचा वेग कमी न करता विद्यमान वर्कफ्लोमध्ये सुरक्षा धोरणे चालवण्याची परवानगी देते.

ही नियंत्रणे केवळ असणे चांगले नाही; ती मॅन्युअल रिव्ह्यू आणि उत्पादन सुरक्षितता यांमधील अंतर भरून काढतात. सुरक्षा नियम थेट CI p मध्ये अंतर्भूत करूनआयपलाईनमुळे, संघांना त्यांची साधने किंवा सवयी न बदलता त्यांच्यातील उणिवा कमी करता येतात.

अंतिम तपासणी सूची: तुम्ही लाईव्ह जाण्यापूर्वी

प्रक्षेपणापूर्वीची सुरक्षा तपासणी काय प्रमाणित करायचे
कोणतेही हार्डकोडेड सिक्रेट्स किंवा शिल्लक राहिलेले CTF टोकन नाहीत सर्व कोड आणि हिस्ट्रीमध्ये कोणतेही टेस्ट टोकन, CTF टोकन किंवा क्रेडेन्शियल्स नाहीत याची खात्री करा.
CSRF संरक्षण पूर्णपणे प्रमाणित आहे चाचणी loginअवैध CSRF टोकन त्रुटी किंवा SameSite समस्यांसारख्या समस्यांसाठी /सत्र प्रवाह.
CI/CD pipeline निर्जंतुकीकरण केलेले ब्लॉक .env फाईल commitबिल्ड स्टेप्समध्ये गुप्त माहिती उघड होण्यापासून रोखण्यासाठी लॉग स्कॅन करा.
सर्व अवलंबित्वे स्कॅन केली. एम्बेड केलेल्या सिक्रेट्स किंवा टेस्ट डेटासाठी थर्ड-पार्टी पॅकेजेस आणि नोड_मॉड्यूल्सची तपासणी करा.
तैनातीनंतरचे निरीक्षण सक्रिय टोकनच्या गैरवापरावर लक्ष ठेवा, विशेषतः बनावट ऑथोरायझेशन हेडर किंवा टोकनचा पुनर्वापर यावर.
CI धोरणांद्वारे अंमलबजावणी (Google CTF हायजीन) सिक्रेट्स आढळल्यास पीआर ब्लॉक करण्यासाठी आणि रोटेशन सक्तीचे करण्यासाठी स्वयंचलित नियम लागू करा.

ॲपसेकचा खरा धोका केवळ एक्सप्लॉइट्सपुरता मर्यादित नाही. तो आपल्या रोजच्या चुकांशी संबंधित आहे, ज्या आपण ओळखणे सोडून देतो. जिथे महत्त्वाचे आहे तिथून सुरुवात करा: तुमचा कोड आणि तुमचे pipeline.

sca-tools-software-composition-analysis-tools
तुमच्या सॉफ्टवेअरमधील धोक्यांना प्राधान्य द्या, त्यांचे निवारण करा आणि त्यांना सुरक्षित करा.
आपले मोफत खाते मिळवा.
क्रेडिट कार्ड आवश्यक नाही.

तुमचा सॉफ्टवेअर विकास आणि वितरण सुरक्षित करा

झायगेनी प्रोडक्ट सूटसह