IBM Support

Disable OpenSSL within Python Analytic Executables in IBM Netezza Analytics

Troubleshooting


Problem

The Python Analytic Executables allow you to use SSL interfaces within Python. See the following website of OpenSSL for a list of vulnerabilities that might affect the Python version that is installed with IBM® Netezza® Analytics. https://www.openssl.org/news/vulnerabilities.html To completely avoid vulnerability, you can block this feature when you use Python within IBM Netezza Analytics.

Diagnosing The Problem

Do the following steps:

  1. Check whether Python and SSL are working together by using the following call:

    /nz/export/ae/languages/python/2.6/host/bin/python -c "import ssl; print ssl.cert_time_to_seconds(\"May 9 00:00:00 2007 GMT\");"

  2. If the output is as follows, SSL is working but might have a vulnerability problem:

    Output: 1178683200.0

Resolving The Problem

You must disable SSL for Python by renaming the python lib.

To rename the python lib, enter the following command:

cd /nz/export/ae/sysroot/host/lib/
mv libssl.so.0.9.8b libssl.so.0.9.8b.org

You will then get an error when you import SSL:

/nz/export/ae/languages/python/2.6/host/bin/python -c "import ssl; print ssl.cert_time_to_seconds(\"May 9 00:00:00 2007 GMT\");"

Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/nz/export/ae/languages/python/2.6/host/lib/python2.6/ssl.py", line 60, in <module>
import _ssl # if we can't import it, let the error propagate
ImportError: /lib/libssl.so.6: undefined symbol: EVP_CIPHER_CTX_block_size

[{"Product":{"code":"SSULQD","label":"IBM PureData System"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"IBM Netezza Analytics","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"1.0.0","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
17 October 2019

UID

swg21975485