-
-
Notifications
You must be signed in to change notification settings - Fork 15.4k
php: Fix CVE-2018-17082 (nixos-unstable) #50511
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Success on aarch64-linux (full log) Attempted: php Partial log (click to expand)
|
Success on x86_64-linux (full log) Attempted: php Partial log (click to expand)
|
@Ekleog I first used a non-assert solution and got it pointed out to me that that was a bad idea because then it goes unnoted that the change of feature flags have happened. Which I agree to. That's why it ended up like this but got documented. And I've been following the issue on the PHP bugtracker to see if they actually will resolve this but it's not very hopeful. Which actually kinda surprise me since they broke the build in a minor release and don't seem able to fix it. I'm also in favor of aligning it up again and if you and others think that this assert warning solution is good enough for this, I'm all for it. I've also looked through the intl extension in the docs a bit https://secure.php.net/intl and, I must say. From my years (8+) of working professionally with PHP. I don't think that I've ever to my knowledge have used this extension myself. It may be used by some popular libraries, I don't know about that. But overall I'm in favor of this. With this fix we could close #50014. |
@etu Hmm, it's possible to add the |
@Ekleog As the person who pointed me out to me said: "Better to fail on rebuild than the user upgrading and go home for the weekend and see it fail while it's weekend." |
@Ekleog Status on this? |
2833966
to
344d88d
Compare
Also make Darwin align itself to Linux versions, due to CVE-2018-17082 forcing our hand on this. This means Darwin must compile without intl.
344d88d
to
d0bdf4d
Compare
@etu Sorry for the delay, I was away from the Internet last week! I think unstable should go without the manual change, because the default will need to change before 19.03 anyway, and So I've pushed two new versions of this PR, for This will likely break tests for 18.09, unfortunately… but I don't really see a better way forward, as silent breakage or leaving a security vulnerability are two important issues… I guess we'll have to fix tests once we notice they break, though I'm not sure how often tests are run for Darwin on 18.09. TL;DR: I think this is good to go, and we'll have to handle the broken stuff when it becomes apparent. |
Also make Darwin align itself to Linux versions, due to CVE-2018-17082 forcing our hand on this. This means Darwin must compile without intl. Based on commit 283396658a69f5a4ed3d832bc849c53fa8e05ce1, with the change that here we refuse to build if the user doesn't manually disable intl. See [1] for the reasoning. [1] NixOS#50511 (comment)
Success on x86_64-linux (full log) Attempted: php Partial log (click to expand)
|
Success on aarch64-linux (full log) Attempted: php Partial log (click to expand)
|
Yeah, there's those two choices. And neither choice is a good choice. So one have to pick what's best. And it this case I agree that it's different on unstable and stable 🙂 |
Counterproposal on #51091 to keep backwards compatibility -- the patches are trivial enough that imo it's worth it. I'll let you pick your favorite option :) |
Superseded by now-merged #51091 |
php: 7.2.10 -> 7.2.12, 7.1.22 -> 7.1.24
Also make Darwin align itself to Linux versions, due to CVE-2018-17082
forcing our hand on this. This means Darwin must compile without intl.
Motivation for this change
The alternative would be to backport the fix to a previous version of
php
. It looks pretty easy, but I know the PHP code base very little and wouldn't trust simply using this patch to fix the issue unless spending much more time on it.cc @etu who introduced the split between darwin and linux
@GrahamcOfBorg build php71 php72
@GrahamcOfBorg test elk owncloud
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nox --run "nox-review wip"
./result/bin/
)nix path-info -S
before and after)