Summary
Sunshine's pairing protocol implementation does not validate request order and is thereby vulnerable to a MITM attack, potentially allowing an unauthenticated attacker to pair a client by hijacking a legitimate pairing attempt. This bug may also be used by a remote attacker to crash Sunshine.
Details
An attacker that can observe and modify requests from the client (e.g. with a MITM attack) can perform an offline brute-force attack on the PIN (and thus encryption key) before the pairing procedure is finished, then repeat previous stages of the procedure to replace encrypted data with their own forged data, causing the attacker's malicious certificate to be successfully paired instead of the legitimate client certificate. This will cause pairing to fail on the legitimate client.
Impact
An unauthenticated attacker can perform a MITM attack on a client attempting to pair with Sunshine in order to pair a malicious client. A malicious client paired in this manner could perform any actions possible using a normally paired client.
An attacker can also perform stages of pairing intentionally out of order to induce a crash of Sunshine. This does not require user interaction or a MITM attack.
Fix
The bug was patched by 89f097a.
Summary
Sunshine's pairing protocol implementation does not validate request order and is thereby vulnerable to a MITM attack, potentially allowing an unauthenticated attacker to pair a client by hijacking a legitimate pairing attempt. This bug may also be used by a remote attacker to crash Sunshine.
Details
An attacker that can observe and modify requests from the client (e.g. with a MITM attack) can perform an offline brute-force attack on the PIN (and thus encryption key) before the pairing procedure is finished, then repeat previous stages of the procedure to replace encrypted data with their own forged data, causing the attacker's malicious certificate to be successfully paired instead of the legitimate client certificate. This will cause pairing to fail on the legitimate client.
Impact
An unauthenticated attacker can perform a MITM attack on a client attempting to pair with Sunshine in order to pair a malicious client. A malicious client paired in this manner could perform any actions possible using a normally paired client.
An attacker can also perform stages of pairing intentionally out of order to induce a crash of Sunshine. This does not require user interaction or a MITM attack.
Fix
The bug was patched by 89f097a.