[Security] Bound spreadsheet coordinate expansion before XLSX traversal #18

Closed
opened 2026-09-08 00:59:18 +02:00 by zemion · 1 comment
Owner

Implemented locally: validate actual selected-sheet row/column coordinates before openpyxl materialization, ignore misleading declared dimensions, and count blank row gaps toward existing limits.13 tests plus2 subtests passed, including malicious-coordinate fixtures; EN/DE documentation updated. No external connection or live import was performed.

Coordinated review: GovOPlaN/govoplan-core#296. Changes are uncommitted/unpushed and this issue remains open pending publication and final integrated checks. No live application data was mutated.

Implemented locally: validate actual selected-sheet row/column coordinates before openpyxl materialization, ignore misleading declared dimensions, and count blank row gaps toward existing limits.13 tests plus2 subtests passed, including malicious-coordinate fixtures; EN/DE documentation updated. No external connection or live import was performed. Coordinated review: GovOPlaN/govoplan-core#296. Changes are uncommitted/unpushed and this issue remains open pending publication and final integrated checks. No live application data was mutated.
Author
Owner

Implemented and released in Connectors0.1.26: validate actual selected-sheet coordinates before XLSX traversal, ignore misleading declared dimensions, and count blank row gaps against existing limits. Malicious-coordinate regressions, owning EN/DE documentation and the final integrated gate passed, including the87-test Connectors suite. No live imports or external connector execution were used.

Publication evidence: Meta #51 records verified source tags, native packages and signed catalog Git publication. catalog-v0.1.45 is commit 03ac237949a1963189d1b7a4b3cc3397e60b10a1, annotated tag object 3d4735ea3028edfa47341e4f0b53650a4ae868d6, sequence 202609080236; exact stable.json SHA-256 00dd1fa8390b7823dc082eddaca0bd826f9fcee0c479f56cd82ea55f93bf3cc8.

This is not a live website deployment: a fresh public read still serves0.1.18/sequence202608061915. Website #9 owns authorized website rollout and its separate image-review gates. No application runtime distribution was published; Meta #52 remains held. No real mail/file/workflow operations or deployment were used to verify this closure.

<!-- govoplan-release-0.1.45-bounded-close:govoplan-connectors:18 --> Implemented and released in Connectors0.1.26: validate actual selected-sheet coordinates before XLSX traversal, ignore misleading declared dimensions, and count blank row gaps against existing limits. Malicious-coordinate regressions, owning EN/DE documentation and the final integrated gate passed, including the87-test Connectors suite. No live imports or external connector execution were used. Publication evidence: [Meta #51](https://git.add-ideas.de/GovOPlaN/govoplan/issues/51) records verified source tags, native packages and signed catalog Git publication. [catalog-v0.1.45](https://git.add-ideas.de/add-ideas/addideas-govoplan-website/src/tag/catalog-v0.1.45/public/catalogs/v1/channels/stable.json) is commit `03ac237949a1963189d1b7a4b3cc3397e60b10a1`, annotated tag object `3d4735ea3028edfa47341e4f0b53650a4ae868d6`, sequence `202609080236`; exact stable.json SHA-256 `00dd1fa8390b7823dc082eddaca0bd826f9fcee0c479f56cd82ea55f93bf3cc8`. This is not a live website deployment: a fresh public read still serves0.1.18/sequence202608061915. [Website #9](https://git.add-ideas.de/add-ideas/addideas-govoplan-website/issues/9) owns authorized website rollout and its separate image-review gates. No application runtime distribution was published; [Meta #52](https://git.add-ideas.de/GovOPlaN/govoplan/issues/52) remains held. No real mail/file/workflow operations or deployment were used to verify this closure.
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-connectors#18