fix(security): close auth bypass gaps for connect/SO callbacks and audio codec masquerade - #252
Draft
cursor[bot] wants to merge 1 commit into
Draft
fix(security): close auth bypass gaps for connect/SO callbacks and audio codec masquerade#252cursor[bot] wants to merge 1 commit into
cursor[bot] wants to merge 1 commit into
Conversation
…dio codec masquerade - Treat on_connect_cb and on_shared_object_cb as implicit auth hooks so publish/play require explicit on_publish_cb/on_play_cb when configured - Reject ambiguous enhanced-audio headers (IsExHeader bit with printable but unrecognized FourCC) instead of falling back to legacy SoundFormat - Add regression tests for all three paths Co-authored-by: Alexander Wagner <info@alexanderwagnerdev.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes three medium-severity authorization bypasses found in scheduled security review at
c5d39e71.Findings fixed
1. Publish/play bypass with only
on_connect_cb(Medium) — #249src/session/conn.rsconnectwhen the server configured onlyon_connect_cbas its auth hook.on_connect_cbinrequires_explicit_publish_auth()/requires_explicit_play_auth().2. Publish/play bypass with only
on_shared_object_cb(Medium) — #251src/session/conn.rson_shared_object_cbin the explicit-auth cross-gates.3. Enhanced audio codec masquerade (Medium) — #250
src/session/conn.rsexaudio_parsefell back to legacy G711U, bypassingon_media_cbOpus deny lists.None) somedia_alloweddenies the frame.Tests
src/session/conn.rs.Closes #249, #250, #251.