[LINK] Apple SSL/TLS bug February-2014

Michael mike at bystander.net
Tue Feb 25 13:48:43 AEDT 2014


Discussion I have seen suggests this bug is also present in the latest
MacOS, but no patch has been issued for it.
The plain English take is that SSL is potentially vulnerable to man in the
middle or other authentication issues.
So don't rely on SSL if you are on an untrusted network until you update
the iOS patch.
I believe MacOS users can make use of Chrome or Firefox in the meantime, as
they use their own SSL library.
iOS users could potentially use Chrome.
Note that non-browser applications are likely to use the SSL libraries too,
so even if you don't use Safari, its a good idea to update.
Finally, if you have an older iOS device that can run iOS 7, but you have
held off updating for performance reasons, be aware this update will force
you to move to iOS 7.
Regards,
Michael Skeggs


On 25 February 2014 12:26, Phillip Musumeci <pmusumeci at gmail.com> wrote:

> Extract from https://www.imperialviolet.org/2014/02/22/applebug.html might
> be of interest to LINK given recent discussions (the posting continues with
> a cut down code fragment and discussion):
>
> Yesterday, Apple pushed a rather spooky security
> update<http://support.apple.com/kb/HT6147> for
> iOS that suggested that something was horribly wrong with SSL/TLS in iOS
> but gave no details. Since the answer is at the
> top<https://news.ycombinator.com/item?id=7281378> of
> the Hacker News thread, I guess the cat's out of the bag already and we're
> into the misinformation-quashing stage now.
>
> So here's the Apple bug:
>
>
> static OSStatus
> SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa,
> SSLBuffer signedParams,
>                                  uint8_t *signature, UInt16 signatureLen)
> {
>         OSStatus        err;
>         *...*
>
>         if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
>                 goto fail;
>         if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
>                 goto fail;
>                 goto fail;
>         if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
>                 goto fail;
>         *...*
>
> fail:
>         SSLFreeBuffer(&signedHashes);
>         SSLFreeBuffer(&hashCtx);
>         return err;
> }
>
> (Quoted from Apple's published source
> code<
> http://opensource.apple.com/source/Security/Security-55471/libsecurity_ssl/lib/sslKeyExchange.c
> >
> .)
>
> Note the two goto fail lines in a row. ...
>
>
> --
> Contact/projects https://sites.google.com/site/pmusumeci/
>  <https://cardiacchallenge.com.au/PhillipMusumeci>
> _______________________________________________
> Link mailing list
> Link at mailman.anu.edu.au
> http://mailman.anu.edu.au/mailman/listinfo/link
>



More information about the Link mailing list