Skip to content

Conversation

@jmelancongen
Copy link
Contributor

@jmelancongen jmelancongen commented Sep 3, 2025

As discussed during the last telco, we've identified a potential vulnerability in the current proposal at #545 that can happen under these conditions:

  • The system relies on a key server to decrypt PSSH boxes instead of distributing private keys to end-users
  • The configured public keys are reused for multiple devices, for example the keypairs are used for an entire customer account.
  • A threat actor is authorized to view one (Camera X), but not all devices on that account
image

Under these conditions, if the threat actor retrieves encrypted files from other devices, it could request decryption of their PSSH boxes to the key server by claiming these are from Camera X.

The core of the issue is that the Key Server only has the PSSH box as context for its operations. Any other information (url, query parameters, etc) are under the control of the threat actor and cannot be trusted.

The solution to this is the use of the Info field of HPKE, which allows additional data to be used to authenticate the encrypted payload. The Key Server can then know the structure of that field, and perform validations on it, knowing that if the field was tampered, decryption will fail. The field value is provided by the client at configuration time.

Maxime Bédard and others added 30 commits May 23, 2023 11:17
@jmelancongen jmelancongen changed the base branch from development to video/cloud-encryption September 3, 2025 13:52
Copy link
Contributor

@kieran242 kieran242 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jmelancongen Well thought out sir. I am happy to approve understanding the context from #545.

Base automatically changed from video/cloud-encryption to development September 5, 2025 10:26
@sujithhanwha
Copy link
Contributor

@jmelancongen , Is this vulnerability only relevant when the same key is used across an entire organization, requiring permissions to be managed via the Info field? If we instead assign distinct certificates to user groups within the organization, would that mitigate the issue?

@jmelancongen
Copy link
Contributor Author

As soon as a public key is used with more than one device. The only mitigation (without this PR) would be to set a distinct keypair for each and every device in the system, which will make management and rotation of these quite painful in large deployments. This proposal resolves this problem using the mechanism that are designed specifically for this purpose

@ocampana-videotec ocampana-videotec added this to the 26.06 milestone Dec 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants