
أداة إعادة إنتاج لثغرة CVE-2026-46456 — حقن ترويسات سمات الرسائل الواردة في Apache Camel camel-aws2-sqs (حقن ترويسات تحكم Camel عبر sqs:SendMessage → توجيه المنتج اللاحق / RCE)
مُعيدات إنتاج قابلة للتشغيل (PoC) لنفس الثغرة في Apache Camel، واحدة لكل بيئة تشغيل:
| بيئة التشغيل | الدليل | الحزمة التقنية | الوجهة المُختطفة | التأثير المُثبَت |
|---|---|---|---|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-spring-boot 4.18.2 | exec: عبر CamelExecCommand* | تنفيذ تعليمات برمجية عن بُعد |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0 (يضم Camel 4.20.0) | http عبر CamelHttpUri | تزوير الطلبات من جانب الخادم |
كلاهما من الإصدارات المتأثرة (تم إصلاحهما في 4.14.8 / 4.18.3 / 4.21.0)، وكلاهما يُظهر الخلل ذاته:
يُهيئ Sqs2HeaderFilterStrategy مرشحًا للاتجاه الصادر فقط، لذلك يعيّن Sqs2Consumer كل سمة رسالة SQS واردة
على الـ Exchange — بما في ذلك رؤوس تحكم Camel. لم يُتِح مؤلف المسار أي وسيلة لتغيير الوجهة في اتجاه المصب،
لكن المهاجم القادر على إدراج رسالة في قائمة الانتظار يحقن واحدة ويوجّه المُنتِج في اتجاه المصب (CWE-20).
يُثبت نموذج Spring Boot RCE عبر وجهة exec:. هذه الوجهة غير قابلة للوصول افتراضيًا في Camel
4.20.0 (وهو ما يضمه Camel Quarkus 3.36.0): أضاف CAMEL-23315 خيار allowControlHeaders إلى
camel-exec، بقيمة افتراضية false، طُرح لأول مرة في 4.20.0. هذا التحصين مستقل عن هذه الثغرة ولا
يُصلحها — فسمات الرسائل المحقونة ما تزال تُصبح رؤوس Exchange في 4.20.0. لذلك تختطف نسخة Quarkus
مُنتِج http عبر CamelHttpUri، وهو ما يُؤخذ به افتراضيًا، مما يؤدي إلى SSRF.
كل دليل فرعي هو مشروع مكتفٍ بذاته (بالإضافة إلى حاوية LocalStack تُشغَّل عبر docker-compose.yml الخاصة به)
مع Dockerfile وREADME خاصين به. باختصار، لأيٍّ منهما:
cd camel-spring-boot # or: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
الإشعار الأمني: https://camel.apache.org/security/CVE-2026-46456.html
هذه المُعيدات مُقدَّمة للبحث الأمني والاختبار المصرَّح به فقط، لثغرة مُعلَنة علنًا ومُصلَحة. لا تستخدمها ضد أي أنظمة دون إذن صريح.
| الخاصية | القيمة |
|---|
| المكوّن | camel-aws2-sqs |
| الفئة المتأثرة | org.apache.camel.component.aws2.sqs.Sqs2HeaderFilterStrategy (بدون مرشح للاتجاه الوارد) / Sqs2Consumer |
| CWE | CWE-20: التحقق غير السليم من المُدخلات |
| التأثير | يُحقن مُرسِل الرسالة رؤوس تحكم في Camel ← توجيه المُنتِجين في اتجاه المصب |
| الإصدارات المتأثرة | من 4.0.0 إلى ما قبل 4.14.8، ومن 4.15.0 إلى ما قبل 4.18.3، ومن 4.19.0 إلى ما قبل 4.21.0 |
| الإصدارات المُصلَحة | 4.14.8، 4.18.3، 4.21.0 |
| JIRA | CAMEL-23506 |