
Proof-of-Concept für CVE-2026-29628, einen stackbasierten Pufferüberlauf im experimentellen Parser von tinyobjloader, mit ASan/UBSan-Reproduktion und Fix-Referenz.
Stapelbasierter Pufferüberlauf in https://github.com/tinyobjloader/tinyobjloader, der nur die experimentelle Version betrifft und zu unerwarteten Ergebnissen führen kann.
tinyobjloader ist in allen Versionen bis einschließlich Commit d56555b betroffen.
Ein Fix wurde vorgeschlagen in:
386b73bb8c1a855236beb73b11f45f7feac4e03aRepository:
Das Problem ist unter AddressSanitizer als Stack-Buffer-Overflow in tinyobj_opt::LoadMtl reproduzierbar, wo ein übermäßig großes newmtl token in den lokalen Puffer namebuf mit fester Größe geschrieben wird.
Erstellen Sie den Proof of Concept mit aktiviertem AddressSanitizer und UndefinedBehaviorSanitizer:
clang++ -std=c++17 -O1 -g -fsanitize=address,undefined -fno-omit-frame-pointer \
-I./tinyobjloader \
-I./tinyobjloader/experimental \
poc.cpp -o poc