Sign-field-with-token.ts в Documenso, используемый в интерактивном пользовательском интерфейсе для подписания документов, позволяет получателю с ролью ASSISTANT извлекать и заполнять поля, принадлежащие любому получателю более позднего или равного порядка, еще не подписанному, в том же конверте, без ограничений на тип поля. Обработчик обновляет запись подписи, привязанную к идентификатору получателя целевого поля, без проверки того, что поле field.type имеет значение SIGNATURE и что им владеет действующий получатель. Новый путь подписи V2 (sign-envelope-field.ts) явно запрещает помощникам заполнять поля SIGNATURE, а комментарии собственного набора тестов проекта подтверждают, что эта защита отсутствует в используемом здесь пути V1.
Таким образом, в документе с последовательной подписью помощник получателя может подделать поле подписи другого подписывающего лица.
Показать оригинальное описание (EN)
Documenso's sign-field-with-token.ts, used by the live document-signing UI, allows a recipient with the ASSISTANT role to fetch and complete fields belonging to any later-or-equal-order, not-yet-signed recipient in the same envelope, with no restriction on field type. A newer V2 signing path (sign-envelope-field.ts) explicitly blocks assistants from completing SIGNATURE fields, and the project's own test suite comments confirm this guard is absent from the V1 path used here.
Характеристики атаки
Последствия
Строка CVSS v3.1