Falls ihr Composer Patches mit Hilfe des Packages cweagans/composer-patches
in Version ^1.7
über die composer.json
eures Projektes einspielt, solltet ihr aufpassen, dass ihr euch keine Sicherheitslücke unbemerkt ins Boot holt.
Mit dem heutigen Update auf helhum/typo3-console:8.2
ist im #typo3-console slack channel folgende Problematik sichtbar geworden:
Sobald ihr eigene Patches über die composer.json
eures Projektes anwendet, werden in cweagans/composer-patches:^1.7
automatisch auch Patches aus Abhängigkeiten (also den über eure composer.json
installierten Packages) angewandt. Da ihr in diesem Fall nicht direkt bemerkt, welche Code-Änderungen durch die anderen Packages mit eingespielt werden, stellt das ein Sicherheitsrisiko dar.
Mit dem folgenden Patch wurde diese Lücke in cweagans/composer-patches
bereits geschlossen:
https://github.com/cweagans/composer-patches/pull/267
Dieser ist aktuell bereits in die cweagans/composer-patches
Beta-Version eingeflossen. Meinen Tests zufolge, wurde beispielsweise der Patch aus helhum/typo3-console:8.2
mit cweagans/composer-patches:2.0.0-beta1
und cweagans/composer-patches:2.0.0-beta2
nicht mehr angewandt.
Aus diesem Grund würde ich euch empfehlen, sicherheitshalber vorläufig explizit die Beta-Version zu verwenden, um weiter eure eigenen Patches anzuwenden.
Alternativ zur Nutzung der Beta-Version könnte man mit der folgenden Angabe in eurer Projekt composer.json
im Block extra
auch explizit Patches aus Abhängigkeiten benennen, die nicht angewandt werden sollen:
"patches-ignore": {
"helhum/typo3-console": {
"typo3/cms-core": {
"Fix composer PackageArtifact packagePath resolve for root pkgs": "patches/typo3-cms-core-review-85198.patch"
}
}
}
In diesem Fall müsstet ihr aber alle Patches aus Abhängigkeiten selbst auf dem Schirm haben und derart berücksichtigen.