Skip to content

Commit

Permalink
Proxy-Chosen Virtual Client Connection ID
Browse files Browse the repository at this point in the history
As described in ietf-wg-masque#88, loop attacks are possible when clients pick the
virtual connection ID. This change moves the responsibility of
generating a Virtual Client Connection ID to the proxy and requires
the proxy to generate unpredictable virtual connection IDs.

Unfortunately, this change complicates the capsule exchange.
Specifically, the proxy cannot send forwarded mode packets in the
Target->Client direction until it knows that the client is ready to
receive them. Previously, when the client chose the vcid, we could
require that the client not share the vcid unless it's ready to receive
with it. Now that the proxy chooses the client vcid, we need the
client to signal it's ready to receive forwarded mode packets. To
accomplish this, ACK_CLIENT_VCID is introduced.

The ACK_CLIENT_VCID capsule solves the rule-readiness problem and
maintains that the client can supply a Stateless Reset Token for
resetting the client<->target tunnel.
  • Loading branch information
ehaydenr committed Feb 19, 2024
1 parent 5460151 commit c8cd162
Showing 1 changed file with 202 additions and 90 deletions.
Loading

0 comments on commit c8cd162

Please sign in to comment.