- агентский CGI: /diagnose мог удалять nft-таблицы, переписывать resolv.conf
и перезапускать sing-box с любого устройства LAN без токена; bearer-токен
теперь передаётся через окружение вместо argv (виден в ps), тело запроса
ограничено 64KB до чтения, wildcard Access-Control-Allow-Origin убран -
произвольные сайты больше не могут читать состояние роутера кросс-доменно
(включая DNS rebinding)
- agent_api: сравнение токена за константное время
- uci/migration: /etc/config/tachyon хранит Telegram bot token и ссылки на
подписки; UCI не сохраняет 0600 при коммитах, поэтому режим ужесточается
после каждого коммита этого конфига и после миграций
- build.yml: убран NODE_TLS_REJECT_UNAUTHORIZED=0 из шагов публикации релиза -
проверка сертификатов не должна отключаться на раннере, заливающем релизы
- initd/state: устранено окно TOCTOU при захвате устаревшего reload-лока:
два ожидающих могли оба выполнить rm+rmdir+mkdir и каждый считал лок своим;
захват теперь атомарным переименованием, которое выигрывает ровно один
претендент