Hi All,

 

We are having a problem with Telnet/SSL.  The server (IBM UniVerse) uses
OpenSSL 0.9.7e.  It was upgraded from OpenSSL 0.9.6e, which is where our
troubles started.

 

Under Windows Vista, we are connecting to the server and the SSL
handshake is failing.  Under Windows XP or using the older version of
UniVerse, the connection was established correctly.

 

Some information that we have been able to discover:

 

When connecting to the old version of the server from XP SP2,
TLS_RSA_WITH_RC4_MD5 is used.

When connecting to the old version of the server from Vista,
TLS_RSA_WITH_RC4_SHA is used.

When connecting to the new version of the server from XP SP2,
TLS_RSA_WITH_RC4_MD5 is used.

When connecting to the new version of the server from Vista,
TLS_RSA_WITH_AES_128_CBC_SHA is used.  This one fails.

 

We have tried connecting to the Telnet/SSL server with Wintegrate 6.0
and Network Magic (which are both Telnet clients that support
Telnet/SSL) from Vista, both are compiled against OpenSSL, and both
connect fine.  It is worth noting that both connect using
TLS_DHE_RSA_WITH_AES_256_CBC_SHA.

 

However, when we use our third-party control in our application that
supports Telnet/SSL, it fails.  I've put in a support call with both IBM
and our third-party provider, but I figured I would also hit up this
group to see if anybody has any ideas or thoughts as to why this could
be happening.  I'm at a loss as to where the problem is occurring and
whos fault it is (and hence how to fix it!).  I don't know if it is an
OpenSSL issue, Microsoft Issue (the third party control uses the
Microsoft Unified Security Protocol Provider) or something else
entirely.

 

One interesting thing is that we have found that by modifying the SSL
Cipher Order in Vista through the policy editor that we can move the
order of SSL Cipher choices and that if we move TLS_RSA_WITH_RC4_SHA to
the top, we can connect with Vista.  This is, however, not a useable
solution for our customers (since it involves group policy changes,
rebooting machines, etc...).  To me, this points to Microsoft, but I
don't know... I'm not knowledgeable enough about SSL and all this stuff.

 

Here is the client request through Ethereal:

Frame 4 (123 bytes on wire, 123 bytes captured)

Transmission Control Protocol, Src Port: 49274 (49274), Dst Port: 992
(992), Seq: 1, Ack: 1, Len: 69

Secure Socket Layer

    SSLv2 Record Layer: Client Hello

        Length: 67

        Handshake Message Type: Client Hello (1)

        Version: TLS 1.0 (0x0301)

        Cipher Spec Length: 42

        Session ID Length: 0

        Challenge Length: 16

        Cipher Specs (14 specs)

            Cipher Spec: TLS_RSA_WITH_AES_128_CBC_SHA (0x00002f)

            Cipher Spec: TLS_RSA_WITH_AES_256_CBC_SHA (0x000035)

            Cipher Spec: TLS_RSA_WITH_RC4_128_SHA (0x000005)

            Cipher Spec: TLS_RSA_WITH_3DES_EDE_CBC_SHA (0x00000a)

            Cipher Spec: Unknown (0x00c009)

            Cipher Spec: Unknown (0x00c00a)

            Cipher Spec: Unknown (0x00c013)

            Cipher Spec: Unknown (0x00c014)

            Cipher Spec: TLS_DHE_DSS_WITH_AES_128_CBC_SHA (0x000032)

            Cipher Spec: TLS_DHE_DSS_WITH_AES_256_CBC_SHA (0x000038)

            Cipher Spec: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA (0x000013)

            Cipher Spec: TLS_RSA_WITH_RC4_128_MD5 (0x000004)

            Cipher Spec: SSL2_RC4_128_WITH_MD5 (0x010080)

            Cipher Spec: SSL2_DES_192_EDE3_CBC_WITH_MD5 (0x0700c0)

        Challenge

 

Here is a copy of the server response through Ethereal:

No.     Time        Source                Destination           Protocol
Info

      6 0.346840    172.27.1.6            172.27.5.126          SSLv3
Server Hello, Certificate, Server Hello Done

 

Frame 6 (792 bytes on wire, 792 bytes captured)

Transmission Control Protocol, Src Port: 992 (992), Dst Port: 49274
(49274), Seq: 1, Ack: 70, Len: 738

Secure Socket Layer

    SSLv3 Record Layer: Handshake Protocol: Server Hello

        Content Type: Handshake (22)

        Version: SSL 3.0 (0x0300)

        Length: 74

        Handshake Protocol: Server Hello

            Handshake Type: Server Hello (2)

            Length: 70

            Version: SSL 3.0 (0x0300)

            Random.gmt_unix_time: May  3, 2007 14:31:49.000000000

            Random.bytes

            Session ID Length: 32

            Session ID (32 bytes)

            Cipher Suite: TLS_RSA_WITH_AES_128_CBC_SHA (0x002f)

            Compression Method: null (0)

    SSLv3 Record Layer: Handshake Protocol: Certificate

        Content Type: Handshake (22)

        Version: SSL 3.0 (0x0300)

        Length: 645

        Handshake Protocol: Certificate

            Handshake Type: Certificate (11)

            Length: 641

            Certificates Length: 638

            Certificates (638 bytes)

                Certificate Length: 635

                Certificate:
308201E0020100300D06092A864886F70D01010505003081... ()

                    signedCertificate

                        serialNumber: 0

                        signature (shaWithRSAEncryption)

                            Algorithm Id: 1.2.840.113549.1.1.5
(shaWithRSAEncryption)

                        issuer: rdnSequence (0)

                                *removed certificate information*

                        validity

                            notBefore: utcTime (0)

                                utcTime: 050427175442Z

                            notAfter: utcTime (0)

                                utcTime: 050527175442Z

                        subject: rdnSequence (0)

                                *removed certificate information*

                        subjectPublicKeyInfo

                            algorithm (rsaEncryption)

                                Algorithm Id: 1.2.840.113549.1.1.1
(rsaEncryption)

                            Padding: 0

                            subjectPublicKey:
30818902818100C2B16C6617DE98949B8D9A04232CCCCFAA...

                    algorithmIdentifier (shaWithRSAEncryption)

                        Algorithm Id: 1.2.840.113549.1.1.5
(shaWithRSAEncryption)

                    Padding: 0

                    encrypted:
32EEAB3A5EA0BDE55492B478AAC2144D0585DA7E610FF227...

    SSLv3 Record Layer: Handshake Protocol: Server Hello Done

        Content Type: Handshake (22)

        Version: SSL 3.0 (0x0300)

        Length: 4

        Handshake Protocol: Server Hello Done

            Handshake Type: Server Hello Done (14)

            Length: 0

 

Any and all help is much appreciated!

 

Clayton Boucher

Campana Systems Inc


==============================================================================
This email and any attachments may contain confidential and privileged 
information which is not subject to public disclosure. If you are not the 
intended recipient, please notify the sender immediately by return email and 
delete this email. Any dissemination or use of this information by a person 
other than the intended recipient is unauthorized and may be illegal.


L'information ou tout fichier joint contenu dans ce courriel est confidentiel 
et destiné uniquement au(x) récipiendaire(s) nommé(s) ci-dessus. Si vous n'êtes 
pas le récipiendaire identifié, prière de répondre immédiatement par courriel à 
l'expéditeur et effacer toute copie de ce courriel. La diffusion ou l'usage de 
cette information par une autre personne que le ou les récipiendaires prévus 
est non autorisé et peut être illégal.
==============================================================================

Reply via email to