Fixes Heap-buffer-overflow in std::__1::basic_string<char, std::__1::… #4645
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes Heap-buffer-overflow in std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator<ch revealed by fuzzing:
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=41582
The root cause is that it fails to parse the version of an arbitrary file without extension but the header
nendo ****garbage***
inNDOImporter::InternReadFile
. Then it tries to log the non null terminated garbage string inASSIMP_LOG_WARN( "Unrecognized nendo file format version, continuing happily ... :", (head+6));
. It leads to out of bounds read access.