
Docker-आधारित प्रूफ-ऑफ-कॉन्सेप्ट जो NVIDIA Triton inference server में CVE-2025-23320 को प्रदर्शित करता है, साझा मेमोरी कुंजी रिसाव का फायदा उठाकर unregister/register रेस कंडीशन के माध्यम से आउट-ऑफ-बाउंड राइट को ट्रिगर करता है।
CVE-2025-23320 का प्रदर्शन
यह रिपोजिटरी CVE-2025-23320 को दोहराती है, जो CWE-209, संवेदनशील जानकारी वाले त्रुटि संदेश का निर्माण (CVSS स्कोर: 7.5) प्रदर्शित करती है। यह भेद्यता सभी NVIDIA Triton inference सर्वर 25.06 और उससे पहले के संस्करणों में मौजूद है।
यह docker सेटअप एक नेटवर्क चलाता है जिसमें एक NVIDIA triton inference सर्वर और एक हमला करने वाला क्लाइंट शामिल है। यह वातावरण यह भी सुनिश्चित करता है कि क्लाइंट linux पर चले, ताकि CVE सभी ऑपरेटिंग सिस्टम पर दोहराया जा सके।
बनाने/चलाने के लिए
docker compose --build-no-cache
यदि यह पहली बार चल रहा है, तो इसमें कुछ समय लग सकता है, क्योंकि यह github से NVIDIA triton सर्वर संस्करण 25.06 इमेज खींचता है
फिर:
docker compose up
POC
हमला करने वाला क्लाइंट स्क्रिप्ट स्वचालित रूप से चलती है, जो इस रूप में एक त्रुटि संदेश आउटपुट करती है: Failed to increase the shared memory pool size for key 'triton_python_backend_shm_region_8a463f1a-fcd6-4c1b-b4b5-df63f9c512ad' to 54525952 bytes.
यह कुंजी प्राप्त करने के बाद, एक हमलावर कई कार्य कर सकता है। हमारे कोड कार्यान्वयन में, हमलावर ने Triton के unregister API का उपयोग किया। चूंकि Triton यह सत्यापित नहीं करता है कि इस API को कौन बुला रहा है, फ़ंक्शन निष्पादित हो जाएगा। यदि हमलावर बाद में register फ़ंक्शन का उपयोग करता है, सफलतापूर्वक एक रेस कंडीशन ट्रिगर करता है, तो इसके परिणामस्वरूप एक आउट-ऑफ-बाउंड (OOB) राइट होगा।