Gitea пусна актуализации за сигурност, коригиращи 27 съобщени дефекта във версии 28.0.0 и 28.1.0, включително критично заобикаляне на SSH автентикацията и слабости от тип фалшифициране на заявки от страна на сървъра (SSRF).
Корекциите обхващат достъпа до акаунти, разрешенията за хранилища, автоматизираните работни процеси и връзките към вътрешни системи. Администраторите трябва да разглеждат актуализацията като спешен приоритет за своята инфраструктура за разработка.
Публикуван на 30 септември, Gitea 28.0.0 съдържа 20 CVE в своите бележки за сигурност. Общият брой от 27 съобщени проблеми обхваща тази версия и последващото обновяване 28.1.0, а не само 28.0.0. Gitea премахна и историческия си префикс на версията „1.“, правейки тази версия 28.0.0 вместо 1.28.0.
Най-значимият проблем, CVE-2026-103059, има оценка по CVSS от 9.1 и засяга внедрявания, използващи вградения SSH сървър на Gitea. Търсенето на публичен ключ е използвало SQL LIKE сравнение, което игнорира регистъра на буквите при някои бази данни, включително базата данни по подразбиране SQLite. Това би могло да накара специално изработен RSA ключ да съвпадне с регистриран ключ на друг потребител.
Атакуващ, който конструира подходящ вариант с променен регистър на буквите на публичния ключ на жертвата и извлече съответния му частен ключ, би могъл да се автентифицира като тази жертва.
Това не е общо заобикаляне чрез използване на произволно променен ключ; атакуващият трябва да изпълни тези изисквания за ключа. Сега Gitea идентифицира представените ключове чрез техните отпечатъци, премахвайки небезопасното текстово сравнение.
Gitea отстранява 27 уязвимости в сигурността
Няколко коригирани уязвимости са позволявали на миграциите и огледалните копия на хранилища да заобикалят правилата за изходящи връзки. CVE-2026-70357 включва несъответствие между валидацията на името на хоста и действителната Git връзка.
Атакуващ би могъл да промени DNS отговора на името на хоста по време на този интервал, насочвайки Gitea към вътрешен хост, след като първоначалната проверка за сигурност е преминала.
CVE-2026-101027 е позволявал на одобрен домейн да пропусне проверките за целевия IP адрес, докато CVE-2026-101029 е използвал множество DNS отговори за заобикаляне на списъка с разрешени изходящи адреси.
Друга уязвимост, CVE-2026-89430, е позволявала на огледални копия за изпращане (push mirrors) да се свързват с вътрешни Git хостове, след като техните запазени адреси са преминали по-ранна проверка, което потенциално е позволявало принудително изпращане (forced push).
Gitea вече рутира мрежовите операции на Git през вътрешно прокси, което прилага правила за изходящ достъп при осъществяване на връзките. Администраторите трябва да прегледат промените в конфигурацията преди да актуализират. За политика за блокиране по подразбиране (deny-by-default), бележките към версията упътват потребителите да зададат EGRESS_MODE = strict и изрично да посочат разрешените хостове.
Обновяването също така затваря пропуски при одобряването в Gitea Actions. CVE-2026-104632 е позволявал на отменен работен процес от разклонение (fork), очакващ одобрение, да достигне до самостоятелно хоствани изпълнители (self-hosted runners) при повторно стартиране.
CVE-2026-94205 е проверявал само субекта на събитието, позволявайки на събитие, задействано от поддържащ системата (maintainer), да стартира работен процес на недуверен сътрудник без необходимото одобрение. И двете проверки вече са затегнати.
Други корекции отстраняват междинни скриптове от страната на клиента (stored XSS) в контейнерни блобове, дублирани записи в Git дървото, които биха могли да скрият злонамерен код от проверяващите, както и уязвимост в инсталатора, която е издавала сесия на съществуващ администратор без проверка на паролата. Корекциите в разрешенията също така премахват остатъчен достъп при прехвърляне на хранилище и предотвратяват наследяването на привилегии на собственика на хранилището от ключове за внедряване (deploy keys).
Администраторите трябва да архивират данните си, да прегледат промените, чупещи съвместимостта, и да преминат към версия 28.1.0. Бележките към версията на Gitea обясняват новите мрежови правила, изискването за минимум Git 2.25 и промененото поведение на работните процеси.