Hey everyone,

As many of you know, there is currently a series of vulnerabilities called Boothole that have been found by researchers and patched for GRUB2, which is used by many operating systems for booting.

While Solus uses GRUB2 for legacy BIOS, we do not use it for UEFI support (unlike the likes of Ubuntu) but rather use a utility called clr-boot-manager that is responsible for EFI loader creation, which are stored in a EFI System Partition (ESP) and used by systemd-boot. Additionally, we do not support Secure Boot.

So vulnerabilities related to UEFI support and Secure Boot do not affect Solus. However, there are some heap-based buffer overflow vulnerabilities such as CVE-2020-14309 and CVE-2020-14310 which could technically affect Solus, however given the tooling used to generate the grub configuration (clr-boot-manager does this), the process to both provide a vulnerable kernel, modules, etc. in addition to knowing you're specifically on Solus to run CBM, and more, I am fairly confident that the ability for somebody to exploit these vulnerabilities is extremely small and would likely require physical access.

That being said, obviously we want to exercise caution and ensure that an update to grub2 is delivered in a timely manner. These vulnerabilities were not disclosed to Solus and other operating systems (such as Arch Linux) which do not used trusted paths to shims and so we found out on the 29th like everyone else. Here is a quote on what the process was regarding disclosure:

Disclosures were done to a subset of binary distributions that have a trust path to shims signed with Microsoft UEFI CA 2011 db key. Arch Linux does not provide shim-signed with keys controlled by Arch Linux and it doesn't provide pre-signed secureboot kernels.

Source: https://lists.gnu.org/archive/html/grub-devel/2020-07/msg00048.html

I spent some time yesterday working out a series of patches based on grub2's source tree, however given its vulnerability patches also apply changes on top of code that didn't exist in the 2.04 release in the first place (some LVM changes, JSON support, etc.) I needed to scrap that idea and opted to move us to git based builds instead.

This was done today, which is the day of sync. Given I don't have any remotely up-to-date system that uses legacy BIOS, I opted to exercise caution and hold off the update to GRUB2 until after the sync was complete, which happened while I was at the store about 30 minutes ago (about 2020-07-31T16:30:00+03:00). The update is in the unstable repository and both @Girtablulu and @Staudey were kind enough to test it.

Of course, I don't want anybody to have a broken system, and want to ensure that a reasonable amount of test coverage is done before I can sync this to the stable / shannon repository, which will be an out-of-band sync and occur as soon as sufficient testing is provided (in other words, no you're not going to be waiting until next Friday).

If you are on Legacy BIOS (easiest way is to see if you have a /etc/grub.d/10_com.solus-project file) and want to help test this update, please do the following:

  1. Install the update: sudo eopkg install https://mirrors.rit.edu/solus/packages/unstable/g/grub2/grub2-2.04-27-1-x86_64.eopkg
  2. Run: sudo clr-boot-manager update
  3. Reboot

If you see any warnings related to not being able to connect to lvmetad, you're probably not using LVM / Full Disk Encryption. It's a warning and can typically be ignored.

Information I would like

  1. Did you successfully boot into Solus?
  2. Are you using LVM?
  3. Are you using Full Disk Encryption? (If so, answer to #2 is yes as well)

Please do not run this update and provide feedback if you are using an EFI-based system. While I appreciate the willingness to update, it'll just create more noise. Additionally, if you are having unrelated issues (like "omg this one specific sound device doesn't work"), please don't post them here. It'll get deleted and I'll be grumpy. The more focused this is, the more testing that is done, the sooner I can get this out to everyone.

Thanks <3

    Computer: Dell XPS L702X
    BIOS: Dell Version A12 (pure Legacy, no UEFI, no SecureBoot, /etc/grub.d/10_com.solus-project is present)

    1. Did you successfully boot into Solus?
      Yes, I did. Booted without any issue.
    2. Are you using LVM?
      No, LVM is not used.
    3. Are you using Full Disk Encryption? (If so, answer to #2 is yes as well)
      No, Full Disk Encryption is not used.

    No boot or other problems of any kind arose. No new (additional) warnings or errors were issued during boot.

    Computer: Laptop Samsung R620 (2009)
    /etc/grub.d/10_com.solus-project is present

    Did you successfully boot into Solus Yes!
    Are you using LVM? No!
    Are you using Full Disk Encryption? No!

    reboot without problem! 😄

    Computer: Dell Inspiron 5558
    1 Did you successfully boot into Solus?
    Yes, I did. Booted without any issue.
    2 Are you using LVM?
    No, LVM is not used.
    3 Are you using Full Disk Encryption? (If so, answer to #2 is yes as well)
    No, Full Disk Encryption is not used.
    reboot without any problems

    results from This Olde Thinkcentre M series w/bios:

    1) Yes, reboot successful. So good work there! Questions 2 & 3: No.

    Do I leave this update installed?

      AMD 8350 on 990 FXA-UD5
      #1 - Yes
      #2.3 - No

      Then today's sync also no errors and another reboot and still no errors.

      Boring 😄

      JoshStrobl

      Did you successfully boot into Solus? Yes
      Are you using LVM? Yes
      Are you using Full Disk Encryption? (If so, answer to #2 is yes as well) Yes

      Laptop: Acer E1-471 | BIOS: InsydeH20 v1.20 (pure legacy)

      Successfully boot? Yes, no issue.
      LVM and Full Disk Encryption? No.

      Did you successfully boot into Solus? yes
      Are you using LVM? yes
      Are you using Full Disk Encryption? (If so, answer to #2 is yes as well) yes

      great work! 🙂

      Thanks all for your testing. I'll be doing a sync of grub2 and thunderbird (thanks @kyrios for the update) to stable shortly and marking this as resolved 🙂

        • [deleted]

        Harvey Thanks for pointing it out!

        the weird thing about gettng this update last week is I haven't had my daily freezes, seizes, and multiple reboots since then. Not a coincidence.
        I have long had the opnion that my I/O, mobo, and old phenom were too easily taxed and obviously not in concert...and also suspected kernel issues with my apparatus, ergo hardware and software together. I have no kernel taint (there's a cool command to see this).
        I realize this was a grub fix applied to bios and kernel, but it's cleared up the crashes so far.
        Anyway, thank you all the same JoshStrobl for the update.