[sssForm]

Security Advisory

TLS-SSL - CVE-2016-2177
Published: Wednesday, October 10th, 2018
Last Update: Friday, November 9th, 2018
Summary

In September 2016, openssl.org released a security advisory detailing several security issues. The following vulnerabilities that may affect the TLS/SSL data plane of ACOS devices reported in that advisory are addressed in this document.

Item # Vulnerability ID Score Source Score Summary
1 CVE-2016-2177 CVSS 3.0 9.8 Critical Pointer arithmetic undefined behaviour
Affected Releases

The table below indicates releases of ACOS exposed to these vulnerabilities and ACOS releases that address them. ACOS release families not indicated below are unaffected by these vulnerabilities.

Customers using affected ACOS releases can overcome vulnerability exposures by updating to the indicated resolved release. If the table does not list a corresponding resolved or unaffected release, then no ACOS release update is currently available.

Releases Affected Releases Resolved or Unaffected
4.1.4 – 4.1.4-P2 4.1.4-P3
4.1.2 – 4.1.2-P4 4.1.2-P5
4.1.1 – 4.1.1-P9 4.1.1-P10
4.1.0 – 4.1.0-P11 4.1.0-P12
2.7.2 – 2.7.2-P12 2.7.2-P13
2.7.1-GR1 – 2.7.1-GR1-Px 2.7.2-P13, 4.1.0-P12, 4.1.1-P10, 4.1.4-P3
Workarounds and Mitigations

None.

Software Updates

Software updates that address these vulnerabilities are or will be published at the following URL:
http://www.a10networks.com/support/axseries/software-downloads

Vulnerability Details

The following table shares brief descriptions for the vulnerabilities addressed in this document.

Vulnerability ID Vulnerability Description
CVE-2016-2177

Avoid some undefined pointer arithmetic

A common idiom in the codebase is to check limits in the following manner: "p + len > limit"

Where "p" points to some malloc'd data of SIZE bytes and limit == p + SIZE

"len" here could be from some externally supplied data (e.g. from a TLS message).

The rules of C pointer arithmetic are such that "p + len" is only well defined where len <= SIZE. Therefore the above idiom is actually undefined behaviour.

For example this could cause problems if some malloc implementation provides an address for "p" such that "p + len" actually overflows for values of len that are too big and therefore p + len < limit.

Related Links

The following table shares brief descriptions for the vulnerabilities addressed in this document.

Ref # General Link
[1] NIST NVD, CVE-2016-2177
Acknowledgements

None.

Modification History
Revision Date Description
1.0 Wednesday, October 10th, 2018

Initial Publication

2.0 Sunday, October 14th, 2018

Corrected typo in 4.1.4 release chain affected releases.

3.0 Friday, November 9th, 2018

Updated related link to correct CVE entry at NVD.


© Copyright 2018 A10 Networks, Inc. All Rights Reserved.

This document is provided on an "AS IS" basis and does not imply any kind of guarantee or warranty, including the warranties of merchantability, non-infringement or fitness for a particular use. Your use of the information in this document or materials linked from this document is at your own risk. A10 Networks, Inc. reserves the right to change or update the information in this document at any time.