Microsoft's Control Flow Guard comes to Rust and LLVM compilers

Microsoft's Control Flow Guard comes to Rust and LLVM compilers 1

Two popular code compilers have received support this month to natively support Control Flow Guard (CFG), a powerful Windows security feature.

The two compilers are Clang (part of the larger LLVM umbrella compiler project) and rustc (the default compiler for the Rust programming language).

Going forward, Clang and rustc will be able to compile C and C++ source code into Windows binaries that natively take advantage of Windows CFG.

What is CFG?

CFG is a powerful security feature that Microsoft first added in Windows 8.1. The feature can secure the execution flow of an application’s code to prevent malicious code (such as the result of memory bugs) from hijacking the native “control flow” and make the app take unwanted actions.

Until now, if a developer wanted their Windows application to tap into the Windows OS CFG protection, they needed to compile their C or C++ code using Microsoft Visual C++, the only popular code compiler that supported CFG.

However, in a blog post today, Microsoft said it worked with the LLVM and Rust teams to add CFG support to their respective compilers.

Starting with Clang 10.0 and Rust 1.47 (the current Nightly build), the two compilers can now also compile C/C++ projects into Windows apps that tap into the CFG feature to safeguard control flows from unauthorized tampering/exploitation attempts.

CFG protections coming to Chrome and Edge

The main drive for expanding CFG support to LLVM/Clang is, ironically, Chromium — the open-source browser at the base of Google Chrome —, which is compiled using Clang.

First, Chromium is the base of the recently revamped Edge browser, and Microsoft will most likely want to enable CFG protections for the new Edge version, similar to all of its native apps.

Second, Chrome accounts for a huge 60% browser market share, and despite being a competitor, Chrome with CFG enabled is good news for everyone, including Microsoft and its userbase. Fewer successful attacks on Chrome also means fewer attack escalations to the underlying OS. So, protecting Chrome also yields indirect benefits for Microsoft as well.

On the other hand, expanding CFG support to Rust was a no-brainer as well, since Microsoft has made it official last summer that it would explore rewriting some Windows and Azure components with Rust; components for which the company would most likely want to have CFG enabled when they ship to production.

“Working with the LLVM and Rust open-source communities has been a very positive experience. We particularly thank those members of the communities who contributed to this work through design suggestions, code reviews, and other advice,” said Andrew Paverd, Senior Researcher at the Microsoft Security Response Center and Microsoft Research.

Expanding compiler support for CFG is only one of the many security features Microsoft is currently working on. Other new security features coming to Windows also include Hardware-enforced Stack Protection and Kernel Data Protection.

About the author

E-Crypto News was developed to assist all cryptocurrency investors in developing profitable cryptocurrency portfolios through the provision of timely and much-needed information. Investments in cryptocurrency require a level of detail, sensitivity, and accuracy that isn’t required in any other market and as such, we’ve developed our databases to help fill in information gaps.

Related Posts

E-Crypto News Executive Interviews

Automated trading with HaasBot Crypto Trading Bots

Crypto Scams

Millions in Cryptocurrency Stolen by Scammers in the Last Month According to Tenable Research
November 24, 2021
Behind The Scenes: How this Crypto Community Responded to + $50m Hack
October 18, 2021
Crypto Scams
Crypto Scams Still Persistent In 2021, SEC Warns About Red Flags To Watch
September 9, 2021
Poly Network
Here’s How Hackers Stole Over $600 million in the Poly Network Attack
August 12, 2021
The World’s Most Infamous Crypto Hacks and Scams
July 31, 2021

Blockchain/Cryptocurrency Questions and Answers

Crypto casinos
How Does Bitcoin Casino Work + 2021 Beginner’s Guide
November 8, 2021
How to Buy and Sell Cryptocurrency
November 8, 2021
What Are Bitcoin Futures And How Will They Work In 2022?
November 4, 2021
The Unconventional Guide to Ethereum
October 28, 2021
ICo Presale
The Science Behind ICO Presales…
October 14, 2021

CryptoCurrencyUSDChange 1hChange 24hChange 7d
Bitcoin55,001 0.03 % 0.32 % 8.46 %
Ethereum4,140.9 0.45 % 0.93 % 6.66 %
Binance Coin593.11 0.18 % 3.07 % 2.05 %
Tether0.9986 0.03 % 0.08 % 0.23 %
Solana190.89 1.23 % 2.37 % 12.57 %
Cardano1.500 1.11 % 3.88 % 22.30 %
XRP0.9299 0.26 % 1.94 % 15.49 %
USD Coin1.000 0.14 % 0.20 % 0.17 %
Polkadot30.87 2.19 % 17.29 % 10.73 %
Dogecoin0.2215 0.68 % 1.42 % 7.23 %

Bitcoin (BTC) $ 54,818.00
Ethereum (ETH) $ 4,114.36
Binance Coin (BNB) $ 590.89
Tether (USDT) $ 0.999994
Solana (SOL) $ 189.00
Cardano (ADA) $ 1.48
XRP (XRP) $ 0.924848
USD Coin (USDC) $ 0.999742
Polkadot (DOT) $ 33.67
Dogecoin (DOGE) $ 0.199244