Articles with tag: Embedded Systems
POSTED BY: George Poulios / 21.10.2020

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.


POSTED BY: George Poulios / 21.10.2020

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.


POSTED BY: George Poulios / 21.10.2020

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.


POSTED BY: Dimitrios Glynos / 31.01.2020

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.