Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Vulnerabilities / Threats

9/28/2015
10:30 AM
Anna Chiang
Anna Chiang
Commentary
50%
50%

Deconstructing The Challenges Of Software Assurance For Connected Cars

Ensuring software security in the auto industry will entail careful attention to all aspects of software development: design, coding standards, testing, verification and run-time assurance.

Hacking of cars has become a hot topic. If you have any doubt, consider the extensive coverage of the remote takeover of a Jeep Cherokee by security researchers Charlie Miller and Chris Valasek via a security vulnerability in the car’s UConnect infotainment software.

One part of a solution to a real-world hack may be to separate potential attack points (telematics, Bluetooth and radio) from safety-critical car functions (braking, steering and acceleration). But external communication to connected cars (WiFi car software updates and GPS/sensors for future autonomous cars) will still be necessary in some vehicles.

It’s gotten to a point where almost anything in a modern car that is electronically controlled (GM OnStar app, BMW ConnectedDrive and car key fobs) can and will be hacked unless stringent system and software security design considerations and processes are put in place.

The scale of the problem is enormous. Today, mainstream cars may contain tens of millions of lines of software code executing on over a hundred electronic control units (ECUs). Ensuring software security in the auto industry will entail careful attention to all aspects of software development: design, coding standards, testing, verification, and run-time assurance.

It will also be necessary for the industry to secure communication interfaces (radio, media, wireless, telematics, vehicle-to-vehicle), isolate key functions, monitor for anomalous messages on vehicle networks and guarantee the security of supply-chain components. And, with so many third-party components as well as home-grown code, a robust source code management (SCM) or version control platform will be essential to track and manage source code development and provide detailed audit logs for industry standards compliance (ISO 26262) or as part of fault or accident investigations.  

Even minor bugs have consequences

If a mobile game app crashes due to a software bug, annoyed users may stop using it and download something else. In a car, however, the consequences of a minor software bug can be catastrophic. For example, in 2014 Honda publicly admitted that a software defect in an ECU caused unintended acceleration and recalled 175K hybrid cars.

Software vulnerabilities that occur in “unsafe” languages such as C and C++ (format string attacks, buffer overflows, dangling pointers, and privilege escalation bugs) can also be leveraged by attackers to gain access to sensitive automotive systems. Some automakers have been hesitant to move away from C / C++ because of existing legacy code investments, smaller memory footprint, real-time execution constraints, and the need to write low-level device drivers; although recently, available memory-safe alternatives such as Rust and Ivory show some promise.   

Going forward, software assurance in cars will be even more challenging as automated parking assistance and lane guidance becomes more widely available and self-driving autonomous cars appear on the horizon. Connected cars are also being refreshed more frequently with some vehicle features even being updated via over-the-air firmware updates (Tesla max speed and pseudo-autonomous capabilities), which opens up even more security breach concerns.

Current standards, future needs

Automotive industry software development standards and guidelines such as the Motor Industry Software Reliability Association [MISRA] C /C++ standard) try to prevent the use of known bad coding practices.  Several static analysis tools can also scan source code repositories to catch non-MISRA-compliant code and identify software flaws and potential vulnerabilities. Additional tools can detect policy violations, flow analysis, code reviews and run-time errors to identify memory leaks and buffer overflows during the build and test process.

Perhaps the greatest area of concern still to be addressed is the security of supply chain components. In 2014, Toyota was fined $1.2B by the U.S. government for “hiding safety defects and concealing information” that some believed were software defects in its automotive code called attention to by the technical press. This example demonstrates that auto manufacturers will be ultimately held responsible for failures of any part within their vehicles. It’s no surprise, then, that recently more automakers are issuing auto recalls for software safety or security updates than ever before (Fiat, Jeep and Tesla). 

But most ECUs and other components come from third-party suppliers as a “black box” built to auto manufacturers’ requirements and give little visibility into how the hardware and software was developed. Those manufacturers now need to be intimately familiar with every component and version of the software running in their cars that they developed or came from their software supply chain.

Combined with rigorous design for systems isolation, secure software development in automotive systems needs to be a top priority for automakers. Using the right, standards-compliant, modern software development, test, verification and SCM practices is critical for delivering safe and reliable products rapidly in today’s ultra-competitive modern car market. 

Before joining Perforce as the marketing lead for Helix Threat Detection products, Anna did product marketing for BlueRISC, a security company which provides threat detection, endpoint security and forensic analysis products that identify software vulnerabilities and malware ... View Full Bio
Comment  | 
Print  | 
More Insights
Comments
Threaded  |  Newest First  |  Oldest First
RyanSepe
50%
50%
RyanSepe,
User Rank: Ninja
9/28/2015 | 11:09:08 AM
Device Token
To increase security behind smart updating for vehicles a physical device is crucial. The security behind the updates would increase ten fold if before installing them you needed to plug in the device or have the device in close proximity to ensure you are the owner of the car applying the updates. Even then you would need to ensure that updates could only come from a trusted source.

There will still be inherent vulnerabilities as there always are with the IoT but this will help to minimize the vulnerability footprint.
7 Tips for Infosec Pros Considering A Lateral Career Move
Kelly Sheridan, Staff Editor, Dark Reading,  1/21/2020
For Mismanaged SOCs, The Price Is Not Right
Kelly Sheridan, Staff Editor, Dark Reading,  1/22/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Current Issue
IT 2020: A Look Ahead
Are you ready for the critical changes that will occur in 2020? We've compiled editor insights from the best of our network (Dark Reading, Data Center Knowledge, InformationWeek, ITPro Today and Network Computing) to deliver to you a look at the trends, technologies, and threats that are emerging in the coming year. Download it today!
Flash Poll
How Enterprises are Attacking the Cybersecurity Problem
How Enterprises are Attacking the Cybersecurity Problem
Organizations have invested in a sweeping array of security technologies to address challenges associated with the growing number of cybersecurity attacks. However, the complexity involved in managing these technologies is emerging as a major problem. Read this report to find out what your peers biggest security challenges are and the technologies they are using to address them.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2015-3154
PUBLISHED: 2020-01-27
CRLF injection vulnerability in Zend\Mail (Zend_Mail) in Zend Framework before 1.12.12, 2.x before 2.3.8, and 2.4.x before 2.4.1 allows remote attackers to inject arbitrary HTTP headers and conduct HTTP response splitting attacks via CRLF sequences in the header of an email.
CVE-2019-17190
PUBLISHED: 2020-01-27
A Local Privilege Escalation issue was discovered in Avast Secure Browser 76.0.1659.101. The vulnerability is due to an insecure ACL set by the AvastBrowserUpdate.exe (which is running as NT AUTHORITY\SYSTEM) when AvastSecureBrowser.exe checks for new updates. When the update check is triggered, the...
CVE-2014-8161
PUBLISHED: 2020-01-27
PostgreSQL before 9.0.19, 9.1.x before 9.1.15, 9.2.x before 9.2.10, 9.3.x before 9.3.6, and 9.4.x before 9.4.1 allows remote authenticated users to obtain sensitive column values by triggering constraint violation and then reading the error message.
CVE-2014-9481
PUBLISHED: 2020-01-27
The Scribunto extension for MediaWiki allows remote attackers to obtain the rollback token and possibly other sensitive information via a crafted module, related to unstripping special page HTML.
CVE-2015-0241
PUBLISHED: 2020-01-27
The to_char function in PostgreSQL before 9.0.19, 9.1.x before 9.1.15, 9.2.x before 9.2.10, 9.3.x before 9.3.6, and 9.4.x before 9.4.1 allows remote authenticated users to cause a denial of service (crash) or possibly execute arbitrary code via a (1) large number of digits when processing a numeric ...