Closed
Bug 456590
Opened 16 years ago
Closed 6 years ago
Yahoo and AT&T SMTP SSL change fails with Thunderbird
Categories
(Thunderbird :: Security, defect)
Tracking
(Not tracked)
RESOLVED
WORKSFORME
People
(Reporter: jm-mitre, Unassigned)
References
(Depends on 1 open bug)
Details
(Whiteboard: [psm-auth])
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Build Identifier: 2.0.0.16 (20080708) (also 2.0.0.9 and 3.0.1)
Last week AT&T (or Yahoo!) rolled out a change to their mail servers. Now Thunderbird users using this ISP can't send mail. There is also a necessary song and dance before Thunderbird users can receive mail. There are several symptoms.
Sending mail:
Thunderbird error, Send Message Error: Sending of message failed. The message could not be sent because connecting to SMTP server smtp.att.yahoo.com failed. The server may be ... Please verify ... or contact your network adminsitrator.
AT&T (or branded Yahoo!) support management is well aware of this problem. Their position is that there is a design flaw in Thunderbird. Support staff freely agrees that Thunderbird did work for months with their servers. They agree that it was a recent change to their servers that resulted in this problem. By being nice, you can get them to agree that it was their change that led to the "design flaw," which led to the problem.
There is no doubt that my settings [i][b]are[/b][/i] correct.
Others with the same setting have the same problem.
Reproducible: Always
Steps to Reproduce:
1. Configure correctly for AT&T+Yahoo! SSL SMTP connections
2. Compose mail
3. Click Send
Actual Results:
Thunderbird error, Send Message Error: Sending of message failed. The message could not be sent because connecting to SMTP server smtp.att.yahoo.com failed. The server may be ... Please verify ... or contact your network adminsitrator.
Expected Results:
Connection made; message sent.
I wrote the summary as "Yahoo and AT&T SSL change fails with Thunderbird," because I don't have enough information to be sure where the problem is.
This is the way AT&T+Yahoo! support management would have titled the thread:
Yahoo and AT&T SSL change uncovers design flaw in Thunderbird.
....
Last spring AT&T (and, maybe, all Yahoo! e-mail) switched to using an SSL session to transmit and to pick up mail. That required a change to the Thunderbird account settings. Easily made and no problem.
Last week AT&T (or Yahoo!) rolled out a change to their mail servers. Now Thunderbird users using this ISP can't send mail. There is also a necessary song and dance before Thunderbird users can receive mail. There are several symptoms.
Picking up mail:
1. An occassional Thunderbird request, User Identification Request: The site has requested that you identify yourself with a certificate: pop.att.yahoo.com; Org: Yahoo! Inc.; Issued Under Equifax
This can be dismissed, or a certificate can be supplied. (I provide the certificate, which I must have installed in Thunderbird, because I must read encrypted mail sent to me using my public key.)
2. Subsequent Thunderbird alert, Alert: Error establishing an encrypted connection to pop,att,yahoo.com. Error Code: -12195.
This can be dismissed with OK. Clicking the Get Mail icon again then successfully checks for mail and downloads any mail.
Sending mail:
3. When clicking Send icon on any message, sometimes the request of symptom 1 above.
This may be due to automatic checking for mail, and not related to the clicking of Send.
4. Thunderbird error, Send Message Error: Sending of message failed. The message could not be sent because connecting to SMTP server smtp.att.yahoo.com failed. The server may be ... Please verify ... or contact your network adminsitrator.
This can be dismissed with OK.
But the message is n o t sent.
.......
AT&T (or branded Yahoo!) support management is well aware of this problem. Their position is that there is a design flaw in Thunderbird. Support staff freely agrees that Thunderbird did work for months with their servers. They agree that it was a recent change to their servers that resulted in this problem. By being nice, you can get them to agree that it was their change that led to the "design flaw," which led to the problem.
There is no doubt that my settings [i][b]are[/b][/i] correct.
Others with the same settings have the same problem. Both XP and Vista. Both Thunderbird 2.0 and 3.0.
Posted as two bugs, one for POP and one for SMTP.
Probably related to 381287, which was recently assigned.
Possibly related 447960, 437683,
Cordially, Joaquin
Reporter | ||
Comment 1•16 years ago
|
||
Please let me know if I can help by gathering more info. Please give specific instructions. I'm a software architect, so kinda ignorant.
Comment 2•16 years ago
|
||
I get a similar alert, asking for my cert, and I also get prompted for my master password. Cancelling out allows the send to succeed. Oddly, my cert has expired. Nelson, is there logging I can do to figure out what's going on at the ssl level?
Reporter | ||
Comment 3•16 years ago
|
||
Posted at Bug 456593 for POP certificate problem.
Reporter | ||
Comment 4•16 years ago
|
||
Random thought: People using encrypted mail often have self-issued certificates or el cheapo certificates such as low class Verisign certificates. The certificate chains that these have may not inspire confidence at AT&T+Yahoo!.
Comment 5•16 years ago
|
||
Several thoughts.
1. I know what they changed in their server.
2. There are other bugs that describe this same problem, and this bug is
basically a duplicate of (at least) one of them.
3. See bug 313012 for a lot of history about this issue, especially comments
15, 26, 33, 36 & 37.
SSL always identifies the server to the client with a server certificate.
The server can also optionally ask the client to identify the client's user
to the server with a client certificate. When that happens, the user
typically gets the dialog described in comment 0.
Yahoo's email servers have apparently begun to request that your email
client identify you with a certificate. If it doesn't recognize the cert
you send it, it will terminate the connection. That's what you're seeing.
Note that, if you had a certificate for this purpose, it would typically
NOT be the same cert as you would use for encrypted S/MIME email, but email
certs CAN be used for this purpose, so Thunderbird will include any email
certs you have in the list of certs when it asks you to pick one. If none
of your certs are for client identification and authentication, then you
should click cancel.
Today, the email protocols (POP, IMAP, SMTP) all give the user a choice about
what to do when the server asks the client to identify itself with a client
certificate. The two choices offered are:
- pick one automatically, or
- ask the user to pick one EVERY TIME.
This is chosen by one global preference named security.default_personal_cert
which applies to all protocols. The default was recently changed to
"ask every time". Users whose certs are not accepted by the server MUST
presently use the "ask every time" setting so that they can choose to send
NONE. Otherwise, some wrong cert will be automatically sent every time.
For a long time now, I have been suggesting that each mail/news account
should have its own separate configuration for this, and there should be
4 choices including the ones shown in the suggested configuration pane
below. Implementing this will probably require changes to both the mail
protocols and to PSM.
Suggested preference panel for configuring email identity client auth:
> Every time that this server asks me to identify myself with a certificate:
> ( ) automatically pick one of my certificates to send
> (o) ask me to pick one
> ( ) always send my certificate that I have chosen below
> ( ) do not send any certificate
That last choice in particular would solve the problem for most people.
Please, email Gods, can we get that into TB 2?
Comment 6•16 years ago
|
||
I meant "TB, the next generation" (whatever is coming from the trunk).
Comment 7•16 years ago
|
||
Thx very much, Nelson. Cc'ing Bryan for his UI input. I believe there's a patch out there for associating certs with identities, but that may be for signing/encrypting e-mail, I'm not sure.
What changes would we need to make to our protocol code and PSM to support this?
Would we add this to the security page of the account settings? That page is already pretty full. And we only really care about this if the user has pick SSL/TLS.
Comment 8•16 years ago
|
||
Do all these users now need a client certificate? This makes me wonder about someone's suggestion to generate these when accounts are created / certificates are required from the server.
Most people are not going to understand at all what a user certificate is. I think we'll need an optimized route that creates one and sends it to the server asking the user once; at most. If a person has a certificate already setup we'll definitely need to prompt them for which one to use. Initial use of thunderbird after creating a first account will be a tricky situation to handle.
Can this user cert be required for downloading mail as well as sending?
Comment 9•16 years ago
|
||
My understanding from what Nelson said is that most users can pick "None" as the cert to use, and everything will be OK (I haven't tried that yet, and it's a bit counter-intuitive).
I don't believe we can just create a certificate on the fly.
Yes, this applies to POP3 and IMAP, as well as SMTP.
Comment 10•16 years ago
|
||
It may be the case that Yahoo is beginning to allow some of its users to
authenticate themselves with certificates from a particular CA, and has
merely misconfigured their server so that, instead of sending out the
name of the CA whose certs they honor, they are sending out an empty CA
name list, which means "Any CA".
Or, it may be that they do not intend to use client authentication at all,
and have erroneously enabled client authentication in their server.
I'd put my money on that bet.
Either way, it's a server configuration error.
It really makes no sense to accept certs from ANY CA, because users can be
their own CAs with programs like OpenSSL. It only makes sense to trust
some (one, or a few) CAs, and accept certs from them only. When the server
is configured to do that, it is supposed to send out a list of the names
of the CAs whose certs it will accept. But the Yahoo server is sending out
an empty list.
Most users have no certs of their own, so they will not be asked to pick
one of their certs. The few that do will be asked. IF the server was
sending out the proper CA name list, then only those users with certs
from the selected CA(s) would be asked, and users whose cert(s) come only
from CAs not in that list will not be asked.
Comment 11•16 years ago
|
||
(In reply to comment #7)
> What changes would we need to make to our protocol code and PSM to support
> this?
Kai Engert (Mr. PSM) can best answer that question. It may be that no PSM
changes are required. I don't know. Your protocol code would need some
interface to PSM by which it can tell PSM what cert to use for the account.
That might be a call-back interface from PSM to your code. Your code needs
to store the info I described in the prefs for the account.
> Would we add this to the security page of the account settings? That page is
> already pretty full. And we only really care about this if the user has pick
> SSL/TLS.
Maybe you need a new separate security certificates page/tab. Wherever you
put that config info, You will want accounts to be separately configurable
for certs to:
a) sign outgoing emails
b) use for receiving encrypted emails, and
c) use for SSL client authentication.
It's probably best for all those choices to be made on a single page/tab,
so that the user sees all 3 choices at once, and is less confused about
what goes where.
Reporter | ||
Comment 12•16 years ago
|
||
Thanks, Nelson.
Your workaround works around the AT&T+Yahoo! server configuration problem.
I used Config Editor to set security.default_personal_cert to 'Ask Every Time'.
Whenever the User Identification Request dialog box pops up, I click Cancel.
In the long run, all of us will either convince AT&T to reconfigure or switch to Comcast.
And thanks to all.
Cordially, Joaquin
Comment 13•16 years ago
|
||
> My understanding from what Nelson said is that most users can pick "None" as
> the cert to use, and everything will be OK (I haven't tried that yet, and it's
> a bit counter-intuitive).
So it seems that when a person adds their own client cert we should be asking if they want to use it for all accounts or specific accounts. And possibly upon receiving a request from a server ask the person some cert details.
For servers that accept "None" as a response it sounds like we want to ignore this request when a user doesn't have certs defined. Otherwise we'll just be prompting people with garble text, "Do you want to frobnicate your widgets?". Or we'll be blocking people from using TB, like the comment 0 explains.
> > Would we add this to the security page of the account settings? That page is
> > already pretty full. And we only really care about this if the user has pick
> > SSL/TLS.
>
> Maybe you need a new separate security certificates page/tab. Wherever you
> put that config info, You will want accounts to be separately configurable
> for certs to:
> a) sign outgoing emails
> b) use for receiving encrypted emails, and
> c) use for SSL client authentication.
>
> It's probably best for all those choices to be made on a single page/tab,
> so that the user sees all 3 choices at once, and is less confused about
> what goes where.
Seems like that's the best place for it to go, despite being a thorny mess already.
Comment 14•16 years ago
|
||
In my case, I have an expired cert - the UI asks me to pick it as the cert to send, and then, I assume, the server rejects it. And I can't get rid of the expired cert because I didn't have a master password because of some other unpleasantness, and that makes it impossible to do lots of things, apparently.
Comment 15•16 years ago
|
||
(In reply to comment #13)
> So it seems that when a person adds their own client cert we should be asking
> if they want to use it for all accounts or specific accounts.
It is extremely unlikely that two servers will ever accept the same cert for
client authentication purposes, and even more unlikely that ALL servers
would accept the same cert. Remember than if you send the wrong cert to
a server, your connection gets terminated. So, "use for all accounts" is
not really a good choice for client authentication certs.
> And possibly upon receiving a request from a server ask the person some
> cert details.
? What do you have in mind?
> For servers that accept "None" as a response it sounds like we want to ignore
> this request when a user doesn't have certs defined. Otherwise we'll just be
> prompting people with garble text, "Do you want to frobnicate your widgets?".
> Or we'll be blocking people from using TB, like the comment 0 explains.
You never get to this dialog unless
a) the server has requested client auth, AND
b) You have one or more certs that were issued by one of the CAs named by
the server, and that can be used for client auth. (noting that if the
server's list of CA names is empty, then all CAs are acceptable.)
A user who has no certs, or whose only certs are not from a CA named by the server, will not see this dialog. IOW, the dialog will not appear when the
list of certs from which the user would select will be empty.
Comment 16•16 years ago
|
||
(In reply to comment #14)
> In my case, I have an expired cert - the UI asks me to pick it as the cert to
> send, and then, I assume, the server rejects it.
That's a decision made by Mozilla people, not by NSS people. A cert that has
expired is not valid *by definition*. But some users who manage their own
servers wanted their own self-issued client certs to be valid forever, even
after they expired. They complained that they were not give the change to
select expired certs, and someone caved in and gave them that choice.
Imgaine explaining to your mother why expired certs are in her list. :(
Comment 17•16 years ago
|
||
I suggest that people who want a real fix to this go and vote for bug 437683
which was just denied for TB3.
Comment 18•16 years ago
|
||
Nelson: I didn't _deny_ it for TB3, I denied it blocking-tb3 status, which is very different. I do want it for Tb3. Also, voting on bugs is not worth it -- explaining to me the relationship between the two bugs (which I figured out after that flag setting) is a much better way to get the bug the attention it deserves.
Comment 19•16 years ago
|
||
This hot bug and its twin bug 456593 are still unconfirmed in bugzilla. I cannot verify this problem myself since I don't have an account on yahoo or AT&T, but it looks verified to me. Can someone please verify this bug and update the status and platform?
Comment 21•16 years ago
|
||
Until we get fix for bug 437683 in a future release, is it possible to at least initially just to add the new option (3) "send no cert" (ever) (even if I have some defined) to the existing security.default_personal_cert property (globally) and get it in the next v2 patch? It's a real pain for Yahoo users to have to click cancel all the time now...
Reporter | ||
Comment 22•16 years ago
|
||
Shredded behavior is the same.
Shredder 3.0b1pre
thunderbird-3.0b1pre.en-US.win32.installer.exe 27-Sep-2008 04:28 7.8M
Downloaded 27 Sep 8 2:10 PM PDT
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b1pre)
Gecko/20080927031346 Shredder/3.0b1pre
security.default_personal_cert : Ask Every Time
Details at Bug 456593
Comment 23•16 years ago
|
||
I have a similar problem and I also have a third party certificate.
I have changed security.default_personal_cert : Ask Every Time
as outlined in Comment #12 From Joaquin Miller 2008-09-24 15:50:17 PST.
That worked once, anyway.
Why is everybody busy pointing fingers instead of trying to fix the problem?
Dave
Comment 24•16 years ago
|
||
I have This problem and am glad that I am not alone. Now can one of you come up with a simple work around that us unknowing can use to get our mail sent? Make it simple so that we non programmers can use it. Other wise is there another company that has a similar DSL offer to AT&T that is inexpensive and works that we can move to until AT&T gets theirs fixed or some quits poking holes in the sky with their finger and fixes Thunderbird
Reporter | ||
Comment 25•16 years ago
|
||
Stanley:
This is a problem with Yahoo! and AT&T: "Yahoo and AT&T SMTP SSL change fails with Thunderbird." Thunderbird behaves correctly, so it is not a question of fixing Thunderbird. However...
1) Workaround
The simple workaround is:
Whenever Thunderbird displays the User Identification Request window
Check Remember this decision (if not already checked).
Click Cancel.
You will have to do this twice, since both the AT&T POP servers and the AT&T SMTP servers are misconfigured. And you will have to do it each time you start Thunderbird. You may also have to do it more than once if you keep Thunderbird is open for a long time, as the mail servers may challenge you again.
Resist the temptation to click OK.
If you do click OK, you must close all Thunderbird windows and restart Thunderbird.
If you do not see this window pop up, you need to change your configuration item, security.default_personal_cert, to: ask every time.
2) Changes that should be made to improve Thunderbird user experience
>>>>>>>> Fellahs and Gals:
Only one change to Thunderbird is required:
either a) add an option to the configuration item security.default_personal_cert: do not send any certificate
or: b) add None to the dropdown in the User Identification Request window. (I have encryption certificates and None is not offered)
See Comments 5 and 10, where the problem at AT&T+Yahoo!is explained.
>>>>>>> I hope someone will own making this small change to Thunderbird.
(Lots of us have been living with this for a third of a year now.)
(Additional--and better--suggestions are made at Comment 5, too. It will be excellent when those are also implemented.)
Cordially, Joaquin
Reporter | ||
Comment 26•16 years ago
|
||
Oops. Sorry. I think my second suggestion:
or: b) add None to the dropdown in the User Identification Request window.
is dumb.
Cordially, Joaquin
Updated•15 years ago
|
Depends on: betterclientauth
Reporter | ||
Comment 27•15 years ago
|
||
Question:
Why is this bug marked Depends on: 437683?
Please see comments #48 and 49 of 437683. This bug, 45659o, can be resolved with a config change, adding an option to an existing config item:
set
security.default_personal_cert
to
Send no certificate
(not a per account configuration)
This bug is not assigned, will someone take it?
Thanks everyone. Please forgive my ignorance of how Depends on: is used.
Comment 28•15 years ago
|
||
Are there any updates on this issue?
Thunderbird 3.0 is approaching and I cannot see any improvement on this side. I either have to not use any certificate or always hit cancel if not willing to authenticate ssl with my own certificate. This is indeed annoying, especially given that along with "select automatically" and "ask every time" developers could easily add "never use certificates" into options (even hidden into the about:config would still be really appreciated!)
Updated•15 years ago
|
Whiteboard: [psm-clientauth]
Updated•15 years ago
|
Whiteboard: [psm-clientauth] → [psm-auth]
Reporter | ||
Comment 29•9 years ago
|
||
Today Wayne Mery asked whether I am still seeing this bug.
Short answer: No.
Long answer:
See: Comment 12 Joaquin Miller 2008-09-24 15:50:17 PDT
Then sometime later, too far in the past for me to remember when, but certainly years ago, my problem with AT&T Yahoo! went away. I regret that I can not tell you whether this was due to a new version of Thunderbird or due to a change at Yahoo!. I expect many mail readers had the same problem, so maybe Yahoo! or AT&T decided to back out this change.
Please let me know if Nelson's suggested change to Thunderbird has been implemented.
The security (and reliability) of the e-mail infrastructure is damaged whenever mail readers fail to implement security capabilities fully and promptly.
If Nelson's or some other change has not been implemented in Thunderbird, then my guess is that all large e-mail server providers (except for those targeted at the enterprise or government market) have decided that they can't implement client certificates. If so, that decision is not good for humans. Bad.
(Don't get me wrong. Support in the software world for certificates is second rate at best. That's ain't Mozilla's or Thunderbird developer's fault. But by supporting the security standards that have been adopted fully, Thunderbird developers and Mozilla can do a great service to society. When Thunderbird fails to provide such support, Thunderbird developer's and Mozilla are part of the problem.)
See also https://bugzilla.mozilla.org/show_bug.cgi?id=188988 . Outstanding for years. Discouraging humans from using end to end encryption of e-mail. I am required by my work to use encrypted e-mail. So I can't search my messages. ****!
Comment 30•9 years ago
|
||
> Please let me know if Nelson's suggested change to Thunderbird has been implemented.
If you are asking whether bug 437683 and it's blockers (bug 511384, etc mostly filed by kaie) were fixed, the anser is no.
> sometime later, too far in the past for me to remember when, but certainly years ago, my problem with AT&T Yahoo! went away. I regret that I can not tell you whether this was due to a new version of Thunderbird or due to a change at Yahoo!. I expect many mail readers had the same problem, so maybe Yahoo! or AT&T decided to back out this change.
I don't know how yahoo client auth has evolved over the years. perhaps javi or alice will know.
Flags: needinfo?(leofigueres)
Flags: needinfo?(alice0775)
Comment 32•9 years ago
|
||
I am not an AT&T customer so I am unable to reproduce. Since being using Yahoo as my mail provider I have experienced some eventual problems while sending or querying for new messages, but they are not only on Thunderbird.
Flags: needinfo?(leofigueres)
Comment 33•6 years ago
|
||
It sounds like this email provider has fixed their configuration, and they no longer request client auth certificates from any CA. No reports in many years. Resolving as worksforme.
Remaining suggestions for improvement are tracked in other bugs.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WORKSFORME
Updated•6 years ago
|
Severity: major → normal
You need to log in
before you can comment on or make changes to this bug.
Description
•