Skip to content
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

upgrade from nss 3.56 to 3.58 breaks purple-discord: nss: Handshake failed (-12251) #313

Open
pabs3 opened this issue Oct 22, 2020 · 14 comments

Comments

@pabs3
Copy link
Collaborator

pabs3 commented Oct 22, 2020

After upgrading from nss 3.56 to 3.58, purple-discord can no longer connect to Discord due to a nss: Handshake failed (-12251) error. According to the Mozilla nss docs this means that "SSL received a malformed Change Cipher Spec record.". It seems other folks have the same problem but with XMPP, but my XMPP accounts don't have the same problem.

(14:06:02) account: Connecting to account <removed>.
(14:06:02) connection: Connecting. gc = 0x55e0caa236d0
(14:06:02) dnsquery: Performing DNS lookup for gateway.discord.gg
(14:06:02) signals: Signal data for chat-conversation-typing not found!
(14:06:02) dns: Successfully sent DNS request to child 380080
(14:06:02) dns: Got response for 'gateway.discord.gg'
(14:06:02) dnsquery: IP resolved for gateway.discord.gg
(14:06:02) proxy: Attempting connection to 162.159.135.234
(14:06:02) proxy: Connecting to gateway.discord.gg:443 with no proxy
(14:06:02) proxy: Connection in progress
(14:06:02) proxy: Connecting to gateway.discord.gg:443.
(14:06:02) proxy: Connected to gateway.discord.gg:443.
(14:06:02) nss: Handshake failed  (-12251)
(14:06:02) connection: Connection error on 0x55e0caa236d0 (reason: 0 description: Couldn't connect to gateway)
(14:06:02) account: Disconnecting account <removed> (0x55e0c96c6c70)
(14:06:02) connection: Disconnecting connection 0x55e0caa236d0
(14:06:02) connection: Destroying connection 0x55e0caa236d0
@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 22, 2020

I used the Pidgin NSS Preferences plugin to set the minimum TLS version to 1.0, set the maximum TLS version to 1.3 and enable all the ciphers that were disabled, but this did not fix the issue.

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 22, 2020

The NSS release notes: 3.57 3.58

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 22, 2020

I used the Pidgin NSS Preferences plugin to disable TLS version 1.3 and this fixed the issue.

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 22, 2020

I recompiled NSS 3.58 with a revert for the fix for CVE-2020-25648 and that also fixed the issue.

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 22, 2020

I've filed a bug against NSS asking the author of the patch for help with this issue.

@Penaz91
Copy link
Contributor

Penaz91 commented Oct 22, 2020

nss 3.57 seems to have been working okay for me, the update to 3.58 broke the plugin, if this helps with troubleshooting.

@Iiridayn
Copy link

Iiridayn commented Oct 22, 2020

Also impacts slack-libpurple - dylex/slack-libpurple#129. Might be an issue in Pidgin?

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 23, 2020 via email

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 26, 2020

Mozilla developers have fixed this issue in NSS. I'm going to test their patch now.

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 26, 2020

I have confirmed this issue is fixed by the patch added by Mozilla folks. Once there is a new release and the release reaches the distros, then I think this issue can be closed.

@EionRobb
Copy link
Owner

Making the assumption that people are unable to upgrade nss (eg, no new package provided or don't update very often) - is there something that can be done in the plugin to trigger the 'compat' mode that they were talking about in the Mozilla thread?

@pabs3
Copy link
Collaborator Author

pabs3 commented Oct 26, 2020 via email

@pabs3
Copy link
Collaborator Author

pabs3 commented Nov 23, 2020

Mozilla have released NSS 3.59 containing the fix and that has reached Debian and other distros.

@pabs3
Copy link
Collaborator Author

pabs3 commented Nov 23, 2020

@EionRobb I'll leave it up to you how long you want to keep this open so folks experiencing it can see it, but from my point of view it can be closed now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants