ترجمة آلية لم تُراجَع بعد. النص الإنجليزي هو المرجع في حال الاختلاف.
الملخص
يحتوي CakePHP حتى الإصدار 5.4.3 على ثغرة حقن SQL تسمح للمهاجمين بحقن أوامر SQL من خلال توفير قيم تجميع غير متحقق منها إلى StringExpression و IdentifierExpression. يمكن للمهاجمين الذين يتحكمون في اسم التجميع المُمرر إلى المنشئ (constructor) أو الدالة setCollation() إلحاق أوامر SQL بعد جملة COLLATE غير المحاطة بعلامات اقتباس، مما يؤثر على كل برامج تشغيل قواعد البيانات ضمن صلاحيات الاتصال.
المعالجة
المراجع
- تصحيحhttps://github.com/cakephp/cakephp/commit/21951faea40060dcc5cc1da3159056df66816d3c
- تصحيحhttps://github.com/cakephp/cakephp/commit/ac07372e6a3045ce2030701a5bc5ed71aa2b4b82
- تصحيحhttps://github.com/cakephp/cakephp/commit/ae8c354cf825aeb7090ea4b48ce98142446f3ac9
- تصحيحhttps://github.com/cakephp/cakephp/commit/d04d342c3d1e0bac7ce7661bc098902cc412e595
- تصحيحhttps://github.com/cakephp/cakephp/pull/19726
- تحذيرhttps://abraxaslabs.tech/research/cakephp-collate-sqli
- تحذيرhttps://www.vulncheck.com/advisories/cakephp-through-5.4.3-sql-injection-via-stringexpression-and-identifierexpression-collation
- مرجعhttps://github.com/cakephp/cakephp
- مرجعhttps://github.com/cakephp/cakephp/blob/6f3dd91371ac0698b64024ddb21d57def9fbba91/src/Database/Expression/IdentifierExpression.php#L106
- مرجعhttps://github.com/cakephp/cakephp/blob/6f3dd91371ac0698b64024ddb21d57def9fbba91/src/Database/Expression/StringExpression.php#L77