Harmless PoC: ExecuTorch Method::init args / operators vector length OOB
gen_instruction_arguments indexes KernelCall.args[i] / DelegateCall.args[i] using a forged FlatBuffer vector length with no bound against the program buffer. Under default Program::Verification::Minimal, loading a malicious .pte and calling Method::load triggers ASan heap-buffer-overflow READ at method.cpp:259.
Related: forged operators()->size() → resolve_operator ops->Get(op_index) HBO at method.cpp:750.
Distinct from packaged values/chains/instructions length OOB, READY constant/mutable offsets, MethodMeta sizes, WebGPU, Vela, VGF.
Files
poc_method_load_operators_asan.cpp,asan.log(kernel-args-oob)- related:
delegate-args-oob,operators-oob NOTES.md
./poc_method_load_operators_asan kernel-args-oob
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support