FlawOpen

flawopen.com/Incidents/papercut-patch-bypass-scan2fax-chain-october-2026

● PaperCut NG/MF · CVE-2026-82077 · 2026-10-09 · CVSS 7.3 · Высокий
Исследования · FlawOpen

Обход исправления PaperCut: цепочка Scan2Fax до RCE без аутентификации

9 октября watchTowr раскрыла новую цепочку обхода аутентификации и Scan2Fax для промежуточной версии PaperCut. Она показывает, как обходы исправлений вновь открыли путь от запроса без входа в систему к уязвимости исполнения команд, требующей аутентификации; окончательные исправления PaperCut — 26.0.5/25.0.13.[1], [2]

💡 Простыми словами (ELI5)

Представьте здание, где каждая комната проверяет пропуск посетителя, но в холле проверяют только первую комнату на его маршруте. Через открытую комнату можно попасть к закрытому столу, где пропуск уже не проверяют. В истории исправлений PaperCut пришлось закрыть несколько таких путей; окончательная версия защищает сами формы и путь к файлу, который использует Scan-to-Fax.[1]

Ключевые понятия и термины

Обход исправления
Другой путь ведёт к той же защищённой операции после того, как исправление блокирует только первоначально описанный маршрут. Это новый дефект границы, а не доказательство полного отсутствия первого исправления.[1]
Цепочка до аутентификации
Последовательность, в которой одна ошибка обходит обычную проверку входа, а вторая обеспечивает последствия, например исполнение команд. У каждого звена свои механизмы, их нужно описывать отдельно.[1]
CVE-2026-82077
Уязвимость PaperCut Scan-to-Fax — это path traversal, который может позволить аутентифицированному администратору выполнять команды на хосте. PaperCut исправил её в 26.0.5 и 25.0.13; watchTowr показала, как отдельный обход авторизации в промежуточной версии можно было связать с ней.[2], [3], [4], [1]
WT-2026-0143
Обозначение watchTowr для обхода исправления аутентификации, опубликованного 9 октября. В общедоступном бюллетене PaperCut этому случаю не присвоен отдельный CVE. Исправление вошло в аварийную сборку 26.0.4-PO 76530.[1]
Статус эксплуатации
В августе PaperCut сообщила об эксплуатации прежних уязвимостей PaperCut. В сентябрьском бюллетене сказано, что для описанных там проблем, включая CVE-2026-82077, признаков эксплуатации нет. Исследование 9 октября демонстрирует цепочку на промежуточной версии, но не доказывает её использование против клиентов.[5], [2], [1]

Связи со стандартами

  • Ссылка CWE для слабого места, описанного в этом руководстве: CWE-22 CWE-78

Состояние версий: разделяйте две цепочки PaperCut

Версия PaperCutЧто подтверждают источникиДействие защиты
26.0.3watchTowr относит к этой версии прежнюю цепочку CVE-2026-81578 + CVE-2026-82078, эксплуатация которой наблюдалась в реальных атаках.Следуйте срочному бюллетеню PaperCut; это прежняя эксплуатировавшаяся цепочка, а не исследование октября.
26.0.4При анализе этой версии watchTowr обнаружила отдельные обходы исправлений.Не считайте промежуточное исправление окончательным; ориентируйтесь на версии, которые поставщик указал как исправленные.
26.0.4-PO build 76508watchTowr воспроизвела здесь WT-2026-0143 + CVE-2026-82077. Это исследовательская демонстрация, а не доказательство атак на клиентов.Обновитесь до версии с исправлением поставщика; не считайте эту сборку защищённой только потому, что она включает прежние экстренные исправления.
26.0.4-PO build 76530По данным watchTowr, здесь исправлена WT-2026-0143; CVE-2026-82077 исправлена в более поздней версии.Обновитесь до окончательного исправления CVE-2026-82077; этого промежуточного исправления обхода недостаточно.
26.0.5 / 25.0.13 или новееPaperCut указывает эти версии как исправленные для CVE-2026-82077.Обновитесь до текущей поддерживаемой версии и проверьте установленную ветку и сборку.
Выпуск обслуживания 24.1.10В августовском бюллетене PaperCut версия 24.1.10 указана как выпуск обслуживания, заменяющий Emergency Patches 1–3.Это подтверждает только исправления из августовского уведомления, но не статус CVE-2026-82077.
Ветка 24.x: CVE-2026-82077В сентябрьском бюллетене PaperCut исправленными указаны 26.0.5 и 25.0.13 (ветка 25.x); ветка 24.x не указана.Не делайте вывод о статусе этой CVE для 24.x; проверьте актуальные рекомендации PaperCut для этой ветки.

Хронология инцидента

2026-08-27

PaperCut выпустила срочное уведомление об эксплуатации PaperCut NG/MF. Позднее watchTowr связала прежнюю цепочку с CVE-2026-81578 и CVE-2026-82078; она отличается от новой цепочки WT-2026-0143 плюс CVE-2026-82077.[5], [1]

2026-08-28

PaperCut выпустила 26.0.4, затем аварийную сборку 26.0.4-PO 76508. По сообщению watchTowr, при анализе этих исправлений были найдены последовательные обходы.[1], [5]

2026-08-31 — 2026-09-10

watchTowr сообщила PaperCut о WT-2026-0143 и CVE-2026-82077. PaperCut исправила WT-2026-0143 в 26.0.4-PO 76530 1 сентября, а CVE-2026-82077 — в 26.0.5/25.0.13 10 сентября.[1], [2]

2026-10-09

watchTowr опубликовала техническое описание цепочки для промежуточной версии. Публикация не доказывает, что эта новая цепочка применялась против клиентов.[1], [2]

Пошаговый сценарий атаки

Шаг 1

Проверка разрешений маршрута пропускает вложенную цель

watchTowr описывает старую маршрутизацию PaperCut на Tapestry: запрос может указать корневую страницу, а затем другую страницу или форму. Предварительная проверка авторизации не всегда применяла разрешения самой целевой формы.[1]

Шаг 2

Обход исправления достигает защищённой формы

Цепочка для 26.0.4-PO 76508 использовала WT-2026-0143, чтобы попасть в функции настройки через страницу, чья проверка не вызывала проверку целевой формы. Это описание границы авторизации, а не воспроизведение маршрута или запросов.[1]

Шаг 3

В Scan-to-Fax есть отдельная ошибка пути к команде

PaperCut классифицирует CVE-2026-82077 как path traversal в настройках Scan-to-Fax, позволяющий аутентифицированному администратору выполнять команды на хосте. watchTowr показала, что обход авторизации промежуточной версии мог предоставить недостающий аутентифицированный контекст.[1], [2]

Шаг 4

Окончательные версии закрывают раскрытую цепочку

PaperCut исправила WT-2026-0143 в аварийной сборке 76530, а CVE-2026-82077 — в 26.0.5/25.0.13. Публикация в октябре не означает, что окончательные версии уязвимы или что новая цепочка эксплуатировалась в реальных атаках.[1], [2]

Исходный код: Уязвимый vs Защищённый вариант

Этот общий пример на Java показывает две независимые меры: проверку прав для самой привилегированной операции и выбор исполняемого файла из серверного списка коннекторов с проверкой канонического пути. Это не код PaperCut и не патч поставщика. В рабочем коде также нужны проверка аргументов, ограничение привилегий процесса и исправленная версия PaperCut; проверка пути сама по себе не устраняет обход авторизации маршрутизации.

УЯЗВИМАЯ РЕАЛИЗАЦИЯ
Path executable = faxDirectory.resolve(clientConnectorName).normalize();
// Проверка на уровне маршрута не заменяет авторизацию этой операции.
new ProcessBuilder(executable.toString(), faxArguments).start();
БЕЗОПАСНЫЙ ИСПРАВЛЕННЫЙ ВАРИАНТ
if (!principal.canAdministerFax()) {
    throw new SecurityException("Fax administration is required");
}
Path root = faxDirectory.toRealPath();
Path executable = approvedConnectors.get(connectorId); // Server-owned allowlist.
if (executable == null) {
    throw new IllegalArgumentException("Unknown connector");
}
Path resolved = executable.toRealPath();
if (!resolved.startsWith(root) || !Files.isExecutable(resolved)) {
    throw new SecurityException("Connector is outside the approved directory");
}
new ProcessBuilder(resolved.toString(), validatedArguments).start();

Чек-лист по защите системы для инженеров

Источники