वर्डप्रेस एक लोकप्रिय सामग्री व्यवस्थापन प्रणाली हो जसले प्रयोगकर्ताहरूलाई विभिन्न प्लगइनहरूको मद्दतले वेबसाइटहरू सिर्जना र व्यवस्थापन गर्न अनुमति दिन्छ। ६०,००० भन्दा बढी वेबसाइटहरूले व्यापक रूपमा प्रयोग गर्ने यस्तै प्लगइन "वर्डप्रेस अनलाइन बुकिङ र तालिका प्लगइन - बुकली" हो। बुकलीले अनलाइन बुकिङलाई सुव्यवस्थित गर्छ र आरक्षण प्रक्रियालाई स्वचालित बनाउँछ। यद्यपि, धेरै अन्य वर्डप्रेस प्लगइनहरू जस्तै, यो पनि आक्रमणकारीहरूद्वारा शोषणको लागि कमजोर हुन सक्छ।
मार्च २०२३ मा, क्विक हिल सेक्युरिटी ल्याब्सले बुकली प्लगइनमा एउटा जोखिम पहिचान गर्यो। हामीले त्रुटि पत्ता लगाउने बित्तिकै, हामीले जोखिमलाई तुरुन्तै सम्बोधन गर्ने सुनिश्चित गर्न जिम्मेवार खुलासा प्रक्रियाहरू सुरु गर्यौं। मार्च ३, २०२३ मा, हामीले त्यस दिनको सुरुमा जोखिम पत्ता लगाएपछि बुकली प्लगइन समर्थन टोलीलाई सम्पर्क गर्यौं र उनीहरूलाई पूर्ण प्राविधिक विवरणहरू प्रदान गर्यौं। हामीले plugins@wordpress.org र Wordfence (CNA) लाई पनि जोखिमको बारेमा सूचित गर्यौं। जोखिमलाई तुरुन्तै स्वीकार गरियो र CVE-२०२३-११७२ पहिचानकर्ता तोकियो। बुकली टोलीले प्याच विकास गर्ने काम गर्यो र मार्च ९, २०२३ मा संस्करण २१.५.१ मा जारी गर्यो।
यस पोस्टमा, हामी Bookly प्लगइनमा पाइने जोखिमको मूल कारणको गहन विश्लेषण गर्नेछौं, साथै समस्यालाई सम्बोधन गर्न जारी गरिएको प्याचको पनि जाँच गर्नेछौं।
CVE विश्लेषण - २०२३-११७२ - नाम मार्फत अप्रमाणित भण्डारण गरिएको क्रस-साइट स्क्रिप्टिङ:
हाम्रो अनुसन्धानले पत्ता लगायो कि बुकली प्लगइनको "फुल नेम" फिल्ड अपर्याप्त इनपुट सेनिटाइजेसन र आउटपुट एस्केपिङको कारणले गर्दा स्टोर गरिएको क्रस-साइट स्क्रिप्टिङ (XSS) आक्रमणहरूको लागि कमजोर थियो। हामीले थप अनुसन्धान गर्यौं र पत्ता लगायौं कि प्लगइनले प्रयोगकर्ताको "फुल नेम" इनपुटलाई धेरै फाइलहरूमा पुन: प्रयोग गर्दछ, यदि इनपुटलाई राम्ररी सेनिटाइज गरिएको छैन र दुर्भावनापूर्ण कोड इन्जेक्सन रोक्नको लागि एस्केप गरिएको छैन भने सुरक्षा उल्लङ्घनको जोखिम उल्लेखनीय रूपमा बढ्छ। तलको कोड स्निपेटले "फुल नेम" फिल्डको मान कसरी प्रयोग गरिन्छ भनेर देखाउँछ:

तल देखाइए अनुसार, "Full name" फिल्ड मान $codes चरमा भण्डारण गरिएको छ।

त्यसपछि, क्यालेन्डरको टूलटिपमा चर $codes प्रयोग गरिन्छ।

यद्यपि, कार्यक्रमको पछिल्ला चरणहरूमा $codes चर प्रयोग गर्दा उचित सरसफाइ उपायहरूको अभाव देखिन्छ।

समस्या समाधान गर्दै: प्याचमा एक नजर
जोखिम समाधान गर्ने प्याचको जाँच गरेपछि, हामीले पत्ता लगायौं कि $codes चर अब कार्यक्रममा कुनै पनि सम्भावित सुरक्षा उल्लङ्घनहरू रोक्नको लागि पर्याप्त रूपमा सेनिटाइज गरिएको छ। उल्लेखनीय रूपमा, प्याचले $codes चरलाई सेनिटाइज गर्न र कोडमा अन्यत्र प्रयोग गर्नु अघि आक्रमणलाई कम गर्न PHP को "strip_tags" प्रकार्य प्रयोग गर्दछ।

निष्कर्ष
यस पोस्टले Bookly प्लगइनमा रहेको एउटा जोखिमलाई हाइलाइट गर्यो जसले अप्रमाणित आक्रमणकारीहरूलाई दुर्भावनापूर्ण स्क्रिप्टहरू इन्जेक्ट गर्न अनुमति दिन सक्छ, जसले गर्दा साइट मालिकले प्लगइनबाट क्यालेन्डर टूलटिप पहुँच गर्दा उनीहरूको सम्पूर्ण साइटलाई जोखिममा पार्न सक्छ। धन्यबाद, संस्करण २१.५.१ मा जोखिम पूर्ण रूपमा समाधान गरिएको छ। हामी दृढताका साथ सिफारिस गर्छौं कि WordPress साइट मालिकहरूले सम्भावित आक्रमणहरू रोक्नको लागि आफ्नो साइटलाई प्लगइनको पछिल्लो प्याच गरिएको संस्करण (हाल लेख्ने समयमा संस्करण २१.६) मा अपडेट गर्नुहोस्।
सबै SEQRITE र क्विक हिलका ग्राहकहरूलाई निम्न हस्ताक्षरहरू मार्फत यस जोखिमलाई लक्षित गर्ने कुनै पनि शोषणबाट सुरक्षित गरिएको छ:
- HTTP/CVE-2023-1172!VK.46842
- HTTP/CVE-2023-1172!VK.47543



