
सरल एप्लिकेशन जिसमें CVE-2022-45688 भेद्यता है
यह प्रोजेक्ट json.org में CVE-2022-45688 को दर्शाता है -- एक सरल एप्लिकेशन XML2JSONConverter है जो इनपुट से XML पढ़ता है, उसे JSON में बदलता है और कंसोल पर pretty-print करता है।
दुर्भावनापूर्ण इनपुट का उपयोग करने पर, एप्लिकेशन स्टैकओवरफ्लो के साथ क्रैश हो जाता है।
टेस्ट केस CVE202245688Test इस व्यवहार को दर्शाता है, इसे mvn test चलाकर निष्पादित किया जा सकता है।
विभिन्न विश्लेषण चलाने के लिए कई sh स्क्रिप्ट हैं, परिणाम रिपोर्ट scan-results में पाई जा सकती हैं।
SCA रिपोर्ट (GitHub actions के रूप में सेट किए गए रिपोर्ट सहित) CVE-2022-45688 की रिपोर्ट करने में विफल रहती है, हालांकि शामिल टेस्ट स्पष्ट रूप से दर्शाता है कि यह मौजूद है। इसका कारण यह है कि केवल मेटा-डेटा विश्लेषण (अर्थात घोषित निर्भरताएँ) पर आधारित उपकरण यह नहीं समझ पाते कि प्रोजेक्ट json.org के एक शेडेड संस्करण (एक असुरक्षित संस्करण) का उपयोग करता है।
ध्यान दें कि शेडिंग मैन्युअल रूप से की गई है, यानी Maven shade प्लगइन का उपयोग नहीं किया गया है। हमारा हालिया शोध बताता है कि यह सॉफ्टवेयर संरचना विश्लेषण में गलत नकारात्मक का एक सामान्य स्रोत है।
pom.xml में SBOM को CycloneDX प्रारूप में उत्पन्न करने के लिए एक प्लगइन है। ऐसा करने के लिए, mvn cyclonedx:makePackageBom चलाएँ, SBOM target/ में json और xml प्रारूप में पाया जा सकता है।