Verifying OpenSSL versions from OpenSSL binary files


Beginning with SAS® 9.4M8 (TS1M8), OpenSSL binaries are no longer delivered by SAS. Instead, the Operating System OpenSSL binaries are used. Further details on this change can be found in the SAS 9.4 Administration documentation.

It might be difficult for administrators to verify the OpenSSL version of a specific binary file, because calling the openssl -version command invokes only the shell-default version. This KB article outlines a method to verify an OpenSSL version from a specific binary using standard OS commands.

 

Resolution

The system utility strings can be used to query text inside a binary file.

For a specific OpenSSL binary (usually called "libcrypto.so"), execute the strings utility against the binary file and perform a search for OpenSSL and numeric characters. The expected OpenSSL version string should be returned.

 

The following example uses grep with a pattern-search:

strings libcrypto.so | grep -E "OpenSSL [0-9]"

Output is dependent on the OpenSSL version. The general syntax of the output should appear similar to:

OpenSSL 1.1.1k  FIPS 25 Mar 2021

In this example, the libcrypto.so binary is OpenSSL version 1.1.1k .

 

Note: If the strings utility is not available on your system, you can likely obtain it by installing the binutils package (using your system's package manager).