Slashdot Mirror


Severe Flaws Found In Libarchive Open Source Library (talosintel.com)

Reader itwbennett writes: Researchers from Cisco Systems' Talos group have found three memory corruption errors in the widely used open-source library libarchive that can result in arbitrary code execution and can be exploited by passing specially crafted files to applications that contain the vulnerable code. "The library is used by file and package managers included in many Linux and BSD systems, as well as by components and tools in OS X and Chrome OS," writes Lucian Constantin. "Developers can also include the library's code in their own projects, so it's hard to know how many other applications or firmware packages contain it." (Original blog post) So, while the libarchive maintainers have released patches for the flaws, it will likely take a long time for them to trickle down through all the affected projects.

4 of 82 comments (clear)

  1. Re:Goddammit, people! We need to use Rust NOW! by NotInHere · · Score: 4, Insightful

    Its just so funny. Most rust applications as of now only work because they use rust wrappers to native libraries. So even if you wrote your program in rust, if you used this crate, you'd have exactly the same problems as all those c/c++ writers: https://crates.io/crates/libar...

  2. Re:Goddammit, people! We need to use Rust NOW! by Darinbob · · Score: 4, Interesting

    Generally it's "please use this new language that has minimal support and is single sourced and apply it to your critical systems now!" It's nice to have new languages, but if we all rushed to the latest one then we'd just be repeating the same mistakes of having a monoculture.

    Remember when Java was the perfect language, designed from the ground up to make sure you can't do anything unsafe with it and it runs in a perfect sandbox that won't harm your computer.

    Now Rust is a nice language. But it'll take a whole lot more than "goddammit people!" to get projects to switch.

  3. Re:"the libarchive maintainers have released patch by NotInHere · · Score: 3, Informative

    They are in git, indeed:

    CVE-2016-4300: https://github.com/libarchive/...
    CVE-2016-4301: https://github.com/libarchive/...
    CVE-2016-4302: https://github.com/libarchive/...

    append .patch to the url in order to get an apply-able patch.

    But better update the whole library, usually there is lots of security related fixing going on when a security researcher takes a look at the code. Also, the git commit log may lie, and in fact some other commits fixed the issue, its just not marked this prominently.

    The best policy is always to not copy the whole library into your source tree, but making downloading the library part of the build process. If you have to modify the library some way, its best to upstream those changes, but if you don't want to do it for some reason, or can't do it, then you can create patch files, and apply the patches as part of the build process as well. Updating the library then gets as easy as changing an url and rebuilding + checking that all the patches applied + retesting.

  4. Re:Would a Mozilla Rust-only OS have prevented thi by Guy+Harris · · Score: 3, Funny

    It is Rust top to bottom.

    It probably wouldn't be very good on mobile machines because, as we know, Rust never sleeps.