
Apache Struts 2 RCE CVE-2023-50164 के लिए असुरक्षित डॉकर कंटेनर
Apache ने हाल ही में CVE-2023-50164 के संबंध में एक सलाह जारी की है, जो 9.8 की गंभीरता रेटिंग वाली एक महत्वपूर्ण भेद्यता है जो Apache Struts 2 को प्रभावित करती है।
CVE-2023-50164 एक संगठन के Apache Struts आर्किटेक्चर और इसकी फ़ाइल अपलोड सुविधा के उपयोग के तरीके से जटिल रूप से जुड़ा हुआ है, जो अनधिकृत पथ ट्रैवर्सल को सक्षम करता है जिसका दुरुपयोग एक दुर्भावनापूर्ण फ़ाइल अपलोड करने और दूरस्थ कोड निष्पादन (RCE) करने के लिए किया जा सकता है।
इस रिपॉज़िटरी में भेद्यता को समझने और उसमें हेरफेर करने के लिए एक Dockerfile शामिल है। शस्त्रीकृत शोषण कोड प्रदान नहीं किया गया है।
नीचे, लैब चलाने के कमांड (आप अपने शेल में कॉपी/पेस्ट कर सकते हैं):
git clone https://github.com/Trackflaw/CVE-2023-50164-ApacheStruts2-Docker.git
cd CVE-2023-50164-ApacheStruts2-Docker
docker build --ulimit nofile=122880:122880 -m 3G -t cve-2023-50164 .
docker run -p 8080:8080 --ulimit nofile=122880:122880 -m 3G --rm -it --name cve-2023-50164 cve-2023-50164
curl http://localhost:8080/upload.action
CUrl से ऐप उपलब्धता की पुष्टि करें।
curl http://localhost:8080/upload.action
<html>
<head>
<title>File upload</title>
</head>
<body>
<h1>💣 CVE-2023-50164</h1>
<p>Welcome to CVE-2023-50164 lab. You can practice with the file upload feature below. Find a way yo bypass the filter 😉</p>
<form id="upload" name="upload" action="/upload.action" method="post" enctype="multipart/form-data">
<table class="wwFormTable">
<tr>
<td class="tdLabel"></td>
<td class="tdInput"><input type="file" name="upload" id="upload_upload" /></td>
</tr>
<tr>
<td colspan="2">
<div class="formButton"><input type="submit" value="Submit" id="upload_0" />
</div>
</td>
</tr>
</table>
</form>
</body>
</html>
हैप्पी प्वाइनिंग ! 😉

यह प्रोजेक्ट Jakabakos के काम से काफी प्रेरित है।
नीचे, दोष को समझने के लिए लेखों की सूची: