Standard Support

Repositories and Updates

How are the "-updates" and "-security" pockets different?

TLDR;

When the security team prepares updates for the "-security" pocket they take whichever is the highest version from either the "-updates" OR the "-security" pocket and then patch that and release it to the "-security" pocket. As such, "-security" can end up containing some changes from "-updates". This is due to the nature of package versioning and to ensure that for all users (regardless of whether they have only "-security" or both "-security" + "-updates" enabled) that they can always upgrade to the security updated version (ie. the version number has to be strictly greater than anything prior to that from both "-updates" and "-security").

When doing security updates, any required dependencies that are not already in the "-security" pocket are also copied over from the "-updates" pocket as needed.

How are components and pockets used in the builds, and how do they affect security updates?

When packages are built, only certain components are available during the build:

Ubuntu also has several pockets that further divide the archive: release, security, updates, proposed and backports. The pocket can be found by looking at the Distribution entry of a source package. The release pocket is simply the name of the release, and the other pockets are denoted by <release name>-<pocket>. For example, the release pocket for Ubuntu 16.04 LTS, the Xenial Xerus, is simply xenial, while the security pocket for Ubuntu 16.04 LTS is xenial-security. Packages in release, security and updates are supported by the Ubuntu Security team, while packages in backports are supported by the community and packages in proposed are the responsibility of the uploader. When packages are built, only certain pockets are available during the build:

What repositories and pockets should I use to make sure my systems are up to date?

How do I automatically install security updates?

See https://help.ubuntu.com/community/AutomaticSecurityUpdates

There is a security update available that claims it is a "Fake sync from Debian" -- should I be concerned?

No. During the development cycle, source packages that have not been modified by Ubuntu developers are copied from Debian by Launchpad to Ubuntu automatically in a process referred to as "syncing". For some security updates that Debian publishes for its released versions, the Ubuntu Security Team will copy these updates to the corresponding Ubuntu release where the Ubuntu version does not differ from Debian. However, the same launchpad process is not used, as there are additional consistency checks and review the Ubuntu Security Team performs before copying, and the tool that is used to do this is called fake-sync, because it is intended to mimic Launchpad's "syncing" behavior. These "fake-synced" updates should only appear for packages in the universe and multiverse pockets.

When I run a virus scanner on my local Ubuntu Archive Mirror, it claims there are malware/trojans/viruses in it. What is going on?

Several packages in the Ubuntu Archive produce false positives since they contain examples of malware that do not pose a risk. Much of this has been discussed in Bug 592871.

Packages

Versions

Ubuntu, like most other Linux distros, releases security updates by patching specific issues rather than updating whole versions of software. This is to keep the packages in a stable release as close to their original version as possible to avoid introducing unintended regressions. For more details, see Stable Release Updates.

Sometimes external security vendors doing software version scanning against Ubuntu systems do not check actual package versions, leading to false positives in their scan reports. For an authoritative source of what packages may have outstanding vulnerabilities, the Ubuntu CVE Tracker can be consulted.

Architectures

Ubuntu is built for many architectures. Ubuntu officially supports i3865, amd64, armhf, arm64, ppc64el, s390x, and riscv64. Packages for i386 and amd64 are hosted on http://archive.ubuntu.com/ubuntu/dists/<release>/ and packages for all other architectures are hosted on http://ports.ubuntu.com/dists/<release>/.

Release

amd64

arm64

armhf1

i3865

powerpc

ppc64el

s390x

riscv64

Details

14.04 LTS (Trusty)2

yes

ports

yes3

yes

ports

yes3

--

--

Release Manifest

16.04 LTS (Xenial)2

yes

yes3

yes3

yes

ports

yes3

yes3

--

Release Manifest

18.04 LTS (Bionic)2

yes

yes3

yes3

yes

--

yes3

yes3

--

Release Manifest

20.04 LTS (Focal)

yes

yes3

yes3

yes5

--

yes3

yes3

yes

Release Manifest

22.04 LTS (Jammy)

yes

yes3

yes3

yes5

--

yes3,6

yes3

yes

Release Manifest

24.04 LTS (Noble)

yes

yes3

yes3

yes5

--

yes3,6

yes3

yes

Release Manifest

  1. armhf is ARMv7
  2. Release has reached end of standard security support. Extended support may be purchased for 14.04 LTS, 16.04 LTS and 18.04 LTS.

  3. While the architecture is listed in ports.ubuntu.com for this release, it should be considered a supported architecture
  4. Architecture is supported for 18 months on this LTS release
  5. Only a limited set of packages is supported for i386 on Ubuntu 19.10 onwards
  6. 22.04 and newer drop support for Power8 and require Power9 or newer

  7. Release has reached end of life.

Endianness

Sometimes a security vulnerability affects a particular architecture or endianness. When an issue affects only a single architecture or endianness, we will try to indicate this in our CVE tracker. Most issues affect all architectures. Most architectures in Ubuntu are little-endian, some are so-called bi-endian and some big-endian. In Ubuntu, the endianness of a particular architecture can be see in the following table:

Architecture (hardware name)

Little Endian

Big Endian

amd64 (x86_64)

yes

--

armhf

yes

--

arm64

yes

--

i386 (i686)

yes

--

powerpc (ppc64)

--

yes

ppc64el

yes

--

riscv64

yes

--

s390x

--

yes

Software

SSH

Sudo

Rescue Mode

UFW

GNOME Display Manager (gdm)

gnome-keyring

Q: Does using gnome-keyring weaken security?

A: For most users in typical environments, no. Proper use of gnome-keyring should increase security by encouraging users to store passwords securely in the keyring rather than resorting to other less secure means of storing their passwords (eg, sticky notes on the monitor or a plain text file somewhere on disk).

Basically, gnome-keyring can store passwords for you (by integrating with SecretService on modern releases of Ubuntu). The passwords are stored in encrypted keyrings that are not available to applications until the keyring is unlocked. A common keyring is the 'login' keyring, but others can be used. Once the keyring is unlocked, applications can ask gnome-keyring for passwords and use them so that users don't have to remember them all, or be hassled with password prompts all the time. A keyring can be locked after it is unlocked. Because gnome-keyring uses protected memory, other users on the system cannot access the keys within a user's keyring (see man mmap and man mlock).

Gnome/Ubuntu integration does a few things (see the upstream documentation for more details):

This provides:

Some people may not like to use keyrings in general and there are certain environments where their use is not appropriate. Users can always choose to not store their passwords in the keyring at all. Furthermore, gnome-keyring behavior can be adjusted:

Please note that by changing this behavior, programs that need access to the unlocked passwords will prompt you for the keyring passphrase whenever they need it.

In general, using a keyring does not weaken the security of the system. To use them safely2,3:

Notice that these recommendations are no different from when you are not using a keyring (ie, you always want a strong login passphrase, to lock your screen, and never share your login account).

[1] While the upstream documentation implied keyrings may be locked at various times when the computer is locked (as of 2020/02/26, "Hunkering down and discarding all secrets when your computer is locked"), keyrings are not locked/unlocked on screenlock/screenunlock since programs in the user's session may require access to the keyring during screenlock (eg, an email client). It is possible to configure gnome-keyring to lock/unlock the keyring when going into/coming out of suspend and/or hibernate.

[2] If you leave your computer powered on in an environment where it might be stolen (eg, a hotel room), software techniques cannot protect you. In general, in these environments the computer should be completely powered off and use disk encryption. Disk encryption as well as discussion to mitigate hardware, firmware, BIOS, cold-boot or 'evil maid' attacks are beyond the scope of this FAQ.

[3] gnome-keyring FAQ

Firefox AppArmor profile

Update Manager doesn't prompt for security updates

NetworkManager system connections

SHA512-crypt as default

curl

OpenSSL

webkit

The following packages containing a webkit engine cannot currently be updated to fix security issues: webkitgtk, qtwebkit-source, qtwebkit-opensource-src, wpewebkit.

WebKitGTK

While attempts will be made to update to new upstream major versions when possible, new dependency requirements may prevent doing so. Currently, newer versions require a more recent version of GCC than is available in Ubuntu 16.04 LTS, Ubuntu 18.04 LTS, and Ubuntu 20.04 LTS.

mozjs

The GNOME desktop requires the SpiderMonkey javascript engine from Mozilla, which is packaged as mozjs38, mozjs52, mozjs68, mozjs78, mozjs91, etc, and interfaces with it via gjs. Mozilla does not provide separate security maintenance for the SpiderMonkey project and instead irregularly releases new versions which break backwards compatibility of JavaScript language features (used by gnome-shell, extensions, applications) and the C++ API (used by gjs). Fixes for vulnerabilities are not always marked and the project progresses at a rapid pace making it prohibitive to backport security fixes. Because of this, security support for mozjs is provided by providing new versions of mozjs as they become available.

grub, grub2, grub2-unsigned, grub2-signed

Sometimes people ask why we have chosen to ignore CVEs on the grub2 package. The grub packaging is very complicated. The grub2 source package is mostly used with BIOS / CSM mode booting, which has no security boundaries. Without any security boundaries, there's no point to calling any given bugs in the code as "security bugs". Any bugs that allow bypassing secure boot are eligible for security fixes, and those will happen in the grub2-signed and grub2-unsigned packages. (The split is an artifact of the build process; it is not necessary for users to understand why there are two source packages. In short, the unsigned variant is built first and then the signed variant packages those binaries after they are signed outside the build environment.)

Hardening Guide

The default installation of Ubuntu should make reasonable security / usability tradeoffs for most users. It is our goal that you can use Ubuntu without worrying about security and also not be artificially restricted in what you can do with your computer. However, these tradeoffs may not be ideal for all users. Some people may wish to subscribe to Ubuntu Pro in order to deploy industry-standard security benchmarks like FIPS or CIS benchmarks or DISA STIGs.

We've collected some suggestions for proactive hardening steps that system administrators can apply without committing fully to the more comprehensive security policies. We suggest considering:

Vulnerabilities

Unofficial Software

Design

GPG Keys used by Ubuntu

Contact


CategorySecurityTeam

SecurityTeam/FAQ (last edited 2024-07-12 08:16:38 by 0xnishit)