User-agent signing endpoint accepts arbitrary client_id #64
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Info
Severity: MEDIUM
Attack vector: local malicious process
Impact
Allows a compromised or partially malicious user-agent process to route signing through another approved SDK client's grants.
Description
The user-agent
SignTransactionendpoint takesclient_iddirectly from the request payload and forwards it into the signing path without an intent check, consent flow, or binding to a previously selected client context. A compromised user-agent frontend can therefore impersonate any approved SDK client for signing purposes.Example flow
SignTransactionrequest.client_idto another approved SDK client.ClientSignTransaction.Mitigation
Bind signing requests to an explicit approved client selection, verify that selection before forwarding, and add audit logging for cross-client signing.