प्रभाव
आक्रमणकारी [S2] इत्यस्य दुर्बल-अनुप्रयोगस्य उपयोक्तृभ्यः संवेदनशीलं, प्रमाणीकृतं आँकडान् चोरयितुं शक्नोति । यदि कश्चन उपयोक्ता दुर्बल-एप्लिकेशन-मध्ये प्रवेशं कुर्वन् दुर्भावनापूर्ण-जालस्थलं गच्छति तर्हि दुर्भावनापूर्ण-साइट् एप्लिकेशनस्य API -इत्यत्र पार-मूल-अनुरोधं कर्तुं शक्नोति तथा च [S1][S2] इति प्रतिक्रियाः पठितुं शक्नोति। एतेन निजीसूचनायाः चोरी भवितुं शक्नोति, यत्र उपयोक्तृप्रोफाइलः, CSRF टोकनः, अथवा निजीसन्देशाः [S2] सन्ति ।
मूलकारणम्
CORS एकं HTTP-शीर्षक-आधारितं तन्त्रम् अस्ति यत् सर्वरान् निर्दिष्टुं अनुमतिं ददाति यत् कोऽपि मूलः (डोमेन, योजना, अथवा पोर्ट्) संसाधनं लोड् कर्तुं अनुमतिः अस्ति [S1] सामान्यतया दुर्बलताः तदा उत्पद्यन्ते यदा सर्वरस्य CORS नीतिः अत्यधिकं लचीलः अथवा दुर्बलतया कार्यान्विता भवति [S2]:
- प्रतिबिम्बितं उत्पत्तिशीर्षकं: केचन सर्वराः क्लायन्ट्-अनुरोधात्
Origin-शीर्षकं पठन्ति तथा चAccess-Control-Allow-Origin(ACAO) प्रतिक्रियाशीर्षके [S2] इत्यत्र पुनः प्रतिध्वनयन्ति एतेन प्रभावीरूपेण कस्यापि वेबसाइट् [S2] इति संसाधनं प्राप्तुं शक्यते । - दुर्विन्यस्ताः वाइल्डकार्डाः: यद्यपि
*वाइल्डकार्डः कस्यापि मूलस्य संसाधनं प्राप्तुं अनुमतिं ददाति, तथापि तस्य उपयोगः तादृशानां अनुरोधानाम् कृते न कर्तुं शक्यते येषां प्रमाणपत्राणां आवश्यकता भवति (यथा कुकीजः अथवा प्राधिकरणशीर्षकाणि) [S3]. विकासकाः प्रायः [S2] इति अनुरोधस्य आधारेण ACAO शीर्षकं गतिशीलरूपेण जनयित्वा एतत् बाईपासं कर्तुं प्रयतन्ते । - 'null' श्वेतसूची: केचन अनुप्रयोगाः
nullमूलस्य श्वेतसूचीं कुर्वन्ति, यत् पुनर्निर्देशित-अनुरोधैः अथवा स्थानीय-सञ्चिकाभिः प्रेरितुं शक्यते, दुर्भावनापूर्ण-साइट्-भ्यःnull-मूलस्य रूपेण भेसं कर्तुं अनुमतिं ददाति [S2][S3]. - पार्सिंग त्रुटयः:
Originहेडरस्य प्रमाणीकरणसमये regex अथवा स्ट्रिंग् मेलने त्रुटयः आक्रमणकारिणःtrusted-domain.com.attacker.com[S2] इत्यादीनां डोमेनानां उपयोगं कर्तुं शक्नुवन्ति।
इदं ज्ञातव्यं यत् CORS क्रॉस्-साइट् अनुरोधजालसाजी (CSRF) [S2] इत्यस्य विरुद्धं रक्षणं नास्ति।
कंक्रीट फिक्स
- स्थिर श्वेतसूचीं उपयुज्यताम्: अनुरोधस्य
Originहेडर [S2] तःAccess-Control-Allow-Originशीर्षकं गतिशीलरूपेण जनयितुं परिहरन्तु। तस्य स्थाने, अनुरोधस्य उत्पत्तिं विश्वसनीयडोमेन [S3] इत्यस्य हार्डकोडेड् सूचीयाः विरुद्धं तुलनां कुर्वन्तु । - 'शून्य' उत्पत्तितः परिहरन्तु: अनुमतमूलस्य स्वस्य श्वेतसूचौ [S2]
nullकदापि न समाविष्टं कुर्वन्तु। - प्रमाणपत्राणि प्रतिबन्धयन्तु: केवलं
Access-Control-Allow-Credentials: trueसेट् कुर्वन्तु यदि विशिष्टपार-मूलपरस्परक्रिया [S3] कृते सर्वथा आवश्यकं भवति। - उचितसत्यापनस्य उपयोगं कुर्वन्तु: यदि भवान् बहुमूलानां समर्थनं कर्तुं अर्हति, तर्हि
Originशीर्षकस्य सत्यापनतर्कः सुदृढः इति सुनिश्चितं कुर्वन्तु तथा च उपडोमेन अथवा समानरूपेण दृश्यमानैः डोमेनैः [S2] द्वारा बाईपासं कर्तुं न शक्यते।
FixVibe तस्य परीक्षणं कथं करोति
FixVibe इदानीं गेटेड् सक्रियपरीक्षारूपेण एतत् समाविष्टं करोति । डोमेनसत्यापनस्य अनन्तरं active.cors सिंथेटिक आक्रमणकारीमूलस्य सह समानमूलस्य API अनुरोधं प्रेषयति तथा च CORS प्रतिक्रियाशीर्षकाणां समीक्षां करोति इदं प्रतिवेदनं मनमाना मूलं, वाइल्डकार्डप्रमाणपत्रं CORS, तथा च सार्वजनिकसम्पत्त्याः शोरस्य परिहारं कुर्वन् गैर-सार्वजनिक API अन्त्यबिन्दुषु व्यापकरूपेण खुले CORS प्रतिबिम्बयति स्म
