commit | edbdd7907f0b7b6611839893c2d9005c7491ed2f | [log] [tgz] |
---|---|---|
author | Sergey Ulanov <sergeyu@google.com> | Fri Nov 08 21:17:08 2024 +0000 |
committer | CQ Bot <fuchsia-internal-scoped@luci-project-accounts.iam.gserviceaccount.com> | Fri Nov 08 21:17:08 2024 +0000 |
tree | b352494c5f6b3951cf85fc809d5ceb7375f5fe35 | |
parent | 95a87778cb1ba554d05eb4c3d0d808504f2eef10 [diff] |
[starnix][ebpf] use i64 for pointer offsets Previously pointer offsets were stored as u64. This is error prone - there were several cases array bounds were not checked correctly. It possible to bypass array size checks. Changes the verified to use i64 for these offsets and updated the verifier to use checked signed math for bounds checks. Added a test for array bounds check bypass. Bug: 376284982 Change-Id: I82bc2aa4ee25bb08a9ab52693383c1740e010594 Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1149587 Reviewed-by: Benjamin Lerman <qsr@google.com> Commit-Queue: Sergey Ulanov <sergeyu@google.com>
Fuchsia is an open source, general purpose operating system supporting modern 64-bit Intel and ARM processors.
We expect everyone interacting with our project to respect our code of conduct.
Read more about Fuchsia's principles.
See Getting Started.
See fuchsia.dev.