ترجمة آلية لم تُراجَع بعد. النص الإنجليزي هو المرجع في حال الاختلاف.
الملخص
مكتبة russh هي مكتبة عميل وخادم SSH بلغة Rust تتضمن تنفيذ بروتوكول وكيل SSH. من الإصدار 0.50.0-beta.12 حتى 0.65.0، يتعرف مسار Connection::try_sign لخادم الوكيل في russh/src/keys/agent/server.rs على SSH__AGENT_CONSTRAIN_CONFIRM ولكنه يُرجع نتيجة نجاح مبرمجة مسبقًا بدلاً من استدعاء Agent::confirm. في التطبيقات التي تتجاوز Agent::confirm لطلب موافقة المستخدم أو فحص سياسة أخرى، يمكن لعملية يمكنها الوصول إلى مقبس الوكيل، بما في ذلك الجانب البعيد لوكيل مُعاد توجيهه، استخدام مفتاح مضاف من خلال ssh-add -c دون هذا الفحص ويمكنها المصادقة أو توقيع البيانات كـ مستخدم بينما يظل المفتاح محَملاً. لا يزال خطاف Agent::confirm_request المنفصل يعمل لكل طلب توقيع، لذا تظل عمليات التحقق المنفذة هناك فعالة، ولا تفقد التطبيقات التي تحتفظ بـ Agent::confirm الافتراضي الناجح دائماً فحص الموافقة من خلال هذا التراجع. تم إصلاح هذه المشكلة في الإصدار 0.65.0.
المعالجة
المراجع
- تحذيرhttps://github.com/advisories/GHSA-vp5q-ff62-jwqv
- مرجعhttps://github.com/Eugeny/russh/commit/3e04597dc54e36bfc85c21996f7d8d9d224e9826
- مرجعhttps://github.com/Eugeny/russh/commit/62db6e7defd6d244159da962ccccb029e785ce0f
- مرجعhttps://github.com/Eugeny/russh/releases/tag/v0.65.0
- مرجعhttps://github.com/Eugeny/russh/security/advisories/GHSA-vp5q-ff62-jwqv
- مرجعhttps://nvd.nist.gov/vuln/detail/CVE-2026-116794