
مستودع لـ CVE-2025-52413
المكتشف: Golden Ticket Labs
البائع: Particle
تاريخ التعيين: 12 أغسطس 2025 (MITRE)
يؤدي تجاوز سعة المخزن المؤقت في مكون ble_control_request_channel.cpp من Particle Device OS v5.6.0 إلى إمكانية الكتابة فوق مؤشر دالة تعسفي بسبب استدعاء memcpy() غير محدود في مخزن مؤقت بحجم 64 بايت.
عند دمجه مع استدعاء ThreadRunner::eventHandler_ المجاور، يسمح ذلك باختطاف تدفق التحكم بشكل موثوق وحتى تنفيذ حمولة ROP محاكاة: contentReference[oaicite:0]{index=0}.
مسار الكود الضعيف:
// ble_control_request_channel.cpp
memcpy(buf_->data, &h, handshake_header_size); // نسخ غير محدود في مخزن مؤقت بحجم 64 بايت
// thread_runner.cpp
if (r->eventHandler_) {
r->eventHandler_(ev); // استدعاء مؤشر الدالة بعد إفساد الذاكرة المجاورة
}
handshake_header_size يتحكم فيه المهاجم.buf_->data هو مخزن مؤقت خام بحجم 64 بايت، يفتقر إلى فحوصات الحدود.ThreadRunner يخزن مؤشر دالة مضمن eventHandler_ مباشرة بجوار المخزن المؤقت.buf_->data إلى تمكين الكتابة فوق eventHandler_.اعتمادًا على تخطيط البناء، يظهر الخطأ على هيئة تجاوز سعة قائم على المكدس (CWE-121) أو قائم على الكومة (CWE-122)، لكن السبب الجذري هو نسخ غير آمن للذاكرة في مخزن مؤقت ثابت بجوار مؤشر دالة.
تصنيف CWE:
الخطورة (CVSS v3.1)
يعكس هذا أنه يمكن تحقيق تنفيذ تعليمات برمجية عشوائية بحمولة BLE مصممة، ولا يتطلب سوى قرب المهاجم ولا امتيازات أو تفاعل مستخدم.
⚠️ لا يتضمن هذا أي كود استغلالي. هو توضيح آمن.
هيكل PoC المفاهيمي:
struct ExploitTarget {
char buffer[64];
void (*eventHandler)(const char* msg); // الهدف الذي سيتم الكتابة فوقه
};
char payload[128];
memset(payload, 'A', 64); // ملء المخزن المؤقت
memcpy(payload + 64, &address_of_rop_shell, 8); // الكتابة فوق مؤشر الدالة
// إعادة توجيه تدفق التحكم إلى:
void rop_shell(const char* msg) {
system("/bin/sh"); // حمولة ROP محاكاة
}
أكد تفريغ سداسي عشري أنه تم الكتابة فوق مؤشر eventHandler_ وإعادة توجيهه.
handshake_header_size المخزن المؤقت البالغ 64 بايت.eventHandler_ الكود الذي يتحكم به المهاجم.memcpy_s أو ما يعادله).جميع المحتويات في هذا المستودع مقدمة لأغراض تعليمية ودفاعية فقط. لا تتضمن أي حمولات استغلالية. لا تحاول استخدام هذه التقنيات ضد الأنظمة دون إذن صريح.
Golden Ticket Labs 📧 [email protected]
🌐 goldenticketlabs.com