0xiviel/poc-openvino-tflite-sparse-oob
PoC: OpenVINO TFLite Sparse Tensor OOB Write (SIGSEGV + SIGABRT) Summary A malicious TFLite model with crafted sparse tensor metadata triggers an out-of-bounds write via unchecked indices in the sparsity decompression code, causing SIGSEGV or SIGABRT. Confirmed on OpenVINO 2025.4.1 — crash on model load. Root Cause sparsity_info.cpp:43 — sparse tensor indices from the TFLite flatbuffer are used to write into the dense output buffer without any… See the full description on the dataset page: https://huggingface.co/datasets/0xiviel/poc-openvino-tflite-sparse-oob.
PoC: OpenVINO TFLite Sparse Tensor OOB Write (SIGSEGV + SIGABRT)
Summary
A malicious TFLite model with crafted sparse tensor metadata triggers an out-of-bounds write via unchecked indices in the sparsity decompression code, causing SIGSEGV or SIGABRT.
Confirmed on OpenVINO 2025.4.1 — crash on model load.
Root Cause
sparsity_info.cpp:43 — sparse tensor indices from the TFLite flatbuffer are used to write into the dense output buffer without any bounds checking. FlatBuffers does not perform bounds checking on vector access in release builds.
Files
malicious_sparse.tflite— crafted TFLite model (552 bytes)poc_tflite_sparse_oob.py— PoC generator script
Reproduction
pip install openvino
python -c "
import openvino as ov
core = ov.Core()
model = core.read_model('malicious_sparse.tflite')
"
# Expected: SIGSEGV or SIGABRTAffected Versions
All OpenVINO versions with TFLite frontend support.
