POODLE in the repeat

POODLE in the repeat

Lately we have heard a lot of POODLE I have already blogged about it twice here and here at ibmconnections.com. But there is much more to tell about it so that the reason I am creating this article.

Nowadays when we talk about POODLE we have to specify which one (to make things easier 🙂 ). Nowadays we have POODLE SSLv3 and POODLE TLS. The one we call POODLE SSLv3 bites IBM Connections the most but POODLE TLS is easier to exploit. So for environments which are connected to the internet I advise you to be sure that both variants of POODLE are not exploitable at your implementation.

I will try to describe both variants in detail and how it/they can be solved. Lets first start with POODLE SSL v3

POODLE SSLv3

The news about this first POODLE exploit was brought to the world as a major problem while in fact the problem wasn’t that big if you ask me. The problem itself was there where still site’s out there who did support SSLv3. SSLv3 has shown in the past that it isn’t sufficient anymore as a secure protocol. I will try to describe why I think it wasn’t really such big news as it was brought by all news agencies. Normally when a clients connect to a server the clients tells the server the highest secure protocol it supports (this is what is generally is called  the ClientHello package). Within this ClientHello package the clients also send also all cipher suites (these cipher suites are the real data encryption packages) it supports for that version of SSL/TLS. The server then responds with 3 things ServerHello and Certificate and ServerHelloDone messages. Within the ServerHello message the server will send the protocol it is gonna use. This is decided on the protocol version send in the ClientHello message and the highest version the server supports. So for the real world (which is kind of dependent on browser behavior and version) this means in general that TLS1.2 is used. But with the POODLE SSLv3 bug if both parties supported SSLv3 it was possible by the attacking code to force the connection down from TLS1.2 to SSLv3 (with all the intermediate protocols because you can always fall back only one version at a time). So when this happens a user would still see it has a secure connection but it is over SSLv3 (and not the most sucre possible way between server and client as they bot did support TLSv1.2). The cipher suites used in SSLv3 are all general seen as insecure (only RC4 seems to be the most secure one) and fairly easy to decrypt unintentionally. So as you can see POODLE SSLv3 wasn’t the real problem if you ask me ! but that the server (and or client) still supported SSLv3 was the real problem :-). I added a screenshot to show how that traffic flows between the client and the server so you have and idea what happens on the network to build a SSL/TLS connection.

dFU6e

With IBM Connections we always had to enable the HTTP server with SSLv3 because the code within IBM Connections was still making use of SSLv3 calls to itself. The reason for that is that in the code they made use for example with code like this SSLContext.getInstance(“SSL”). Within the IBM JDK JSSE interface this SSL Keyword translated to make use of SSLv3. This was basically a combination of 2 problems , one that they still used a bit of outdated code within IBM Connections binaries , and also of the JSSE implementation in the IBM JDK that the keyword SSL still translated to make use of SSLv3. As said and stated by me, SSLV3 shouldn’t be used already for many years if you ask me 🙂

Well for IBM Connections we have a solution now (luckily) I will talk about that a bit later in the article.

POODLE TLS

The original attacking method of POODLE was made so that they made use of the padding bytes. Within SSLv3 nobody (wel thats a assumption) did a check on those padding bytes. Within the TLS specification it is specified to check on those padding bytes but most of the implementations out there didn’t do that (which makes the officially incompatible with the TLS’s RFC’s but okay 🙂 ) . So that makes TLS connections which make use of CBC cipher’s also vulnerable when they don’t check those padding bytes (and the funny thing about this is that most of the devs creating these encrypting/decrypting libararies still used the old functions/implementations within their code base which didn’t check those padding bytes). The IBM HTTP Server (IHS) which makes use of gskit for the data encrypting/decrypting part functionality of the SSL/TLS implementation where the rest of the world makes use of OpenSSL. So in the case of the IBM World we need to make sure if the CBC encrypting/decrypting routine checks on those padding bytes. Well I can tell you that older version of those gskit didn’t do that and are vulnerable to those POODLE on TLS attacks also.

But also for that there is a solution where I talk about a bit later in this article.

Solution POODLE SSLv3

Well as explained above there are 2 ways how this could have been solved. IBM did choose to fix it on the IBM JDK side instead of the original problem, the code itself. To solve it on the IBM JDK side we have to install a Interim Fix on top of WebSphere which updates the IBM JDK so that the SSL Keyword doesn’t force a SSLv3 connection anymore but a TLS connection. For the different IBM Connections version I will list the Interim Fixes needed.

For IBM Connections 3.0.1 and 3.0.1.1 and 4 you have to apply iFix PI28934
For IBM Connections 4.5 you have to apply PI29575
For IBM Connections 5.0 you have to apply PI28920 or PI28437

The strange thing is that for IBM Connections 5 (which is running on WebSphere 8.5.5.x) we have 2 iFixes available. Personally I have tried to use PI28920 and couldn’t get that iFix to work but I got some reaction from IBM Connections community (for instance from Klaus Bild) that they where able to use to iFix to get SSLv3 switched off. I personally have used PI28437 several times now with success. PI28437 (SDK6 (J9 2.6) SR8 FP1) also installs a newer version of the JAVA SDK then the PI28920 (SDK6 (J9 2.6) SR7 FP1) so my advice is to make use of the PI28437 iFix instead of the PI28920

After you have installed this iFix you can safely disable SSLv3 on your IHS (IBM HTTP Server). This can be done with the SSLProtocolDisable SSLv3 in your vHost configuration part of the config file(default httpd.conf) for your IHS.

Solution POODLE TLS

As described above also the gskit implementation has some problems regarding the checking of the padding bytes. To tell the gskit implementation that we want a strict checking on those padding bytes we have to add the following setting
SSLAttributeSet 471 1 to the config file (default httpd.conf) to all VHOST sections which have SSLEnable in them. This setting can only be applied to the following IHS versions.

  • 7.0.0.33 or later
  • 8.0.0.9 or later
  • 8.5.5.2 or later

For other release version which can not be upgraded, for whatever reason, to the above specified versions you can install any of the following iFixes as what I understood from this technote to make use of this SSLAttributeSet 471 1 setting.

  • PI17025
  • PI05309
  • PI08502
  • PI09443
  • PI13422
  • PI19700
  • PI26894

So I hope this makes everthing a bit more clear in the POODLE jungle out there 🙂

If you have any addition to this story please let me know so I will update the article.

Reviewing IBM Connections 4.0

Great new reviewer’s guide from IBM:

This Reviewer’s Guide provides an extensive overview of the latest version of IBM’s social software, IBM Connections 4.0, and its nine applications: Home, Profiles, Activities, Blogs, Bookmarks, Communities, Files, Forums, and Wikis. In addition, this guide explains how to extend the features and functions of IBM Connections to your existing applications.

A perfect start if you’re looking to find out the new features and enhancements in IBM Connections 4.0, or to communicate those with others.  Written by those that know the product best:

Baan Slavens, Product Manager, Social Software, IBM
Mac Guidera, Product Manager, Social Software, IBM
Luis Benitez, Product Manager, Social Software, IBM
Fred Raguillat, Solution Architect, IBM
Rene Schimmer, Offering Manager, Social Software, IBM
Suzanne Livingston, Senior Product Manager, Social Software, IBM
Heidi Ambler, Director, IBM

Download it here (PDF)

How to download IBM Connections 4.0

IBM provides a useful technote explaining how to download IBM Connections 4.0:

Abstract
This document describes how to download and assemble IBM Connections 4.0 from Passport Advantage.

Download Description
IBM Connections is social networking software designed for the workplace. Its applications help you to establish dynamic networks that connect people, information, and business goals.

More information
To access a wide variety of technical resources for the product, visit the IBM Connections web page on developerWorks.

Space requirements

  • 3 GB of disk space to store the full set of downloadable parts, and 11 GB of disk space to unpack the parts.
  • 100 GB of disk space to install and configure the product (including databases).

More >

The key information contained is the part numbers for all required and optional parts.  Definitely worthwhile to print and have available when downloading from Passport Advantage or Patrtnerworld!

First fixes available for IBM Connections 4.0

Abstract

iFixes LO71325 and LO71327 are required for IBM Connections 4.0.

Content

iFixes LO71325 and LO71327 are required for IBM Connections 4.0. Please download both iFixes from Fix Central, then apply to the IBM Connections 4.0 server using the update installer.

Use this link to download both fixes from Fix Central

More >

I believe that one of these came direct from a customer I’m working with.  Make sure you install them 😉

Videos – Using features in IBM Connections 4.0

More on the latest greatest version of IBM Connections, 4.0 – released today!

Using Activities:

http://www.youtube.com/watch?v=8N76QKSOmfk

Using Bookmarks:

http://www.youtube.com/watch?v=Vu-x2w1szsQ

Using Blogs:

http://www.youtube.com/watch?v=N992Ldh8GD

Using Communities:

http://www.youtube.com/watch?v=BMOiZhCYaF8

Using Forums:

http://www.youtube.com/watch?v=LT_opZCj_kQ

Using Wikis:

http://www.youtube.com/watch?v=NdpSNokMuH0

IBM Connections 4.0 announced

At a glance

IBM Connections V4.0 is designed to help you:

  • Track the activity of your network and respond more quickly using the embedded experience within the activity stream.
  • Bring external applications and content into the activity stream to respond in context, saving time and reducing context switching.
  • Track and respond to the activities of community members using the community-centric activity stream and embedded experience.
  • Quickly bring content from external sites and related communities into your community for faster response and better customer service.
  • Develop insights into community adoption and usage with new standard and customizable metrics and graphical reports.
  • Receive relevant recommendations on people and content using social analytics that now also utilize status updates and microblogging content.
  • Use hashtags to follow important topics and “Like” updates with a single click.
  • Schedule team events and incorporate into a personal calendar using a new community calendar.

More >

The GA code will be available on Friday 7th September from Passport Advantage and PartnerWorld.

There will be much more to come on this new release now that embargos and NDAs are being lifted.

To say I’m excited about having the 4.0 GA code in my grubby little paws is a massive understatement. Many fun days ahead!

IBM Connections 4.0. About to go public…

News from the IBM Greenhouse:

We are targeting our upgrade to Connections 4.0 Beta for Thursday July 26th. Connections will be down for the entire day while we upgrade and test the new environment.

Less than a week away!  As many of you will be aware, upgrading the Greenhouse install of Connections is one of the most significant public steps that takes place as an IBM Connections release nears GA.  The wraps are thrown off and everyone gets to try the code themselves first-hand.

With well publicised enhancements such as the embedded experience, share box, Connections Mail (aka ‘Social Mail’), community activity streams and a brand new UI, this is a massive release for the Connections product.  Where 3.0.x saw Connections hit maturity as a social platform in my eyes, 4.0 will see it really leap forward in terms of the impact on enterprise users – it can definitely become the centrepiece in an organisation’s messaging and collaboration infrastructure.

These are exciting times…  Make sure you check out Connections 4.0 in the Greenhouse this time next week!