يسمح Gitea لرمز مميز (token) ذي قيود `public-only,write:repository` بتحديث فرع الرأس الخاص لطلب السحب (pull request). يحدث هذا لأن النظام يتحقق من صحة قيد ”للعامة فقط“ للرمز المميز مقابل مسار مستودع القاعدة العام، لكنه يفشل في إعادة تطبيق هذا القيد على مستودع الرأس الخاص أثناء عملية التحديث. ونتيجة لذلك، يمكن للمهاجم الذي يمتلك مثل هذا الرمز المميز أن يجعل Gitea تقوم بدفع الالتزامات من مستودع أساسي عام إلى فرع الرأس الخاص، متجاوزًا بذلك قيود الوصول المقصودة.
تشمل التفاصيل الفنية ما يلي:
- **نقطة نهاية واجهة برمجة التطبيقات (API):** `POST /api/v1/repos/{public-owner}/{public-repo}/pulls/{index}/update`
- **الوظيفة المعرضة للخطر:** `UpdatePullRequest()`
إذا تم تمكين Gitea Actions في مستودع الرأس الخاص، فإن هذا الدفع غير المصرح به يمكن أن يؤدي أيضًا إلى تشغيل سير عمل `push` الخاص بالمستودع الخاص.