stable

Clone or download

Read-only

feat: Attempt to identify and fix changesets affected by CVE-2024-30246

This contribution introduces a standalone tool to help identify and fix, when possible, changesets affected by CVE-2024-30246. The standalone tool can built into an independant PHAR archive by running `composer run build` in `tools/utils/CVE-2024-30246/`. The tool provide two sub-commands: * `identify`: this sub-command is expected to be executed on the production datase (or a copy of it). It will give you dates that can be used to extract from your backups a not corrupted DB and a document with the list of potentially affected changeset value ID. * `retrieve`: this sub-command uses the document generated by the `identify` sub-command and must be run against a restored DB. It generates SQL queries to re-insert the corrupted changeset values into the production DB. Related to request #37545: Deleting or moving an artifact can delete values from unrelated artifacts Change-Id: I7664520307a7cdf08dba5f1021e109b505d2cc51

Modified Files

Name
A tools/utils/CVE-2024-30246/.gitignore +3 −0 Go to diff View file
A tools/utils/CVE-2024-30246/README.md +11 −0 Go to diff View file
A tools/utils/CVE-2024-30246/composer.json +28 −0 Go to diff View file
A tools/utils/CVE-2024-30246/composer.lock +4123 −0 Go to diff View file
A tools/utils/CVE-2024-30246/main.php +36 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/AffectedValuesSearcher.php +158 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/CollectionOfAffectedValues.php +85 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/DatabaseCredentials.php +80 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/DatabaseQuerier.php +180 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/FieldValue.php +53 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/IdentifyAffectedValuesCommand.php +80 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/MissingChangesetDocument.php +52 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/RetrieveMissingValuesCommand.php +93 −0 Go to diff View file
A tools/utils/CVE-2024-30246/src/SQLQueryMissingChangesetValueCreator.php +90 −0 Go to diff View file