Microchip ASF4 integer overflows in flash_read, flash_write and flash_append
CENSUS ID: | CENSUS-2020-0005 |
CVE ID: | CVE-2019-16127 |
Affected Products: | ASF4 as distributed through start.atmel.com (last accessed 2020-10-21) |
Class: | Integer Overflow or Wraparound (CWE-190) |
Discovered by: | George Poulios |
CENSUS identified several integer overflow problems in the flash_read, flash_write and flash_append functions of the Microchip ASF4 framework. This framework is used during firmware development for Atmel (now Microchip) microcontrollers. An adversary may abuse these issues to gain unauthorized read or write access to arbitrary pages of the flash storage, especially pages mapped at low memory addresses. As no patch is available from the vendor, CENSUS urges developers to implement a check for integer overflows in the relevant code.
Microchip cryptoauthlib atcab_genkey_base buffer overflow
CENSUS ID: | CENSUS-2020-0004 |
CVE ID: | CVE-2019-16129 |
Affected Products: | cryptoauthlib versions prior to "20191122" |
Class: | Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')(CWE-120) |
Discovered by: | George Poulios |
CENSUS identified a buffer overflow vulnerability in the atcab_genkey_base function of the cryptoauthlib library. This library is part of the standard SDK provided by Microchip and is used to drive the operation of cryptographic co-processors sold by the vendor, such as the ATECC608A. An attacker with physical access to an embedded device where a microcontroller unit executes a vulnerable version of this library, may be able to execute arbitrary code on the microcontroller, by supplying malicious input to the microcontroller. Affected manufacturers of embedded systems that use Microchip cryptographic co-processors, are strongly recommended to update to at least version "20191122" of the "cryptoauthlib" library.
Microchip cryptoauthlib atcab_sign_base buffer overflow
CENSUS ID: | CENSUS-2020-0003 |
CVE ID: | CVE-2019-16128 |
Affected Products: | cryptoauthlib versions prior to "20191122" |
Class: | Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')(CWE-120) |
Discovered by: | George Poulios |
CENSUS identified a buffer overflow vulnerability in the atcab_sign_base function of the cryptoauthlib library. This library is part of the standard SDK provided by Microchip and is used to drive the operation of cryptographic co-processors sold by the vendor, such as the ATECC608A. An attacker with physical access to an embedded device where a microcontroller unit executes a vulnerable version of this library, may be able to execute arbitrary code on the microcontroller, by supplying malicious input to the microcontroller. Affected manufacturers of embedded systems that use Microchip cryptographic co-processors, are strongly recommended to update to at least version "20191122" of the "cryptoauthlib" library.
Multiple NULL pointer dereference vulnerabilities in newlib
CENSUS ID: | CENSUS-2020-0001 |
CVE IDs: | CVE-2019-14871, CVE-2019-14872, CVE-2019-14873, CVE-2019-14874, CVE-2019-14875, CVE-2019-14876, CVE-2019-14877, CVE-2019-14878 |
Affected Products: | newlib versions prior to 3.3.0, its derivatives (e.g. newlib-nano, picolibc and related Platform SDKs such as " GNU ARM Embedded Toolchain 64-bit Linux 8-2018-q4-major") |
Class: | NULL pointer dereference (CWE-476) |
Discovered by: | Dimitrios Glynos |
During the security assessment of a firmware binary a number of NULL pointer dereference bugs were found caused by newlib-nano code. newlib-nano is a C library for use on 32-bit processors that have only a few kB of memory. It turns out that newlib-nano was part of the "GNU ARM Embedded Toolchain" that the chip manufacturer (Microchip/Atmel) delivered for application development purposes. newlib-nano inherits code from the newlib project, which is a C library intended for use on embedded systems. All NULL pointer dereference bugs identified in newlib-nano were inherited by newlib code and therefore CENSUS reported the respective vulnerabilities to the upstream project. Users of the newlib library are advised to update to version 3.3.0 and make sure to build the library sources with the newlib-reent-check-verify 'configure' option enabled.