Closed
Bug 1465562
Opened 7 years ago
Closed 7 years ago
sslStatus.succeededCertChain is null in CertUtils.jsm download xpi from github
Categories
(Core :: Security: PSM, defect, P1)
Core
Security: PSM
Tracking
()
VERIFIED
FIXED
mozilla62
| Tracking | Status | |
|---|---|---|
| firefox-esr52 | --- | unaffected |
| firefox-esr60 | --- | unaffected |
| firefox60 | --- | unaffected |
| firefox61 | + | verified |
| firefox62 | + | verified |
People
(Reporter: keeler, Assigned: keeler)
References
(Depends on 1 open bug)
Details
(Keywords: regression, Whiteboard: [psm-assigned])
Attachments
(2 files)
|
59 bytes,
text/x-review-board-request
|
franziskus
:
review+
|
Details |
|
13.30 KB,
patch
|
keeler
:
review+
RyanVM
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
STR: Visit https://perf-html.io/, click "Install Add-On", click "Allow"
Console says:
1527705044845 addons.xpi WARN Download of https://raw.githubusercontent.com/devtools-html/Gecko-Profiler-Addon/master/gecko_profiler.xpi failed: TypeError: sslStatus.succeededCertChain is null (resource://gre/modules/CertUtils.jsm:156:7) JS Stack trace: checkCert@CertUtils.jsm:156:7
This is probably directly a result of the changes in bug 1454504, but ultimately because the cert chain isn't getting set after certificate validation for some reason... (session resumption?)
| Assignee | ||
Comment 1•7 years ago
|
||
Hmmm - I went to have lunch and now I can't reproduce this :(
Maybe it really was a network issue? If so, it seems we shouldn't access succeededCertChain without checking that it's non-null first.
Comment 3•7 years ago
|
||
For testpilot, install fails from https://color.firefox.com/ and works from https://testpilot.firefox.com/
| Assignee | ||
Comment 4•7 years ago
|
||
If you can still reproduce this, can you capture as much detail about the network connection as possible? (e.g. is it a tls session resumption? is it being loaded from the cache? http2/alt svc maybe?)
Flags: needinfo?(hkirschner)
Comment 5•7 years ago
|
||
It did work for me on a fresh profile.
On the profile where it reproduced before, I uninstalled the Color extension and tried again. Got a connection failure.
Request
Host: testpilot.firefox.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:62.0) Gecko/20100101 Firefox/62.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en,en-GB;q=0.8,en-US;q=0.6,de;q=0.4,es;q=0.2
Accept-Encoding: gzip, deflate, br
Referer: https://color.firefox.com/
Cookie: _ga=GA1.2.1102208990.1497461978
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Response
HTTP/2.0 200 OK
content-type: application/x-xpinstall
content-length: 234425
accept-ranges: bytes
cache-control: max-age=30
date: Tue, 05 Jun 2018 04:52:09 GMT
etag: "80c3c342542f2380d864a2c649619a80"
last-modified: Mon, 04 Jun 2018 21:37:20 GMT
public-key-pins: max-age=5184000; pin-sha256="WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18="; pin-sha256="r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E="; pin-sha256="YLh1dUR9y6Kja30RrAn7JKnbQG/uEtLMkBgFF2Fuihg="; pin-sha256="sRHdihwgkaib1P1gxX8HFszlD+7/gTfNvuAybgLPNis="
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
x-cache: RefreshHit from cloudfront
via: 1.1 c7b4131244863241121573ea02fc44ad.cloudfront.net (CloudFront)
x-amz-cf-id: Rw65_DiaHh_BOTsclbF704K17MhO8EpvJyT5Vi4U-gzSyJf1BMmi3g==
X-Firefox-Spdy: h2
CURL
curl 'https://testpilot.firefox.com/files/FirefoxColor@mozilla.com/signed-addon.xpi' -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:62.0) Gecko/20100101 Firefox/62.0' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' -H 'Accept-Language: en,en-GB;q=0.8,en-US;q=0.6,de;q=0.4,es;q=0.2' --compressed -H 'Referer: https://color.firefox.com/' -H 'Cookie: _ga=GA1.2.1102208990.1497461978' -H 'DNT: 1' -H 'Connection: keep-alive' -H 'Upgrade-Insecure-Requests: 1'
Flags: needinfo?(hkirschner)
Hello,
I'm having the same issue on 61.0b11 with my own extension. I tested on 2 sites: 1st one uses InstallTrigger.install() method and works well in both r60, r61b11; 2nd one uses location.href= for installation of xpi file it works in r60 but doesn't in r61b11.
Is it better to create a separate bug or I can use this one for adding whatever you need for investigation?
| Comment hidden (mozreview-request) |
| Assignee | ||
Comment 8•7 years ago
|
||
(In reply to aries.nah from comment #6)
> Hello,
> I'm having the same issue on 61.0b11 with my own extension. I tested on 2
> sites: 1st one uses InstallTrigger.install() method and works well in both
> r60, r61b11; 2nd one uses location.href= for installation of xpi file it
> works in r60 but doesn't in r61b11.
> Is it better to create a separate bug or I can use this one for adding
> whatever you need for investigation?
Let's just use one bug for now - if fixing this bug doesn't address what you're seeing, feel free to open a new one.
status-firefox60:
--- → unaffected
status-firefox61:
--- → affected
status-firefox62:
--- → affected
tracking-firefox61:
--- → ?
Component: Add-ons Manager → Security: PSM
Product: Toolkit → Core
Whiteboard: [psm-assigned]
Comment 9•7 years ago
|
||
| mozreview-review | ||
Comment on attachment 8984248 [details]
bug 1465562 - ensure succeededCertChain is set in TLS handshakes with session resumption
https://reviewboard.mozilla.org/r/250036/#review256498
lgtm
Attachment #8984248 -
Flags: review?(franziskuskiefer) → review+
Updated•7 years ago
|
status-firefox-esr52:
--- → unaffected
status-firefox-esr60:
--- → unaffected
tracking-firefox62:
--- → +
Keywords: regression
| Comment hidden (mozreview-request) |
| Assignee | ||
Comment 11•7 years ago
|
||
Thanks!
The test wasn't quite right on windows for some reason: https://treeherder.mozilla.org/#/jobs?repo=try&revision=b19c59e8ca6c5d893b66ca4b1734a04ebb2f2ad2
So I rearranged it slightly: https://treeherder.mozilla.org/#/jobs?repo=try&revision=e6b9610948af6219b58ce4ebc93283989b7b49d4
Comment 12•7 years ago
|
||
Pushed by dkeeler@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/2b65a8f99622
ensure succeededCertChain is set in TLS handshakes with session resumption r=fkiefer
Updated•7 years ago
|
Flags: qe-verify+
Comment 13•7 years ago
|
||
Backed out for Android mochitest failures on test_cache_padding.html
Backout link: https://hg.mozilla.org/integration/autoland/rev/3a3bbb2e68ef7429368c347c53b4ac819b5db6a0
Log link: https://treeherder.mozilla.org/logviewer.html#?job_id=182582018&repo=autoland&lineNumber=2039
Flags: needinfo?(dkeeler)
| Assignee | ||
Comment 14•7 years ago
|
||
I believe that test may have already been faulty and we just happened to trigger a particular failure case for it. I'm investigating in bug 1468434.
Flags: needinfo?(dkeeler)
| Assignee | ||
Comment 15•7 years ago
|
||
I'm fairly confident that the test failure on android is due to a preexisting issue in the dom fetch/cache implementation (see bug 1468434 comment 6). I spoke with :RyanVM and we agreed that re-landing this with test_cache_padding.html disabled on android for now is a reasonable approach given that it would be best to be able to uplift this before the release candidate on Monday.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=33479ea4c34933366234c7b63c157c9e3d3c6c25
| Comment hidden (mozreview-request) |
Comment 17•7 years ago
|
||
Pushed by dkeeler@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/5d47226b6b8c
ensure succeededCertChain is set in TLS handshakes with session resumption r=fkiefer
Comment 18•7 years ago
|
||
| bugherder | ||
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
Comment 19•7 years ago
|
||
Please nominate this for Beta approval when you get a chance.
Flags: needinfo?(dkeeler)
| Assignee | ||
Comment 20•7 years ago
|
||
Approval Request Comment
[Feature/Bug causing the regression]: bug 1454504
[User impact if declined]: Users won't be able to install add-ons hosted on servers with non-EV certificates that use TLS session resumption.
[Is this code covered by automated tests?]: yes
[Has the fix been verified in Nightly?]: no
[Needs manual test from QE? If yes, steps to reproduce]: no
[List of other uplifts needed for the feature/fix]: none
[Is the change risky?]: not very
[Why is the change risky/not risky?]: this is a small change that should make our security state tracking for TLS session resumption handshakes behave more like full handshakes (so this is almost certainly not a wrong thing to do)
[String changes made/needed]: none
Flags: needinfo?(dkeeler)
Attachment #8985634 -
Flags: review+
Attachment #8985634 -
Flags: approval-mozilla-beta?
Comment 21•7 years ago
|
||
Comment on attachment 8985634 [details] [diff] [review]
patch for beta
Fix for broken extension installation from servers with certain security configurations. Includes new automated tests. Approved for 61.0rc1.
Attachment #8985634 -
Flags: approval-mozilla-beta? → approval-mozilla-beta+
Comment 22•7 years ago
|
||
| bugherder uplift | ||
Flags: in-testsuite+
Comment 23•7 years ago
|
||
Tried to reproduce on an older version of Nightly v.62.0a1 Build ID: 20180530100110 and also on the latest Nightly 62.0a1 Build ID: 20180618220118 following the steps described in the description but couldn't reproduce on either of the versions.
Tried also on Beta 61.0b14 Build ID: 20180614135649 on Win 10/64 but couldn't install the add-on from https://perf-html.io/ after I clicked on "Allow" button I've received an error that stated that "the add-on could not be downloaded because of a connection failure." however there were no connection issues (other pages worked fine) and there was no error shown on the console page.
Comment 24•7 years ago
|
||
Update: I've retested the above issue on the same Beta version with a new profile and couldn't reproduce anymore. I think the problem was related with the profile I've used previously.
Comment 25•7 years ago
|
||
Hi [:keeler]
Given the fact that I'm not able to reproduce the issue at all, on either of the browser versions, please take a look at this fix on the latest build to make sure that everything is ok.
Flags: needinfo?(dkeeler)
| Assignee | ||
Comment 26•7 years ago
|
||
I reproduced this on 61b10 and nightly 62 20180522100110 using https://color.firefox.com and couldn't reproduce it on the most recent 61 beta or 62 nightly so I think we're good.
Flags: needinfo?(dkeeler)
You need to log in
before you can comment on or make changes to this bug.
Description
•