GitHub объявил об изменении правил безопасности GitHub Actions. С 2 декабря 2026 года платформа по умолчанию будет блокировать запуск сценариев автоматизации по событию pull_request_target в публичных репозиториях. Чтобы сохранить такие сценарии, потребуется явно разрешить событие в настройках политик GitHub Actions.
Изначально ограничение планировали ввести 2 ноября, но срок перенесли на месяц.
Почему GitHub вводит ограничение
Событие pull_request_target позволяет запускать автоматизацию при работе с запросами на включение изменений (pull request), в том числе поступающими из форков. Например, его используют для автоматического назначения меток или добавления комментариев.
Проблема в том, что такие сценарии выполняются в контексте основного репозитория и могут получать доступ к его секретам. Если сценарий при этом запускает непроверенный код из стороннего форка, злоумышленник потенциально может украсть секреты или скомпрометировать процесс CI/CD.
Новая политика должна снизить риск подобных атак. При этом GitHub оставляет возможность использовать pull_request_target там, где без него действительно не обойтись.
Как будет проходить переход
Сейчас ограничение работает в режиме оценки (evaluate). Сценарии продолжают запускаться, но администраторы уже могут посмотреть, какие из них будут заблокированы после вступления новых правил в силу.
Перед окончательным включением защиты GitHub проведёт две временные блокировки:
9 ноября 2026 года — с 16:00 до 18:00 UTC (19:00–21:00 мск).
16 ноября 2026 года — с 16:00 до 18:00 UTC (19:00–21:00 мск).
В эти промежутки сценарии, подпадающие под ограничение, не будут выполняться. Вместо этого GitHub создаст запись о неудачном запуске с сообщением об ошибке.
После каждого такого периода система вернётся в режим оценки. С 2 декабря блокировка станет постоянной.
Что нужно проверить разработчикам
Если в публичном репозитории используется pull_request_target, до 9 ноября стоит проверить раздел Policy insights в настройках GitHub Actions. Там можно увидеть, какие сценарии затронет новая политика.
Дальше возможны три варианта:
Если
pull_request_targetне нужен, заменить его более безопасным событием, напримерpull_request, где это возможно.Если без него не обойтись, явно разрешить событие через политику GitHub Actions. При необходимости разрешение можно ограничить конкретными файлами сценариев.
Если событие не должно использоваться, оставить блокировку по умолчанию.
При этом само разрешение pull_request_target не устраняет связанных с ним рисков. GitHub рекомендует не выполнять непроверенный код из сторонних запросов на изменения с доступом к секретам репозитория или привилегированному GITHUB_TOKEN.
Изменение касается всех публичных репозиториев на тарифах GitHub Free, GitHub Team и GitHub Enterprise Cloud. Приватные и внутренние репозитории оно не затронет. На GitHub Enterprise Server новое правило также не распространяется.
Подробнее о настройке ограничений — в документации GitHub.
Все бесплатные вебинары от экспертов в IT уже доступны в календаре Otus.

