Oh no, you're thinking, yet another cookie pop-up. Well, sorry, it's the law. We measure how many people read us, and ensure you see relevant ads, by storing cookies on your device. If you're cool with that, hit “Accept all Cookies”. For more info and to customize your settings, hit “Customize Settings”.

Review and manage your consent

Here's an overview of our use of cookies, similar technologies and how to manage them. You can also change your choices at any time, by hitting the “Your Consent Options” link on the site's footer.

Manage Cookie Preferences
  • These cookies are strictly necessary so that you can navigate the site as normal and use all features. Without these cookies we cannot provide you with the service that you expect.

  • These cookies are used to make advertising messages more relevant to you. They perform functions like preventing the same ad from continuously reappearing, ensuring that ads are properly displayed for advertisers, and in some cases selecting advertisements that are based on your interests.

  • These cookies collect information in aggregate form to help us understand how our websites are being used. They allow us to count visits and traffic sources so that we can measure and improve the performance of our sites. If people say no to these cookies, we do not know how many people have visited and we cannot monitor performance.

See also our Cookie policy and Privacy policy.

This article is more than 1 year old

NASA's Curiosity rover brought Earth BUG to Mars

A software bug, that is, as flaw turns up in popular compression imaging algorithm

A 20 year old bug has been discovered in an algorithm so pervasive it's used in the Mars Curiosity rover, cars, aircraft, Android phones and a string of popular open source wares.

The bug can be found in the Lempel-Ziv-Oberhumer (LZO) data compression algorithm created by Markus Oberhumer, who on Wednesday posted a new version 2.07 of the code and revealed the bug.

The LZO algorithm was created in 1994 and has since appeared in countless systems including OpenVPN, FFmpeg and the Linux kernel.

Oberhumer says the vulnerability in the algorithm could trigger buffer overflows, denial of service and remote code execution (RCE) under albeit conditions requiring "uncommonly huge buffer sizes where you have to decompress more than 16 MiB (2^24 bytes) compressed bytes within a single function call".

The most serious impact will fall on popular media platforms FFmpeg and Libav and many beloved dependent projects such as VLC Media Player and Handbrake. Users of all should consider themselves open to RCE until patched.

These unpatched and affected users could be compromised when playing movies or audio from malicious sites.

The flaw could also affect Linux micro controllers used in a host of devices and machines such as cars leading to unlikely but physically dangerous attacks.

The discovery warrants caution,not a mass user freak out, according to Security Mouse researcher Don Bailey, who has blogged that the impact of the flaw depends on how LZO has been implemented.

"We are talking about code that has existed in the wild for two decades," Bailey wrote.

"The scope of this algorithm touches everything from embedded micro controllers on the Mars Rover, mainframe operating systems, modern day desktops, and mobile phones."

"RCE is possible on multiple architectures and platforms, but absolutely not all. Denial of service is possible on most implementations, but not all. Adjacent object over-write is possible on many architectures."

To this end it is unclear how Curiosity's micro controllers are affected, so the idea of interstellar RCE is in the realm of science fiction.

But here on Earth, the emergence of the bug is a reminder of how developers build on 'trusted' systems like LZO. That trust turns out to have been misplaced: Bailey recommendeds developers determine revisit their use of the algorithm to ensure the big buffer arrangements Oberhumer described aren't in place. ®

 

Similar topics

TIP US OFF

Send us news


Other stories you might like