White Paper: Addressing the POODLE Security Vulnerability in Progress OpenEdge



Similar documents
Corticon Studio: Extensions Guide

V 7.6 Tutorial. Batch to Real-time. Progress Sonic Workbench Online Help Tutorial Instructions in PDF Format

Introduction. Purpose. Background. Details

Corticon Server: Deploying Web Services with Java

Corticon Server: Deploying Web Services with Java

Corticon Studio: Rule Modeling Guide

How to Resolve the POODLE Vulnerability in Native Connection to Oracle

Building ObjectStore C++ Applications. Release 6.3

ARTIX PROGRESS. Installation Guide

Payius. Guide to SSL certicates in ecommerce

SSL-TLS VPN 3.0 Certification Report. For: Array Networks, Inc.

Cisco SSL Encryption Utility

11 Aug 2014 Beta Draft

Security Guide vcenter Operations Manager for Horizon View 1.5 TECHNICAL WHITE PAPER

Encryption. Administrator Guide

Novell Access Manager

Automated Vulnerability Scan Results

ISY994 Series Network Security Configuration Guide Requires firmware version Requires Java 1.7+

HTTPS: Transport-Layer Security (TLS), aka Secure Sockets Layer (SSL)

Oracle Fusion Middleware

USING SSL/TLS WITH TERMINAL EMULATION

Connect to an SSL-Enabled Microsoft SQL Server Database from PowerCenter on UNIX/Linux

VMware vcenter Log Insight Security Guide

Connection Broker Managing User Connections to Workstations and Blades, OpenStack Clouds, VDI, and more. Security Review

Dream Report Version 4.5

IUCLID 5 Guidance and Support

Owner of the content within this article is Written by Marc Grote

ERserver. iseries. Securing applications with SSL

Scaling Progress OpenEdge Appservers. Syed Irfan Pasha Principal QA Engineer Progress Software

SSLSmart Smart SSL Cipher Enumeration

Lepide Active Directory Self Service. Configuration Guide. Follow the simple steps given in this document to start working with

Web Application Security Assessment and Vulnerability Mitigation Tests

Whitepaper : Using Unsniff Network Analyzer to analyze SSL / TLS

Enterprise Manager. Version 6.2. Installation Guide

Security Protocols/Standards

ERserver. iseries. Secure Sockets Layer (SSL)

Configuring Secure Socket Layer and Client-Certificate Authentication on SAS 9.3 Enterprise BI Server Systems That Use Oracle WebLogic 10.

Managing the SSL Certificate for the ESRS HTTPS Listener Service Technical Notes P/N REV A01 January 14, 2011

How to configure SSL proxying in Zorp 3 F5

Configuring Secure Socket Layer (SSL) for use with BPM 7.5.x

VMware vrealize Operations for Horizon Security

Using EMC Unisphere in a Web Browsing Environment: Browser and Security Settings to Improve the Experience

(For OpenEdge 10.1C & 10.2A customers)

3.2: Transport Layer: SSL/TLS Secure Socket Layer (SSL) Transport Layer Security (TLS) Protocol

How-To Guide SAP NetWeaver Document Version: How To Guide - Configure SSL in ABAP System

Connection Broker Managing User Connections to Workstations, Blades, VDI, and more. Security Review

FileMaker Server 11. FileMaker Server Help

Setting Up SSL From Client to Web Server and Plugin to WAS

Parallels Plesk Panel

Chapter 17. Transport-Level Security

Enabling SSL and Client Certificates on the SAP J2EE Engine

MatrixSSL Getting Started

Exinda How to Guide: SSL Acceleration

Installation Guide QAD Business Intelligence. QAD BI OpenEdge 10 Edition QAD BI Progress 9 Edition

MD Link Integration MDI Solutions Limited

CumuLogic Load Balancer Overview Guide. March CumuLogic Load Balancer Overview Guide 1

SysPatrol - Server Security Monitor

VMware vrealize Operations for Horizon Security

FileMaker Server 13. FileMaker Server Help

Is Your SSL Website and Mobile App Really Secure?

Hardening Guide for EventTracker Server

What s Your HTTPS Grade? A Case Study of HTTPS/SSL at Mid Michigan Community College. Brandon bkish@midmich.edu

DISTRIBUTED CONTENT SSL CONFIGURATION AND TROUBLESHOOTING GUIDE

ARIS Server Installation and Administration Guide ARIS. Version Service Release 1

SSL Report: ebfl.srpskabanka.rs ( )

FileMaker Server 14. FileMaker Server Help

Integrated SSL Scanning

BusinessLink Software Support

Administration Console Guide Access Manager 3.2 SP3

ARTIX PROGRESS. Artix 5.6 Installation Guide

Oracle Endeca Platform Services. Security Guide Version March 2012

S E C U R I T Y A S S E S S M E N T : B o m g a r A p p l i a n c e s

Outlook Express. Make Changes in Red: Open up Outlook Express. From the Menu Bar. Tools to Accounts - Click on Mail Tab.

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues

Table of Contents. Requirements and Options 1. Checklist for Server Installation 5. Checklist for Importing from CyberAudit

TELNET CLIENT 5.0 SSL/TLS SUPPORT

WEBCONNECT INSTALLATION GUIDE. Version 1.96

Linux Deployment Guide. How to deploy Network Shutdown Module for Linux

Brocade Virtual Traffic Manager and Oracle EBS 12.1 Deployment Guide

Configuring DoD PKI. High-level for installing DoD PKI trust points. Details for installing DoD PKI trust points

Pacific Application Server for OpenEdge: Getting Started. Progress OpenEdge 11.5 Workshop

Administration Guide. BlackBerry Enterprise Service 12. Version 12.0

Intro to AppDynamics with SSL

TIBCO Enterprise Administrator Release Notes

Configuration Guide. BlackBerry Enterprise Service 12. Version 12.0

CA Nimsoft Unified Management Portal

How to configure HTTPS proxying in Zorp 5

Configuring Secure Socket Layer HTTP

C O N F I G U R I N G O P E N L D A P F O R S S L / T L S C O M M U N I C A T I O N

CA DLP. Release Notes for Advanced Encryption. r12.0

SBClient SSL. Ehab AbuShmais

An Oracle White Paper June, Enterprise Manager Cloud Control 12c Infrastructure and Operational Security Best Practices

DOCUMENTUM CONTENT SERVER CERTIFICATE BASED SSL CONFIGURATION WITH CLIENTS

United States Department of Agriculture

Setting Up a Unisphere Management Station for the VNX Series P/N Revision A01 January 5, 2010

Crystal Reports Installation Guide

JAMF Software Server Installation and Configuration Guide for OS X. Version 9.0

Ricardo Perdigao, Solutions Architect Edsel Garcia, Principal Software Engineer Jean Munro, Senior Systems Engineer Dan Mitchell, Principal Systems

Citrix XenApp 6.5 and XenDesktop 5.6 Security Standards and Deployment Scenarios Supplementary scenarios

Transcription:

White Paper: Addressing the POODLE Security Vulnerability in Progress OpenEdge

Notices 2015 Progress Software Corporation and/or its subsidiaries or affiliates. All rights reserved. These materials and all Progress software products are copyrighted and all rights are reserved by Progress Software Corporation.The information in these materials is subject to change without notice, and Progress Software Corporation assumes no responsibility for any errors that may appear therein. The references in these materials to specific platforms supported are subject to change. Business Making Progress, Corticon, DataDirect (and design), DataDirect Cloud, DataDirect Connect, DataDirect Connect64, DataDirect XML Converters, DataDirect XQuery, Deliver More Than Expected, Easyl, Fathom, Icenium, Kendo UI, Making Software Work Together, OpenEdge, Powered by Progress, Progress, Progress Control Tower, Progress RPM, Progress Software Business Making Progress, Progress Software Developers Network, Rollbase, RulesCloud, RulesWorld, SequeLink, SpeedScript, Stylus Studio, TeamPulse, Telerik, Test Studio, and WebSpeed are registered trademarks of Progress Software Corporation or one of its affiliates or subsidiaries in the U.S. and/or other countries. AccelEvent, AppsAlive,, BravePoint, BusinessEdge, DataDirect Spy, DataDirect SupportLink,, Future Proof, High Performance Integration, Modulus, NativeScript, OpenAccess, Pacific, ProDataSet, Progress Arcade, Progress Pacific, Progress Profiles, Progress Results, Progress RFID, Progress Progress Software, ProVision, PSE Pro, SectorAlliance, Sitefinity, SmartBrowser, SmartComponent, SmartDataBrowser, SmartDataObjects, SmartDataView, SmartDialog, SmartFolder, SmartFrame, SmartObjects, SmartPanel, SmartQuery, SmartViewer, SmartWindow, WebClient, and Who Makes Progress are trademarks or service marks of Progress Software Corporation and/or its subsidiaries or affiliates in the U.S. and other countries. Java is a registered trademark of Oracle and/or its affiliates. Any other marks contained herein may be trademarks of their respective owners. Please refer to the Release Notes applicable to the particular Progress product release for any third-party acknowledgements required to be provided in the documentation associated with the Progress product. The Release Notes can be found in the OpenEdge installation directory and online at: https://community.progress.com/technicalusers/w/openedgegeneral/1329.openedge-product-documentation-overview.aspx. For the latest documentation updates see OpenEdge Product Documentation on Progress Communities: (https://community.progress.com/technicalusers/w/openedgegeneral/ 1329.openedge-product-documentation-overview.aspx). May 2015 Last updated with new content: Release 11.5.1 3

Notices 4

Table of Contents Chapter 1: Introduction...7 Chapter 2: Mitigating POODLE SSL 3.0 vulnerability in Progress OpenEdge...9 Cryptographic protocols and ciphers for Progress OpenEdge clients...9 Cryptographic protocols and ciphers for Progress OpenEdge servers...12 Chapter 3: Impact of POODLE vulnerability mitigation...15 SSL communication compatibility matrix...16 Testing for the POODLE SSL 3.0 vulnerability...18 Downgrading security for SSL...18 Changing the default protocols and ciphers...18 Changing the default protocols and ciphers for Progress OpenEdge clients...18 Changing the default protocols and ciphers for Progress OpenEdge servers...23 5

6

1 Introduction Padding Oracle On Downgraded Legacy Encryption (POODLE) is a vulnerability that was identified in late 2014 and can affect secure communications making use of the Secure Socket Layer (SSL) 3.0 or earlier protocol. However, newer releases of secure communication protocols, including Transport Layer Security (TLS) 1.0, TLS 1.1 and TLS 1.2, are increasingly less susceptible. OpenEdge applications can be vulnerable to POODLE attacks due to the way the secure communication was established prior to 11.5.1 by giving preference to SSL 3.0 over TLS 1.0. Progress OpenEdge now establishes secure communications over TLS 1.0 by default instead of SSL 3.0. POODLE allows an attacker to decrypt cipher text using a padding oracle side-channel attack. Applications that use cipher-block chaining with the SSL 3.0 communication protocol are vulnerable to POODLE attacks. The SSL 3.0 protocol does not adequately check the padding bytes that are sent with encrypted messages. These padding bytes can be replaced by the attacker. So, an attacker can exploit this vulnerability to decrypt and extract information from inside an encrypted transaction. Note: For more information on the encryption flaws of SSL 3.0, see https://www.openssl.org/~bodo/ssl-poodle.pdf. 7

Chapter 1: Introduction 8

Mitigating POODLE SSL 3.0 vulnerability in Progress OpenEdge 2 Progress OpenEdge 11.5.1 onwards, all clients and servers are protected from the POODLE SSL 3.0 vulnerability. This has been done by replacing SSL 3.0 with TLS version 1.0 as the default SSL protocol. For secure communication, Progress OpenEdge recommends that you use TLS version 1.0 as the SSL protocol for all your Progress OpenEdge clients and servers with any cipher that is TLS version 1.0 compliant. Note: Progress OpenEdge 11.5.1 uses OpenSSL Library 0.9.8g. This protects all Progress OpenEdge products against SSL 3.0 vulnerabilities. For more information about known vulnerabilities of OpenSSL and the release notes, see https://www.openssl.org/news/openssl-0.9.8-nos.html. Cryptographic protocols and ciphers for Progress OpenEdge clients The following table lists all the supported protocols and ciphers for Progress OpenEdge clients. When you install OpenEdge, all the default protocols are used, you can change the default to the other supported protocol (as listed in the table). Note: All the ciphers are supported by default. You can use either the short name or the long name of the ciphers. 9

Chapter 2: Mitigating POODLE SSL 3.0 vulnerability in Progress OpenEdge Component Cryptographic Protocols Short form Supported ciphers Long form ABL Client TLSv1 (Default) AES128-SHA RC4-SHA RC4-MD5 TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 ABL Client (as an HTTP client) ABL Client (connecting to an external Web service) TLSv1 (Default) AES128-SHA RC4-SHA RC4-MD5 DES-CBC3-SHA DES-CBC-SHA EXP-DES-CBC-SHA TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 SSL_RSA_WITH_3DES_EDE_CBC_SHA SSL_RSA_WITH_DES_CBC_SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 OpenEdge WSDL Analyzer TLSv1 (Default) AES128-SHA RC4-SHA TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA RC4-MD5 SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 Java Open Client TLSv1 (Default) AES128-SHA RC4-SHA RC4-MD5 TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 10

Cryptographic protocols and ciphers for Progress OpenEdge clients Component Cryptographic Protocols Short form Supported ciphers Long form.net Open Client TLSv1 (Default) All the ciphers that.net framework 4.0 supports Internet Adapter (AIA) TLSv1 (Default) AES128-SHA RC4-SHA RC4-MD5 TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 Web Services Adapter (WSA) TLSv1 (Default) AES128-SHA RC4-SHA RC4-MD5 TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 WebSpeed Messenger TLSv1 (Default) AES128-SHA RC4-SHA TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA RC4-MD5 SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 11

Chapter 2: Mitigating POODLE SSL 3.0 vulnerability in Progress OpenEdge Component Cryptographic Protocols Short form Supported ciphers Long form REST TLSv1 (Default) AES128-SHA RC4-SHA RC4-MD5 TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 SonicESB Adapter TLSv1 (Default) AES128-SHA RC4-SHA RC4-MD5 TLS_RSA_WITH_AES_128_CBC_SHA SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 OE Client TLSv1.2 (Default) AES128-SHA TLS_RSA_WITH_AES_128_CBC_SHA OEM/OEE (using ActiveMQ Client) TLSv1.2 (Default) TLSv1.1, TLSv1, and All the cipher suites that are provided by the SSL implementation of the Java Secure Socket Extension (JSSE) are supported Cryptographic protocols and ciphers for Progress OpenEdge servers The following table lists all the supported protocols and ciphers for Progress OpenEdge servers. When you install OpenEdge, all the default protocols are used, you can change the default to the other supported protocol (as listed in the table). Note: You can use either the short name or the long name of the ciphers. 12

Cryptographic protocols and ciphers for Progress OpenEdge servers Component Cryptographic Protocols Short form Supported ciphers Long form Broker TLSv1 (Default) AES128-SHA (Default) RC4-SHA TLS_RSA_WITH_AES_128_CBC_SHA (Default) SSL_RSA_WITH_RC4_128_SHA RC4-MD5 SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 Agent TLSv1 (Default) AES128-SHA (Default) RC4-SHA TLS_RSA_WITH_AES_128_CBC_SHA (Default) SSL_RSA_WITH_RC4_128_SHA RC4-MD5 SSL_RSA_WITH_RC4_128_MD5 DES-CBC3-SHA SSL_RSA_WITH_3DES_EDE_CBC_SHA DES-CBC-SHA SSL_RSA_WITH_DES_CBC_SHA EXP-DES-CBC-SHA SSL_RSA_EXPORT_WITH_DES40_CBC_SHA EXP-RC4-MD5 SSL_RSA_EXPORT_WITH_RC4_40_MD5 MS SQL server TLSv1 (Default) RC4-SHA RC4-MD5 (Default) SSL_RSA_WITH_RC4_128_SHA SSL_RSA_WITH_RC4_128_MD5 OpenEdge RDBMS TLSv1 (Default) AES128-SHA (Default) TLS_RSA_WITH_AES_128_CBC_SHA (Default) 13

Chapter 2: Mitigating POODLE SSL 3.0 vulnerability in Progress OpenEdge Component Cryptographic Protocols Short form Supported ciphers Long form Pacific Application Server for OpenEdge (PAS for OpenEdge) TLSv1, TLSv1.1, and TLSv1.2 (Default) SSLv2 All the cipher suites that are provided by the SSL implementation of the JSSE are supported OEM/OEE (Remote AdminServer using ActiveMQ Server) OEM/OEE (WebServer) TLSv1.2 (Default) TLSv1.1, TLSv1, and TLSv1.2 (Default) TLSv1.1, TLSv1, and OEM/OEE (Remote trending database) TLSv1, TLSv1.1, and TLSv1.2 (Default) OEM/OEE (Email alerts configuration) TLSv1, TLSv1.1, and TLSv1.2 (Default) OEM/OEE (PAS for OpenEdge) TLSv1, TLSv1.1, and TLSv1.2 (Default) The following OpenEdge server components do not support the SSL 3.0 or TLS protocols: OpenEdge Replication DataServers 14

Impact of POODLE vulnerability mitigation 3 As part of the POODLE SSL 3.0 vulnerability mitigation, the following is the impact on all Progress OpenEdge client and server components: Backwards compatibility with SSL 3.0 TLS version 1.0 is the default SSL protocols for all Progress OpenEdge 11.5.1 client and server components. To ensure interoperability with other components configured to use only SSL 3.0, the Progress OpenEdge 11.5.1 components are backwards compatible with SSL 3.0. Performance degradation In Progress OpenEdge 11.5.1, the default SSL cipher suites have been changed to those that have fewer vulnerabilities. As a tradeoff for more security, you may find degradation in system performance. 15

Chapter 3: Impact of POODLE vulnerability mitigation SSL communication compatibility matrix The following table shows the compatibility between the default SSL protocol configuration of 11.4 client components and 11.5.1 server components: 11.4 client component ABL Client ABL Client (connecting to an external Web service) Java Open Client.NET Open Client Internet Adapter (AIA) (Both HTTPS and SSL clients) Web Services Adapter (WSA) (Both HTTPS and SSL clients) REST (Both HTTPS and SSL clients) Sonic ESB Adapter SonicMQ Adapter WebSpeed CGIIP Messenger (Both HTTPS and SSL clients) WebClient 11.5.1 server component Database Server Web service WebSpeed Broker -hosted application Application connected to an Application connected to an using AIA Is the server downgrade to SSL 3.0 required? YES YES YES YES YES YES YES Note: On Windows XP systems, a pre-11.5.1.net Open Client cannot communicate with an 11.5.1 that is configured to use SSL 3.0. For such communication to occur, you must upgrade the Windows version. The following table shows the compatibility between the default SSL protocol configuration of 11.5.1 client components and 11.4 server components: 16

SSL communication compatibility matrix 11.5.1 client component ABL Client ABL Client (connecting to an external Web service) Java Open Client.NET Open Client AIA (Both HTTPS and SSL clients) WSA (Both HTTPS and SSL clients) REST (Both HTTPS and SSL clients) Sonic ESB Adapter SonicMQ Adapter WebSpeed CGIIP Messenger (Both HTTPS and SSL clients) WebClient OpenEdge Management (using ActiveMQ Client) OpenEdge BP Server 11.4 server component Database Server Web service WebSpeed Broker -hosted application Application connected to an Application connected to an using AIA Remote AdminServer (using ActiveMQ Server) OpenEdge Database Is the server downgrade to SSL 3.0 required? The following table shows the compatibility between the default SSL protocol configuration of 11.4 client components and 11.5.1 client components on PAS for OpenEdge: 11.4 client component ABL Client Java Open Client 11.5.1 server component PAS for OpenEdge PAS for OpenEdge Is the server downgrade to SSL 3.0 required? YES YES 17

Chapter 3: Impact of POODLE vulnerability mitigation Testing for the POODLE SSL 3.0 vulnerability Using the SSLC command line client (available at $DLC/bin), you can determine whether a client can connect to a POODLE SSL 3.0 safe server: sslc s_client connect host_name:port tls1 If the handshake between the client and server is successful, the server is POODLE SSL 3.0 safe. Downgrading security for SSL Progress OpenEdge release 11.5.1 provides configuration parameters for changing the default protocols and ciphers across all client and server components. For certain client or server components, you may want to continue using cryptographic protocols or ciphers that are not POODLE SSL 3.0 vulnerability safe until those components are upgraded. In this case, you can selectively downgrade the security of the communication to support such non-compliant components. Progress does not recommend downgrading the protocol to SSL 3.0. Note: A secure communication occurs only if both client and server support the same protocol and cipher. Changing the default protocols and ciphers Progress OpenEdge provides a set of configuration properties for you to change the default cryptographic protocols and ciphers across all OpenEdge client and server components. Note: If you need to debug the SSL communication, you can set the SSLSYS_DEBUG_LOGGING environment variable from 1 to 5 (5 fetches the maximum details) in the OS system variable or in the Environment section of the ubroker.properties file. This generates the cert.server.log and cert.client.log files. Changing the default protocols and ciphers for Progress OpenEdge clients You can set the protocols and the ciphers for the following client components: ABL Client: To set the protocol and cipher for all ABL client connections, export the following environment variables in the startup script of the client application: 18

Changing the default protocols and ciphers PSC_SSLCLIENT_PROTOCOLS PSC_SSLCLIENT_CIPHERS cryptographic protocols that are set for the client cryptographic ciphers that are set for the client Once you export the variables, invoke a Progress OpenEdge client executable and start a session for the client application to use the set cryptographic protocols and ciphers. To set the protocols and ciphers for single client connection, you can set the following parameters in the connection-parameters argument of the client s CONNECT() method: Connection parameter -sslprotocols SSL-protocol-names -sslciphers SSL-protocol-ciphers cryptographic protocols that are set for the client cryptographic ciphers that are set for the client Note: You can use ABL clients to create connections with different server components. If you do not set the -sslprotocols and -sslciphers connection parameters using the client s CONNECT() method, the protocol and cipher values are set using the PSC_SSLCLIENT_PROTOCOLS and PSC_SSLCLIENT_CIPHERS environment variables in the ubroker.properties file (available at OpenEdge-install-directory/properties). OpenEdge WSDL Analyzer: To set the protocol and cipher for OpenEdge WSDL Analyzer, export the following environment variables in the startup script of the client application: PSC_SSLCLIENT_PROTOCOLS PSC_SSLCLIENT_CIPHERS cryptographic protocols cryptographic ciphers Once you export the variables, invoke the bprowsdldoc client executable to use the set cryptographic protocols and ciphers. Java Open Client: In the client s Connection object, you can set the following properties using the setstring method of the RunTimeProperties class: 19

Chapter 3: Impact of POODLE vulnerability mitigation PROGRESS.Session.sslProtocols PROGRESS.Session.sslCiphers cryptographic protocols that are set for the client cryptographic ciphers that are set for the client You can also set these properties as Java system properties..net Open Client: In the client s app.config file, you can set the Progress.Open4GL.RunTimeProperties.SSLProtocols runtime property with a comma-separated list of cryptographic protocols. The cryptographic ciphers are automatically set using the.net framework. Agent: In the [Environment.<appserver_broker>] section of the ubroker.properties file (available at OpenEdge-install-directory/properties), you can set the following environment variables: PSC_SSLCLIENT_PROTOCOLS PSC_SSLCLIENT_CIPHERS cryptographic protocols that are set for the agent cryptographic ciphers that are set for the agent Note: Even if a secure connection is established, a known AIA logging error causes the Error Setting SSL parameters from ServerConnection error statement to appear in the log file. To avoid this problem, set the PSC_SSLCLIENT_PROTOCOLS and PSC_SSLCLIENT_CIPHERS properties in the Apache Tomcat catalina shell script file. WebSpeed Agent: In the [Environment.<webspeed_broker>] section of the ubroker.properties file (available at OpenEdge-install-directory/properties), you can set the following environment variables: PSC_SSLCLIENT_PROTOCOLS PSC_SSLCLIENT_CIPHERS cryptographic protocols that are set for the agent cryptographic ciphers that are set for the agent Internet Adapter: In the startup script of the client application, export the following environment variables: 20

Changing the default protocols and ciphers PSC_SSLCLIENT_PROTOCOLS PSC_SSLCLIENT_CIPHERS cryptographic protocols that are set for the AIA instance cryptographic ciphers that are set for the AIA instance After you export the variables, invoke a Progress OpenEdge client executable and start a session for the client application to use the set protocols and ciphers. WebSpeed Messenger: In the startup script of the client application, export the following environment variables: PSC_SSLCLIENT_PROTOCOLS PSC_SSLCLIENT_CIPHERS cryptographic protocols that are set for the WebSpeed client instance cryptographic ciphers that are set for the WebSpeed client instance After you export the variables, invoke an Progress OpenEdge client executable and start a session for the client application to use the set protocols and ciphers. SonicESB Adapter: Using the Sonic Management Console, you can set the following runtime properties: sslprotocols sslciphers cryptographic protocols that are set for the SonicESB adapter cryptographic ciphers that are set for the SonicESB adapter To set these properties: 1. On the Sonic Management Console, select the Configure tab. 2. Under Services, select OpenEdge Native Services. 3. Select the dev.openedge service name. 4. Under Init Parameters, click Runtime Properties. A list of properties and their current values is displayed. 5. For the sslprotocols and sslciphers properties, enter comma-separated values of cryptographic protocols and ciphers that you want to set for the adapter. 21

Chapter 3: Impact of POODLE vulnerability mitigation Web Services Adapter: In the default.props file ( available at the OpenEdge-install-directory/webapps/wsa/wsa1), set the following properties: sslprotocols sslciphers cryptographic protocols that are set for the WSA application cryptographic ciphers that are set for the WSA application To set the default protocol and cipher values for a WSA client, set the properties as Default. The following code shows how to set the properties. <?xml version="1.0" encoding="utf-8"?> <ApplicationRuntimeProperties xmlns="urn:schemas-progress-com:wsad:0011" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance">... <sslciphers>default</sslciphers> <sslprotocols>default</sslprotocols>... </ApplicationRuntimeProperties> REST Adapter: In the runtime.props file (available at $CATALINA_HOME/webapps/application_name/WEB-INF/adapters), set the following properties: sslprotocols sslciphers cryptographic protocols that are set for the REST application cryptographic ciphers that are set for the REST application OpenEdge Management and OpenEdge Explorer (using ActiveMQ client): To set the cryptographic protocol and cipher for a remote AdminServer, you must set the following properties in the management.properties file that is available at $DLC/properties: 22

Changing the default protocols and ciphers sslenable enabledprotocols enabledciphersuites Default value: 0 Enables you to set the cryptographic protocols and ciphers for secure communication with a remote AdminServer. To set the default cryptographic protocols and ciphers for the remote AdminServer, set this property value to 1. You must reset the remote AdminServer and OpenEdge Management or OpenEdge Explorer for the setting to take effect. Default value: TLSv1.2 Supported values:, TLSv1, and TLSv1.1 If you want to change the default cryptographic protocol for the remote AdminServer, enter this property in the management.properties file. The property accepts a comma-separated list of valid cryptographic protocols that are set for secure communication. If you want to change the default cryptographic protocol for the remote AdminServer, enter this property in the management.properties file. The property accepts a comma-separated list of valid cryptographic protocols that are set for secure communication. Changing the default protocols and ciphers for Progress OpenEdge servers You can set the protocol and the cipher for the following server components: Broker: In the [Environment.<appserver_broker>] section of the ubroker.properties file, you can set the following environment variables: PSC_SSLSERVER_PROTOCOLS PSC_SSLSERVER_CIPHERS cryptographic protocols that are set for the instance cryptographic ciphers that are set for the instance. The default value is AES128-SHA. 23

Chapter 3: Impact of POODLE vulnerability mitigation Once you make a change in the ubroker.properties file, you must restart the broker for the new values to take effect. WebSpeed Broker: In the [Environment.<webspeed_broker>] section of the ubroker.properties file, you can set the following environment variables: PSC_SSLSERVER_PROTOCOLS PSC_SSLSERVER_CIPHERS cryptographic protocols that are set for the Web server instance cryptographic ciphers that are set for the Web server instance. The default value is AES128-SHA. Once you make a change in the ubroker.properties file, you must restart the WebSpeed broker for the new values to take effect. OpenEdge Database Server: In the startup script of the server application, export the following environment variables. PSC_SSLSERVER_PROTOCOLS PSC_SSLSERVER_CIPHERS cryptographic protocols that are set for the database server instance cryptographic ciphers that are set for the database server instance. The default value is AES128-SHA. Once you export the variables, invoke a database server executable and start a session for the client application to use the set protocols and ciphers. OpenEdge RDBMS: In the ubroker.properties file (available at OpenEdge-install-directory/properties), you can set the following environment variables: PSC_SSLSERVER_PROTOCOLS PSC_SSLSERVER_CIPHERS Accepts the cryptographic protocol that is set for the instance Accepts the valid cryptographic cipher that is set for the instance. The default value is AES128-SHA. MS SQL Server: In the ubroker.properties file (available at OpenEdge-install-directory/properties), you can set the following environment variables: 24

Changing the default protocols and ciphers PSC_SSLSERVER_PROTOCOLS PSC_SSLSERVER_CIPHERS Accepts the cryptographic protocol that is set for the instance Accepts the valid cryptographic cipher that is set for the instance. The default value is AES128-SHA. Agent: In the [Environment.<appserver_broker>] section of the ubroker.properties file (available at OpenEdge-install-directory/properties), you can set the following environment variables: PSC_SSLSERVER_PROTOCOLS PSC_SSLSERVER_CIPHERS Accepts the cryptographic protocol that is set for the agent Accepts the valid cryptographic cipher that is set for the agent. The default value is AES128-SHA. WebSpeed Agent: In the [Environment.<webspeed_broker>] section of the ubroker.properties file (available at OpenEdge-install-directory/properties), you can set the following environment variables: PSC_SSLSERVER_PROTOCOLS PSC_SSLSERVER_CIPHERS Accepts the cryptographic protocol that is set for the agent Accepts the valid cryptographic cipher that is set for the agent. The default value is AES128-SHA. PAS for OpenEdge: Use the tcman.sh config command to set the following Java system properties: psc.as.https.protocol psc.as.https.ciphers SSL protocols that are set for the PAS for OpenEdge instance. The default values are TLSv1, TLSv1.1, and TLSv1.2. cryptographic ciphers that are set for the PAS for Progress OpenEdge instance. By default, all the cipher suites are supported. 25

Chapter 3: Impact of POODLE vulnerability mitigation These properties are saved in the catalina.properties file (available at $CATALINA_BASE/conf). Tomcat-in-the-box: In the server.xml file (available at $CATALINA_BASE/conf), set the following properties: sslprotocols ciphers cryptographic protocols that are set for the instance. The default values are TLSv1, TLSv1.1, and TLSv1.2. cryptographic ciphers that are set for the instance. By default, all the cipher suites are supported. For client and server components that are controlled by Apache Tomcat server, you can optionally set the server environment variables in the proset shell script file (available at OpenEdge-install-directory). OpenEdge Management and OpenEdge Explorer: OpenEdge Management WebServer: To set the cryptographic protocol and cipher for a WebServer, you must set the following properties in the fathom.properties file that is available at $DLC/properties: sslenable Default value: 0 Enables you to change the cryptographic protocols and ciphers for secure communication with a WebServer. If you enable SSL for the WebServer in OpenEdge Management and OpenEdge Explorer, this property is set to true. 26

Changing the default protocols and ciphers SSLEnabledProtocols SSLEnabledCipherSuites Default value: TLSv1.2 Supported values:, TLSv1, and TLSv1.1 If you want to change the default cryptographic protocol for the WebServer, enter this property in the fathom.properties file. The property accepts a comma-separated list of valid cryptographic protocols that are set for secure communication. If you want to change the default cryptographic ciphers for the WebServer, enter this property in the fathom.properties file. The property accepts a comma-separated list of valid cryptographic ciphers that are set for secure communication. Remote trending database: To set the cryptographic protocol for connecting to the remote trending database, do the following: 1. From the management console menu bar, click Options. The Options page appears. 2. Select Trend Database. The OpenEdge Management Trend Database Configuration page appears and displays the current remote trending database settings. 3. Select Store trend data in a remote OpenEdge Management instance. 4. To use HTTPS, select the Use HTTPS (SSL) protocol option. 5. Click Advanced Options. The expanded OpenEdge Management Trend Database Configuration page appears. 6. Under HTTPS Configuration, set the Enabled protocols options as required. 7. Click Save to save your changes. OpenEdge Management email alerts: To set the cryptographic protocol for exchanging email alerts, do the following: 1. From the management console menu bar, click Options. The Options page appears. 2. Select Email alerts. The OpenEdge Management Email Alerts Configuration page appears and displays the current email alerts settings. 3. Set the Mail server (SMTP) SSL/TLS enabled protocols options as required. You can also set the cipher suites by entering comma-separated values of supported cipher suites in the Mail server(smtp) SSL/TLS enabled cipher suites field. 4. Click Save to save your changes. PAS for OpenEdge: To set the cryptographic protocol for a PAS for OpenEdge instance, do the following: 27

Chapter 3: Impact of POODLE vulnerability mitigation 1. Click Resources in the OpenEdge Management console menu. All resources managed by your console appear in the grid frame. 2. Filter, or search for, and select the required PAS for OpenEdge instance. For example, type the default PAS for OpenEdge instance name, oepas1, in the Filter field or select Pacific Application Server as the selection in the Type drop-down menu. The Pacific Application Server: <instance name> page appears. 3. In the Command and control section of the page, click Configuration. The Configuration page appears. 4. In the Basic tab, set the SSL enabled protocols options as required. You can also set the cipher suites by entering comma-separated values of supported cipher suites in the SSL enabled cipher suites field. 5. Click Save to save your changes. Any changes you make are also reflected in the pasmgr.properties file that is available at $DLC/properties. Note: Both the Broker and Agent inherit environment variables (PSC_SSLCLIENT_PROTOCOLS, PSC_SSLCLIENT_CIPHERS, PSC_SSLSERVER_PROTOCOLS, and PSC_SSLSERVER_CIPHERS) both from the AdminServer process and the [Environment.<broker_name>] sections of the ubroker.properties file. The variables in the [Environment.<broker_name>] sections of the ubroker.properties file supercede the variables set by the AdminServer process. If you set these variables in the ubroker.properties file and then use the shell to manually start the AdminServer process, the brokers and agents inherit the variables set in the ubroker.properties file. 28