Sunday, March 26, 2023
Learning Code
  • Home
  • JavaScript
  • Java
  • Python
  • Swift
  • C++
  • C#
No Result
View All Result
  • Home
  • JavaScript
  • Java
  • Python
  • Swift
  • C++
  • C#
No Result
View All Result
Learning Code
No Result
View All Result
Home C++

NSA to developers: Think about switching from C and C++ to a memory safe programming language

learningcode_x1mckf by learningcode_x1mckf
November 11, 2022
in C++
0
NSA to developers: Think about switching from C and C++ to a memory safe programming language
74
SHARES
1.2k
VIEWS
Share on FacebookShare on Twitter


You might also like

US NSA tells developers to shun C and C++ programming language – The Siasat Daily

Introducing Carbon, Google's Experimental Successor for C++ – MUO – MakeUseOf

C vs. C++: 12 Key Differences and Similarities – Spiceworks News and Insights

A software developer with a beard and his hair in a bun sits at a desk in a well-lit office, looking at his dual computer screens.

Picture: Getty Pictures/iStockphoto

The Nationwide Safety Company (NSA) is urging builders to shift to reminiscence protected languages – reminiscent of C#, Go, Java, Ruby, Rust, and Swift – to guard their code from distant code execution or different hacker assaults.

Of the languages talked about above, Java is probably the most broadly used throughout enterprise and Android app growth, whereas Swift is a high 10 language, thanks partially to iOS app growth. And there is rising curiosity in Rust as a substitute for C and C++ in techniques programming.  

“NSA advises organizations to contemplate making a strategic shift from programming languages that present little or no inherent reminiscence safety, reminiscent of C/C++, to a reminiscence protected language when attainable. Some examples of reminiscence protected languages are C#, Go, Java, Ruby, and Swift,” the NSA stated.

The spy company cites current analysis from Google and Microsoft that 70% of their security issues, respectively in Chrome and Home windows, have been memory-related and lots of of them have been the results of utilizing C and C++, that are extra liable to memory-based vulnerabilities.

Additionally: Cybersecurity, cloud and coding: Why these three skills will lead demand in 2023

“Malicious cyber actors can exploit these vulnerabilities for distant code execution or different hostile results, which may typically compromise a tool and be step one in large-scale community intrusions,” the NSA notes within the “Software Memory Safety” Cybersecurity Information Sheet.

“Generally used languages, reminiscent of C and C++, present quite a lot of freedom and adaptability in reminiscence administration whereas relying closely on the programmer to carry out the wanted checks on reminiscence references.”

So, the company recommends utilizing a reminiscence protected language the place attainable, whether or not its for software growth or techniques programming. 

“NSA recommends utilizing a reminiscence protected language when attainable,” it notes.

Whereas most infosec professionals are acquainted with this debate over reminiscence protected languages, maybe not all builders are. Although, maybe they need to be, given it is a decades-old drawback, as Java creator James Gosling not too long ago pointed out in a discussion about how and why Java was created. 

If something, the NSA doc provides builders a transparent, plain-language rationalization of the technical causes behind transferring in the direction of reminiscence protected languages. In all probability probably the most mentioned language when it comes to reminiscence security has been Rust, which is the principle candidate as a ‘substitute’ for C and C++. 

The Linux kernel recently introduced Rust as the second language to C, following the Android Open Supply Venture. These initiatives will not change previous C/C++ code, however will want Rust for brand spanking new code. Additionally, Microsoft Azure CTO Mark Russinovich recently called on all developers to use Rust over C and C++ for all new projects. 

“By exploiting these kinds of reminiscence points, malicious actors – who will not be sure by regular expectations of software program use – could discover that they will enter uncommon inputs into this system, inflicting reminiscence to be accessed, written, allotted, or deallocated in surprising methods,” the NSA explains. 

However – as consultants have noted in debates over Rust and C/C++ – the NSA warns that merely utilizing a reminiscence protected language would not by default preclude introducing reminiscence bugs to software program. Moreover, languages typically enable libraries that are not written in reminiscence protected languages.

“Even with a reminiscence protected language, reminiscence administration isn’t solely reminiscence protected. Most reminiscence protected languages acknowledge that software program typically must carry out an unsafe reminiscence administration operate to perform sure duties. In consequence, lessons or features can be found which might be acknowledged as non-memory protected and permit the programmer to carry out a probably unsafe reminiscence administration activity,” the NSA stated. 

“Some languages require something reminiscence unsafe to be explicitly annotated as such to make the programmer and any reviewers of this system conscious that it’s unsafe. Reminiscence protected languages may also use libraries written in non-memory protected languages and thus can comprise unsafe reminiscence performance. Though these methods of together with reminiscence unsafe mechanisms subvert the inherent reminiscence security, they assist to localize the place reminiscence issues might exist, permitting for additional scrutiny on these sections of code.”

Additionally: Cybersecurity: These are the new things to worry about in 2023

The NSA notes that some reminiscence protected languages can come at a efficiency price, which requires builders to be taught a brand new language. It additionally factors on the market are measures builders can take to harden non-memory protected languages. Google’s Chrome crew, for example, is exploring multiple methods to harden C++, however these approaches additionally include efficiency overheads. C++ will stay in Chrome’s codebase for the foreseeable future.     

The NSA recommends static and dynamic software safety testing to identify reminiscence points. It additionally recommends exploring reminiscence hardening strategies, reminiscent of Management Circulation Guard (CFG), which can place restrictions on the place code may be executed. Equally, Deal with Area Structure Randomization (ASLR) and Knowledge Execution Prevention (DEP) are really helpful.



Source link

Share30Tweet19
learningcode_x1mckf

learningcode_x1mckf

Recommended For You

US NSA tells developers to shun C and C++ programming language – The Siasat Daily

by learningcode_x1mckf
March 22, 2023
0
Google expands open source bounties, will soon support Javascript fuzzing too – ZDNet

US NSA tells developers to shun C and C++ programming language  The Siasat Day by day Source link

Read more

Introducing Carbon, Google's Experimental Successor for C++ – MUO – MakeUseOf

by learningcode_x1mckf
March 22, 2023
0
Google expands open source bounties, will soon support Javascript fuzzing too – ZDNet

Introducing Carbon, Google's Experimental Successor for C++  MUO - MakeUseOf Source link

Read more

C vs. C++: 12 Key Differences and Similarities – Spiceworks News and Insights

by learningcode_x1mckf
March 21, 2023
0
Google expands open source bounties, will soon support Javascript fuzzing too – ZDNet

C vs. C++: 12 Key Differences and Similarities  Spiceworks Information and Insights Source link

Read more

I want to learn C++ Directx9 – Graphics and GPU Programming – GameDev.net

by learningcode_x1mckf
March 20, 2023
0
Google expands open source bounties, will soon support Javascript fuzzing too – ZDNet

I want to learn C++ Directx9 - Graphics and GPU Programming  GameDev.web Source link

Read more

Is Java Losing Ground to C++, Python? – Dice Insights

by learningcode_x1mckf
March 20, 2023
0
Google expands open source bounties, will soon support Javascript fuzzing too – ZDNet

Is Java Losing Ground to C++, Python?  Cube Insights Source link

Read more
Next Post
Creating Tic-Tac-Toe With an AI Player & Shortcuts for Python Decorators – The Real Python Podcast

Creating Tic-Tac-Toe With an AI Player & Shortcuts for Python Decorators – The Real Python Podcast

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Related News

Code coverage for Swift Package Manager based apps

Code coverage for Swift Package Manager based apps

September 25, 2022
‘Unstoppable’ Python Remains More Popular than C and Java

JavaScript, Java, and Python are Most In-Demand Skills, Survey Finds

January 15, 2023
Time limit for notify – JavaScript – SitePoint Forums

Please help: cloneNode attaching to wrong – JavaScript – SitePoint Forums

November 3, 2022

Browse by Category

  • C#
  • C++
  • Java
  • JavaScript
  • Python
  • Swift

RECENT POSTS

  • 2023 Java roadmap for developers – TheServerSide.com
  • YS Jagan launches Ragi Java in Jagananna Gorumudda, says focused on intellectual development of students – The Hans India
  • Disadvantages of Java – TheServerSide.com

CATEGORIES

  • C#
  • C++
  • Java
  • JavaScript
  • Python
  • Swift

© 2022 Copyright Learning Code

No Result
View All Result
  • Home
  • JavaScript
  • Java
  • Python
  • Swift
  • C++
  • C#

© 2022 Copyright Learning Code

Are you sure want to unlock this post?
Unlock left : 0
Are you sure want to cancel subscription?