تمرير الدور إلى CodeBuild
يمكنه إنشاء مشروع CodeBuild بدور وتشغيل أوامر shell بصلاحيات الدور.
يمنح التصعيد في التركيب فقط. كل ما يلي مطلوب معاً:
iam:PassRolecodebuild:CreateProjectcodebuild:StartBuildيمكن لـ iam:PassRole إنشاء مشروع CodeBuild بدور وتشغيل أوامر shell بصفته، لكن فقط عند امتلاكه مع codebuild:CreateProject، وcodebuild:StartBuild. ومعاً يصلان إلى وصول المسؤول.
لماذا هو خطير
تحمل جهة أساسية iam:PassRole على الدور المستهدف إضافةً إلى codebuild:CreateProject وcodebuild:StartBuild، فيمكنها تعريف مشروع بناء يشغّل buildspec الخاص به أوامر صدفة عشوائية مع الدور المستهدف كدور الخدمة، ثم بدء البناء، وتنفّذ الأوامر بأذونات الدور المستهدف ويمكنها تسريب بيانات اعتماده. ولأن الدور المستهدف يثق بـ codebuild.amazonaws.com يُقبل التمرير، والدور ذو الامتياز هو تصعيد كامل للامتيازات.
وفق مصطلحات MITRE ATT&CK، يقابل هذا T1648، التنفيذ بلا خادم، ضمن تكتيك تصعيد الامتيازات. يسجّله AWS في CloudTrail باسم CreateProject, StartBuild. هذه العملية واضحة في CloudTrail وتبرز عن النشاط الاعتيادي.
الكشف
CreateProjectStartBuildالمتطلبات المسبقة
يجب أن تسمح سياسة الثقة للدور الهدف بـ codebuild.amazonaws.com.
MITRE ATT&CK
T1648 · تنفيذ بلا خادمتكتيك
تصعيد الامتيازات
من الضوابط التي قد تزيله: إزالة iam:PassRole لهذا الدور أو تحديد نطاقه عبر iam:PassedToService.
يتوقف تطبيقه على كيفية استخدام الإذن في بيئتك، فهو قرار عمل لا إصلاح تلقائي. فالإذن نفسه قد يكون أساسياً في حساب وخطراً محضاً في حساب آخر.
يؤكّد Pathbreak ما إذا كان هذا المسار يتحقق في حسابك، ويرتّبه مقابل الآخرين حسب مقدار ما يفتحه، ويستخدم نموذج التهديد وسياق عملك لإظهار المسارات التي تستحق القطع.
أسئلة
ماذا يتيح iam:PassRole؟
يمكنه إنشاء مشروع CodeBuild بدور وتشغيل أوامر shell بصلاحيات الدور.
ما الذي يلزم أيضاً لكي يصبح iam:PassRole خطيراً؟
لا يصبح تصعيداً إلا عند امتلاكه مع codebuild:CreateProject, codebuild:StartBuild. وحده لا يكفي، وهذا ما يجعل التركيبة سهلة التفويت.
كيف يتم كشف تمرير الدور إلى CodeBuild؟
راقب CreateProject, StartBuild في CloudTrail. الاستدعاء صاخب في CloudTrail ويبرز عن النشاط الاعتيادي.
كيف تكسر هذا المسار؟
من الضوابط التي قد تزيله: أزل iam:PassRole لهذا الدور أو حدّد نطاقه باستخدام iam:PassedToService. يعتمد تطبيقه على كيفية استخدام الإذن في حسابك، لذا فهو قرار يخص العمل وليس إصلاحاً تلقائياً.
ما تقنية MITRE ATT&CK هذه؟
T1648، تنفيذ بلا خادم، ضمن تكتيك تصعيد الامتيازات.
المسارات ذات الصلة
المراجع
اعثر على هذا في حسابك الخاص
نُجري فحصاً للقراءة فقط لحساب AWS واحد ونعرض لك أيّ هذه المسارات موجود، مُرتَّباً حسب نطاق الأثر، مع التغيير الذي يكسر كل واحد منها. أول المسارات المتحقَّق منها خلال ساعة.