
CVE-2018-16323 के लिए उपकरण
CVE-2018-16323 XBM छवियों को प्रोसेस करने में मेमोरी लीक है। XBM छवि को दूसरे छवि प्रकार में बदलने के बाद आप छवि डेटा से लीक हुए मेमोरी बाइट्स निकाल सकते हैं।
d4d द्वारा खोजा गया।
CVE-2018-16323 का PoC उत्पन्न करने के लिए एक काफी सरल उपकरण। निर्देशिका samples में उपयोग में आसान कुछ पूर्व-निर्मित PoC हैं।
इस उपकरण का उपयोग करने के लिए आपको imagemagick स्थापित करना चाहिए:
apt-get -y install imagemagick
और इसे जांचें:
convert -v
कोई भी संस्करण उपयुक्त है।
Usage poc generator: ./XBadManners.sh gen WIDTHxHEIGHT NAME.xbm [minimal]
Example gen: ./XBadManners.sh gen 512x512 poc.xbm
Example gen: ./XBadManners.sh gen 1024x1024 poc_minimal.xbm minimal
Usage result recovery: ./XBadManners.sh recover SAVED_PREVIEW.png|jpeg|gif|etc
Example recovery: ./XBadManners.sh recover avatar.png
मोड minimal आपको BurpSuite या जो भी आप चाहते हैं, में पेस्ट करने के लिए सबसे छोटा संभव XBM बॉडी उत्पन्न करने की अनुमति देता है। मिनिमल मोड का परीक्षण किया गया है और यह ठीक काम करता है। आप इस मोड में कोई भी चौड़ाई और ऊंचाई सेट कर सकते हैं।
ध्यान दें कि आप एक ही छवि का उपयोग करके बहुत सारी मेमोरी निकाल सकते हैं। एकमात्र प्रतिबंध बैकएंड द्वारा उत्पादित छवि के अधिकतम आकार की सीमा है।
आप preview.png को पुनर्प्राप्त करने का प्रयास कर सकते हैं। यदि आपको आउटपुट में पढ़ने योग्य शब्द मिलते हैं तो इसका मतलब है कि सब कुछ ठीक काम कर रहा है।
./XBadManners.sh gen 512x512 poc.xbm चलाएं./XBadManners.sh recover result.png चलाएंयदि पूर्वावलोकन एक अपलोड से दूसरे में महत्वपूर्ण रूप से बदलता है तो अच्छा संकेत है।
रीकवरी मोड त्वरित जांच के लिए बनाया गया है और किसी भी ImageMagick समर्थित छवि प्रारूप के लिए ठीक काम करना चाहिए, लेकिन इसका परीक्षण केवल png, jpeg और gif के लिए किया गया था। आप स्क्रिप्ट को संशोधित करके छवि से मेमोरी निष्कर्षण के तर्क को ट्यून कर सकते हैं (यह सरल लेकिन बदसूरत है)

XBM एक काले और सफेद प्रारूप है। इसलिए, कोई भी परिणाम एक प्रकार के ज़ेबरा जैसा दिखेगा (यदि आपकी कल्पना अच्छी है)। मूल रूप से, अधिक काला == अधिक डेटा निकाला गया।
हर ImageMagick का बिल्ड उस कमिट के बाद और उस कमिट से पहले कमजोर है।