FlawOpen

flawopen.com/XSS/SVG upload

क्या SVG upload में XSS का जोखिम है?

संदर्भ पृष्ठ
संक्षिप्त उत्तर

अपलोड किया गया SVG केवल pixels नहीं, एक document है; इसमें scripts और event handlers जैसे सक्रिय तत्व हो सकते हैं। Script चलेगी या नहीं, यह browser context पर निर्भर है। <img> में यह सीमित image context में रहता है; inline, direct navigation या document embedding सक्रिय हो सकते हैं।

SVG दूसरे image formats से कैसे अलग है

PNG या JPEG के विपरीत, SVG XML है और इसमें active content हो सकता है। Browser <img> जैसे सीमित image contexts में scripts बंद करता है, लेकिन SVG को सीधे खोलने, <object>, <iframe> या <embed> से document की तरह embed करने, या markup को inline डालने पर यह लागू नहीं होता। App origin पर active document की तरह serve की गई user profile image stored XSS बन सकती है। व्यवहार context पर निर्भर है; extension और MIME content sanitization नहीं हैं।

Uploads को सुरक्षित करना

अक्सर पूछे जाने वाले प्रश्न

क्या file extension या MIME type जाँचना पर्याप्त है?

['क्या file extension या MIME type जाँचना पर्याप्त है?', 'नहीं। Extension और घोषित MIME metadata हैं, active document content की जाँच नहीं। वास्तविक format सत्यापित करें, फिर SVG-aware allowlist sanitizer लगाएँ या SVG सुविधाएँ आवश्यक न हों तो raster में बदलें।']

संदर्भ

यह भी देखें क्रॉस-साइट स्क्रिप्टिंग (XSS, CWE-79): यह कैसे काम करती है और हर भाषा में इसे कैसे रोकें — flawopen.com Vue v-html से XSS का जोखिम WKWebView: अविश्वसनीय HTML सुरक्षित? Reflected, stored और DOM-based XSS में क्या अंतर है? Android addJavascriptInterface के सुरक्षा जोखिम Angular XSS सुरक्षा: सुरक्षित defaults और bypass APIs MIME sniffing XSS: Content-Type और nosniff