CVE-2024-38044 - Incorrect Conversion between Numeric Types

Severity

72%

Complexity

12%

Confidentiality

98%

DHCP Server Service Remote Code Execution Vulnerability

CVSS 3.1 Base Score 7.2. CVSS Attack Vector: network. CVSS Attack Complexity: low. CVSS Vector: (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H).

Demo Examples

Incorrect Conversion between Numeric Types

CWE-681

In the following Java example, a float literal is cast to an integer, thus causing a loss of precision.


               
int i = (int) 33457.8f;

Incorrect Conversion between Numeric Types

CWE-681

This code adds a float and an integer together, casting the result to an integer.


               
$result = (int)$floatVal + $intVal;

Normally, PHP will preserve the precision of this operation, making $result = 4.8345. After the cast to int, it is reasonable to expect PHP to follow rounding convention and set $result = 5. However, the explicit cast to int always rounds DOWN, so the final value of $result is 4. This behavior may have unintended consequences.

Incorrect Conversion between Numeric Types

CWE-681

In this example the variable amount can hold a negative value when it is returned. Because the function is declared to return an unsigned int, amount will be implicitly converted to unsigned.


               
}
return amount;

If the error condition in the code above is met, then the return value of readdata() will be 4,294,967,295 on a system that uses 32-bit integers.

Incorrect Conversion between Numeric Types

CWE-681

In this example, depending on the return value of accecssmainframe(), the variable amount can hold a negative value when it is returned. Because the function is declared to return an unsigned value, amount will be implicitly cast to an unsigned number.


               
}
return amount;

If the return value of accessmainframe() is -1, then the return value of readdata() will be 4,294,967,295 on a system that uses 32-bit integers.

Overview

Type

Microsoft Windows Server

First reported 7 months ago

2024-07-09 17:15:00

Last updated 3 months ago

2024-11-21 09:24:00

Affected Software

Microsoft Windows Server 2012

Microsoft Windows Server 2016

Microsoft Windows Server 2019

Stay updated

ExploitPedia is constantly evolving. Sign up to receive a notification when we release additional functionality.

Get in touch

If you'd like to report a bug or have any suggestions for improvements then please do get in touch with us using this form. We will get back to you as soon as we can.