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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
w48crash — رمز الـPoC لثغرة أمنية في webmod v0.48. كُتب أصلاً في 2007، وتم تعيين CVE-2007-1260 له. | Kitploit
أدوات/GitHubGitHub/thecybermind/w48crash
تحليل الثغرات الأمنيةالاستغلالشيل كوداختبار الاختراقأداة الوصول عن بعداستغلال الملفات الثنائية
GitHubthecybermind/w48crash

w48crash

رمز الـPoC لثغرة أمنية في webmod v0.48. كُتب أصلاً في 2007، وتم تعيين CVE-2007-1260 له.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

تجاوز سعة المخزن المؤقت في المكدس WebMod CVE-2007-1260

بواسطة cybermind (Kevin Masterson)
[email protected]

موقع WebMod (مؤرشف): https://web.archive.org/web/20080517044559/http://djeyl.net/w.php

الإصدارات القابلة للاختراق:
0.48، لكل من Win32 و Linux. قد تكون الإصدارات السابقة قابلة للاختراق. يجب أن يعمل هذا مع أي إصدار من HLDS.

نوع الثغرة:
DoS، تنفيذ تعليمات برمجية عن بعد تحت المستخدم الذي يعمل عليه HLDS.

الوصف: عند استلام طلب HTTP POST، يقوم بتخصيص 11 بايت على المكدس لتخزين قيمة Content-Length، لكنه يكتب في هذا المخزن المؤقت حتى يتم استلام حرف سطر جديد أو فاصل فارغ. بعد أن يصل سلسلة Content-Length إلى 158308 بايت، يبدأ في الكتابة فوق EIP. قد يكون هذا الرقم مختلفًا قليلاً على لينوكس بسبب المحاذاة. يجب ألا تحتوي شل كود الخاصة بك على 0x00 أو 0x0A أو 0x0D وإلا ستتوقف عن قراءة البيانات من المقبس.

قد يساعد هذا في تنفيذ شل كود الخاصة بك:

  • لنظام Win32:
    يوجد "FF E4" (jmp esp) في w_mm.dll الإصدار 0.48 عند 0x67E03C5B
  • لنظام لينوكس:
    يوجد "FF E4" (jmp esp) في metamod_i386.so الإصدار 1.19 عند الإزاحة 0x0008835C

رمز الإثبات:
w48crash.c
ملاحظة: "شل كود" المستخدمة في الإثبات مشفرة ثابتة خصيصًا للعمل مع خادم يعمل على Win2K SP4/kernel32.dll/user32.dll الإصدار 5.0.2195.6688. ومع ذلك، فإن تجاوز سعة المخزن المؤقت الفعلي سيعمل كما هو على أي إصدار ويندوز. لاختبار ذلك، يمكنك ضبط المتغير العمومي "our_eip" إلى 0xFFFFFFFF للتسبب في تعطل ببساطة.

السبب/الإصلاح:
الكود المشكل من الأسطر 542-552 في server.cpp:

root@kitploit:~
542        char clbuf[11];
543
544        for(i=0;(size_t)i<strlen(input)-17;i++)
545        {
546            if(!strnicmp(input+i,"\nContent-Length: ",17))
547            {
548 LOG_DBG_SERVER(("Content-length spotted"));
549                i+=17;
550                for(j=0;input[i]!='\n'&&input;[i];i++,j++)
551                    clbuf[j]=input[i];
552                clbuf[j]='\0';

المخزن المؤقت، clbuf، المخصص في السطر 542، يتم الكتابة فيه باستخدام الحلقة في السطور 550-551، ثم يتم إنهاؤه بقيمة فارغة. الإصلاح هو استبدال السطر 550 بما يلي:

root@kitploit:~
550                for(j=0;input[i]!='\n'&&input[i]&&j<10;i++,j++)
تنزيل الأداة