تتجاوز ثلاثة مسارات برمجية إجراءات الحماية الحالية ضد تزوير الطلبات من جانب الخادم (SSRF) باستخدام `http.Get()` الخام بدلاً من أداة الاتصال `hostmatcher.NewDialContext()` التي تم التحقق من صحتها. وهذا يسمح للمهاجم بإرسال طلبات إلى الخدمات الداخلية، ومسح الشبكات الداخلية (مثل `127.0.0.1`، `10.x`، و`172.16-31.x`، و`192.168.x`)، وسرقة البيانات الوصفية السحابية من نقاط النهاية مثل `169.254.169.254` (على سبيل المثال، بيانات اعتماد AWS IMDSv1 أو رموز GCP). بالإضافة إلى ذلك، فإن استخدام مخطط `file://` في الدالة `Open()` يتيح قراءة الملفات المحلية، مما قد يؤدي إلى كشف ملفات حساسة مثل `/etc/gitea/app.ini` التي قد تحتوي على بيانات اعتماد قاعدة البيانات وأسرار توقيع JWT.
تؤثر هذه المشكلة على المكونات التالية:
- الدالة `Open()` في `modules/uri/uri.go`.
- عمليات تنزيل ملفات الإصدارات والتصحيحات في `services/migrations/gitea uploader.go` و`services/migrations/dump.go`.
- الدالة `oauth2UpdateAvatarIfNeed()` في `routers/web/auth/oauth.go`.