Introduced by Microsoft in recent versions of Windows and its compilers, Control Flow Guard is a useful defence in depth measure in the mitigation of return-oriented programming exploits.

My question is, is there any equivalent of this available or planned on any other operating system and compiler - particularly Linux and GCC?

  • IIRC only clang provides a similar technique – Yorick de Wid Sep 1 '16 at 13:35
  • 2
    This requires a compatible runtime loader. There are such systems on Linux, coming from app security research. A prominent example that comes to mind is libdetox from Mathias Payer. Read his thesis for details: Safe Loading and Efficient Runtime Confinement: A Foundation for Secure Execution. – Steve Dodier-Lazaro Sep 1 '16 at 13:53

It appears to that there are two possible implementation working in Linux. One is made by grsecurity named: "Reuse attack Protector (RAP)". Another is in llvm implemented and calls control flow integrity (cfi). As I understood: CFG is the marketing name of Microsoft for control flow integrity.

The Chrome Team seems to work with that very well.

Most of the information came from Hanno Böck's Presentation. He also provides some more details where CFI/CFG would have helped. In addition, you might take a look at this. Just not that you get the impression that this is a silver bullet.

  • 1
    your endgame post URL has changed, here is the new URL. – Sajuuk Aug 24 '18 at 7:06
  • I updated the URL in respect to your comment. Thank you for keep track of this. – Akendo Aug 24 '18 at 12:40
  • your informative answer should be respected, not my comment. :D – Sajuuk Aug 28 '18 at 7:27

XGuard from KarambaSecurity is a well tested suite implementing Control Flow Integrity for Linux on GCC and other build environments

Assaf Harel(Chief Scientist @Karamba Security)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.