Skip to content
OpenAdvisories

Weakness (CWE)

CWE-626: Null Byte Interaction Error (Poison Null Byte)

Variant Draft

The product does not properly handle null bytes or NUL characters when passing data between different representations or components.

More detail

A null byte (NUL character) can have different meanings across representations or languages. For example, it is a string terminator in standard C libraries, but Perl and PHP strings do not treat it as a terminator. When two representations are crossed - such as when Perl or PHP invokes underlying C functionality - this can produce an interaction error with unexpected results. Similar issues have been reported for ASP. Other interpreters written in C might also be affected.

The poison null byte is frequently useful in path traversal attacks by terminating hard-coded extensions that are added to a filename. It can play a role in regular expression processing in PHP.

How to prevent it (1 mitigation)
  1. Implementation

    Remove null bytes from all incoming strings.

Source: MITRE CWE-626

2 results · Clear filters · Feed

  • Low 3.5

    Netty: MQTT Topic Name and Client ID Validation Bypass

    Netty is an asynchronous, event-driven network application framework. Prior to versions 4.1.137.Final and 4.2.17.Final, MqttEncoder does not validate client identifiers, will topics, usernames, and PUBLISH topic names before encoding, allowing prohibited null…

  • Low 3.7

    Axios: Null Byte Injection via Reverse-Encoding in AxiosURLSearchParams

    Axios is a promise based HTTP client for the browser and Node.js. Prior to 1.15.1 and 0.31.1, the encode() function in lib/helpers/AxiosURLSearchParams.js contains a character mapping (charMap) at line 21 that reverses the safe percent-encoding of null bytes.…