2021 ACM/IEEE 48th Annual International Symposium on Computer Architecture (ISCA) 2021
DOI: 10.1109/isca52012.2021.00076
|View full text |Cite
|
Sign up to set email alerts
|

No-FAT: Architectural Support for Low Overhead Memory Safety Checks

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
8
0

Year Published

2022
2022
2024
2024

Publication Types

Select...
5
3

Relationship

1
7

Authors

Journals

citations
Cited by 11 publications
(8 citation statements)
references
References 44 publications
0
8
0
Order By: Relevance
“…However, Intel claims that MPX has been deprecated and both GCC and Linux kernel no longer support Intel MPX. The method of No-FAT [50] indexing metadata is similar to LowFat in that it uses the pointer itself to compute the object's base address and thus check if memory accesses are out of bounds. The difference with LowFat is that No-Fat's base address calculation and memory access checking are implemented in hardware.…”
Section: Hardware Expansionsmentioning
confidence: 99%
“…However, Intel claims that MPX has been deprecated and both GCC and Linux kernel no longer support Intel MPX. The method of No-FAT [50] indexing metadata is similar to LowFat in that it uses the pointer itself to compute the object's base address and thus check if memory accesses are out of bounds. The difference with LowFat is that No-Fat's base address calculation and memory access checking are implemented in hardware.…”
Section: Hardware Expansionsmentioning
confidence: 99%
“…Workload Dependent-Runtime security overheads are highly sensitive to the types of applications being run. Even security defenses benchmarked on the same system can ex-hibit wildly different overheads depending on the exact benchmark or workload: For example, a recent runtime memory safety defense, which reports a geometric mean runtime overhead of 8%, demonstrates a 62% overhead on the gcc SPEC 2017 benchmark and a 0% overhead for others [28]. For some users and some systems, the use of such a defense may cause only negligible slowdowns whereas other users (perhaps programmers who rely heavily on gcc) will be heavily burdened.…”
Section: Measuring In Situ Performance Overheadsmentioning
confidence: 99%
“…We chose to use SPEC 2017 benchmark programs as our exemplar programs. Two security defenses in particular were considered: 1) Binary hardening flags (specifically -fPIE -pie -D_FORTIFY_SOURCE=2 -fstack-protector-all -fsanitize=safe-stack -Wl,-z,relro,-z,now)which incur a small performance overhead), and 2) a recent runtime memory safety technique-which can incur a negligible to large performance overhead [28]. Both happen to be compiler techniques, but our approach is not limited to compiler-based defenses.…”
Section: Creating the Training Setmentioning
confidence: 99%
“…Buffer overflow detection tools [15,31,54,63] also exist, but their performance overhead is shown to be too high to be used at runtime. Various hardware-based memory safety mechanisms exist for CPUs [11,21,22,35,38,48,59,78], but no such mechanism exists for GPUs to the best of our knowledge. Any hardware mechanism should not increase memory traffic.…”
Section: Introductionmentioning
confidence: 99%
“…Also, the driver embeds the encrypted buffer ID in the unused upper bits of the buffer base address pointers. This pointer-tagging approach [21,22,35,38,78] is lightweight and efficient since it removes the need for bounds propagation and does not require any hardware changes.…”
Section: Introductionmentioning
confidence: 99%