Skip to content

Fix PNTS section bounds validation - #1432

Open
atirna wants to merge 1 commit into
CesiumGS:mainfrom
atirna:agent/cesium-native-1425-pnts-bounds
Open

Fix PNTS section bounds validation#1432
atirna wants to merge 1 commit into
CesiumGS:mainfrom
atirna:agent/cesium-native-1425-pnts-bounds

Conversation

@atirna

@atirna atirna commented Aug 11, 2026

Copy link
Copy Markdown

Description

Reject PNTS tiles when the declared feature and batch table sections extend past the tile's byteLength. The check uses a 64-bit aggregate before any section spans are created, covering both vulnerable paths.

Issue number or link

Fixes #1425

Author checklist

  • I have submitted a Contributor License Agreement (only needed once).
  • I have done a full self-review of my code.
  • I have updated CHANGES.md with a short summary of my change (for user-facing changes).
  • I have added or updated unit tests to ensure consistent code coverage as necessary.
  • I have updated the documentation as necessary.

Testing plan

  • cmake --build build --target cesium-native-tests --parallel 4
  • build/CesiumNativeTests/cesium-native-tests --test-case='Rejects PNTS sections that extend past the declared byte length' (1 test case, 8 assertions)
  • clang-format --dry-run --Werror on the changed C++ source and test

@j9liu

j9liu commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

Thanks @atirna for the PR! We still need a signed Contributor License Agreement from you in order to review your code. Once that is signed, we can put this on our review queue and take a look!

@atirna

atirna commented Aug 11, 2026

Copy link
Copy Markdown
Author

have submitted the CLA form

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PntsToGltfConverter.cpp OOB read

2 participants