
CVE-2024-3094 के पुनरुत्पादन के लिए Dockerfile और Kubernetes मैनिफ़ेस्ट
CVE-2024-3094 को पुनरुत्पादित करने के लिए Dockerfile और Kubernetes मेनिफेस्ट
हम आधार इमेज के रूप में कमजोर xz उपयोगिताओं के डेबियन संस्करण का उपयोग करते हैं। हमें लाइब्रेरी को पैच करने की भी आवश्यकता है। liblzma लाइब्रेरी का पैच किया गया संस्करण xzbot रिपॉजिटरी से लिया गया है।
FROM debian:experimental-20240311@sha256:16cc2b09c44d991d36f63153f13a7c98fb7da6bd2ba9d7cc0f48baacb7484970
# use debian with a vulnerable version of xz utils as the base image
RUN apt-get update && apt-get install -y openssh-server
RUN mkdir /var/run/sshd
RUN echo 'root:root123' | chpasswd
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
EXPOSE 22
COPY liblzma.so.5.6.0.patch /root/
# in order to exploit the vulnerability you must use a patched library because
# the exploit author originally hardcoded his public key
# in the patched library this key has been swapped out
ENV LD_PRELOAD=/root/liblzma.so.5.6.0.patch
# load the patched library via LD_PRELOAD
CMD ["/usr/sbin/sshd", "-D"]
पहले, हमें पिछले चरण में तैयार की गई इमेज के साथ एक सरल Pod तैनात करना होगा:
apiVersion: v1
kind: Pod
metadata:
name: cve-2024-3094
labels:
app: cve-2024-3094
spec:
containers:
- name: cve-2024-3094
image: r0binak/xzk8s:v1
ports:
- containerPort: 22
फिर, पोर्ट को रीडायरेक्ट करें:
kubectl port-forward backdoor-cve-2024-3094 2222:22
आइए xzbot एक्सप्लॉइट का उपयोग करें:

अंत में, कंटेनर के अंदर जाएं और एक्सप्लॉइट परिणामों की जांच करें:
