Our system is currently under heavy load due to increased usage. We're actively working on upgrades to improve performance. Thank you for your patience.
2018 IEEE European Symposium on Security and Privacy (EuroS&P) 2018
DOI: 10.1109/eurosp.2018.00009
|View full text |Cite
|
Sign up to set email alerts
|

What You Get is What You C: Controlling Side Effects in Mainstream C Compilers

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

3
60
1

Year Published

2018
2018
2023
2023

Publication Types

Select...
4
3

Relationship

0
7

Authors

Journals

citations
Cited by 36 publications
(67 citation statements)
references
References 28 publications
3
60
1
Order By: Relevance
“…As explain in Section VI, observation points are set at function boundaries: the attacker may observe memory just before call and return instructions. With this policy, our IFP validator enforces that register allocation does not introduce information leaks due, for instance, to stack allocated variables (or spilled registers) not being properly erased at function return; an acknowledged security issue [14], [27], [31].…”
Section: Conditionsmentioning
confidence: 99%
See 1 more Smart Citation
“…As explain in Section VI, observation points are set at function boundaries: the attacker may observe memory just before call and return instructions. With this policy, our IFP validator enforces that register allocation does not introduce information leaks due, for instance, to stack allocated variables (or spilled registers) not being properly erased at function return; an acknowledged security issue [14], [27], [31].…”
Section: Conditionsmentioning
confidence: 99%
“…Compilers may also increase the lifetime of sensitive data in memory and therefore make the target program more vulnerable to attackers with physical access. The pitfalls of so-called safe erasure in the presence of compiler optimisations is recognised by the CERT at CMU 1 and protections have recently been proposed e.g., [27], [31]. The overall consequence of this unfortunate state-of-affairs is that for highly-critical code, manual inspection of the generated code is standard industrial practice.…”
Section: Introductionmentioning
confidence: 99%
“…The challenge is then to ensure that the security, enforced at an intermediate representation of the code, still holds for the running code. Indeed, compiler optimisation often breaks such security [33]. The insight of Kroll et al is that a safety theorem of the compiled code (i.e., that its behaviour is well-defined) can be exploited to obtain a security theorem for that same compiled code, guaranteeing that it makes no memory accesses outside its sandbox.…”
Section: Challenges In Formally Verified Sfimentioning
confidence: 99%
“…They also propose a secure DSE implementation for LLVM which verifies our IFP property. Simon, Chisnall and Anderson [19] investigate how compilers may break the security of cryptographic code. They propose compiler support for the secure erasure of secret which improves the security of the generated code.…”
Section: Related Workmentioning
confidence: 99%
“…They also propose a secured version of Dead Store Elimination, the optimisation responsible for removing the memset. Simon et al [19] take another stance at the problem and propose to insert a compiler pass which secures the code by zeroing stack frames on context switches. These works provide in-depth empirical studies but do not formalise the end-to-end security property they intend to preserve or enforce.…”
Section: Introductionmentioning
confidence: 99%