BF Specification of CVE-2015-5221 Use-after-free in JasPer JPEG-2000 before 1.900.2

../../../../BF/images/BFCVE/CVE-2015-5221(simple)-0.png
//generated// Erroneous Code (in 'mif_process_cmpt()') to Standard Library Deallocate (src/libjasper/mif/mif_cod.c) in leads to Dangling Pointer ('tvp')

, which propagates to Dangling Pointer (in ‘xxx’) Direct Read Standard Library (xxx) in resulting in Use After Deallocate

. If exploited this can lead to DOS (availability loss).



vendor:product: fedoraproject:fedora


Bug Report


Code with Bug


Code with Fix


NVD Entry

ClassDefinition
MMNMemory Management (MMN) class – An object is allocated, resized, or deallocated improperly.
MUSMemory Use (MUS) class – An object is initialized, read, written, or cleared improperly.
OperationDefinition
DeallocateDeallocate operation – Release the allocated memory of an object.
ReadRead operation – Retrieve the data value of an object from memory.
Cause/ConsequenceDefinition
Code BugCode Bug type – An error in the implementation of an operation – proper operands over an improper operation. It is the roor cause of a security vulnerability. Must be fixed to resolve the vulnerability.
   Erroneous CodeErroneous Code bug - There is a coding error in the implementation of the operation.
Address Error/FaultAddress Fault/Error type – The address of an object is wrong.
   Dangling PointerDangling Pointer fault/error – Still holds the address of its successfully deallocated object (e.g., a pointer to a freed heap object or address of a stack object returned by a function).
Memory Corruption/Disclosure Final ErrorMemory Corruption/Disclosure final error type – An exploitable or undefined system behavior caused by memory addressing, allocation, use, or deallocation bugs.
   Use After Deallocateuse after free or use after return) final error – An attempt to use (dereference, read, write, or clear) a deallocated object (e.g., via a pointer to a freed or reallocated heap object -- use after free) or out of scope object (e.g., via a returned by a function pointer to a stack object -- use after return).
Operation AttributeDefinition
Source CodeSource Code operation attribute type – Shows where the code of the operation with a bug or faulty operand resides within the software, firmware, or hardware.
   Standard LibraryStandard Library operation attribute – The operation code is in the standard library for a particular programming language.
MechanismMechanism operation attribute type – Shows how the operation the operation with a bug or faulty operand is performed.
   DirectDirect operation attribute – The operation is on a particular object element.
Operand AttributeDefinition