Affected versions: Ubuntu 24.04

📖 ~4 min read  •  Source: Ubuntu Security Notice USN-7561-1

Related CVEs: CVE-2024-56161 CVE-2023-20584 CVE-2023-31356 CVE-2023-31315

Upstream summary: It was discovered that AMD Microcode incorrectly handled memory addresses.
An attacker with local administrator privilege could possibly use this
issue to cause loss of integrity of a confidential guest running under AMD
SEV-SNP. (CVE-2023-20584, CVE-2023-31356)

Josh Eads, Kristoffer Janke, Eduardo Nava, Tavis Ormandy and Matteo Rizzo
discovered that AMD Microcode incorrectly verified signatures. An attacker
with local administrator privilege could possibly use this issue to

Table of contents
  1. Symptom & Impact
  2. Environment & Reproduction
  3. Root Cause Analysis
  4. Quick Triage
  5. Step-by-Step Diagnosis
  6. Solution – Primary Fix
  7. Solution – Alternative Approaches
  8. Verification & Acceptance Criteria
  9. Rollback Plan
  10. Prevention & Hardening
  11. Related Errors & Cross-Refs
  12. References & Further Reading

Symptom & Impact

On Ubuntu 24.04 hosts running amd64-microcode, administrators report behaviour consistent with Ubuntu Security Notice USN-7561-1: apt refusing to install or restart affected services, AppArmor denials in journalctl -k, and — for security-rated advisories — exposure to the vulnerability set above. In production estates the visible impact ranges from a single service restart to wider availability incidents whenever amd64-microcode sits on the serving path.

Environment & Reproduction

Reproduction targets Ubuntu 24.04. Confirm release with lsb_release -a and cat /etc/os-release, and the currently installed package with dpkg -l amd64-microcode and apt-cache policy amd64-microcode. Capture system state with sudo ubuntu-bug amd64-microcode or sudo apport-collect for an evidence bundle. Trigger the workflow that exposes amd64-microcode — multiple vulnerabilities (4 CVEs) — patch and remediation guide while collecting journalctl -b, /var/log/apt/history.log, and dpkg -l output.

Root Cause Analysis

Root cause is documented in Ubuntu Security Notice USN-7561-1. Canonical security maintainers shipped fixes in the corresponding amd64-microcode update for Ubuntu 24.04; running an outdated build leaves the host exposed to the failure modes described in the advisory. Correlate journalctl --since timestamps with apt history (/var/log/apt/history.log) and any AppArmor denials in /var/log/syslog to isolate the originating change.

Quick Triage

Quick triage: run systemctl status amd64-microcode, journalctl -u amd64-microcode -n 200, sudo apt update && apt list --upgradable, sudo ufw status verbose, and sudo aa-status. If AppArmor is in enforce mode, capture journalctl -k | grep apparmor to surface denials linked to amd64-microcode — multiple vulnerabilities (4 CVEs) — patch and remediation guide.

Step-by-Step Diagnosis

1) Confirm symptom with systemctl --failed. 2) Inspect logs: journalctl -xe and journalctl -u amd64-microcode. 3) Validate firewall: sudo ufw status numbered. 4) Check AppArmor: sudo aa-status and journalctl -k | grep apparmor. 5) Verify package integrity: dpkg -V amd64-microcode and sudo apt install --reinstall amd64-microcode. 6) Correlate findings with apt list --installed amd64-microcode, /var/log/apt/history.log, and Ubuntu Security Notice USN-7561-1 to pin the change that introduced amd64-microcode — multiple vulnerabilities (4 CVEs) — patch and remediation guide.

Solution – Primary Fix

Primary fix for amd64-microcode — multiple vulnerabilities (4 CVEs) — patch and remediation guide: apply the corrective apt transaction described in Ubuntu Security Notice USN-7561-1, reload the affected systemd unit, and reconcile UFW / AppArmor state. Typical commands: sudo apt update, sudo apt -y install --only-upgrade amd64-microcode or sudo unattended-upgrade -v, sudo systemctl daemon-reload, sudo systemctl restart amd64-microcode, then dpkg -l amd64-microcode to validate the new build is installed. For kernel advisories add sudo reboot or apply Ubuntu Livepatch (canonical-livepatch status) where covered by your Ubuntu Pro subscription.

Need help rolling this patch across an Ubuntu fleet? Our IT Solutions & Services team manages Ubuntu patch windows with zero-downtime change controls and Ubuntu Pro / Landscape integration. Get in touch for a free consultation.

Solution – Alternative Approaches

Alternatives include pinning a known-good version via /etc/apt/preferences.d/amd64-microcode.pref with apt-mark hold amd64-microcode, rolling back with sudo apt install amd64-microcode=<old-version>, rotating UFW rules with sudo ufw reload, switching AppArmor profiles to complain mode (sudo aa-complain /etc/apparmor.d/usr.bin.amd64-microcode) to confirm policy is the cause before authoring a custom profile, or applying Canonical Livepatch fixes via canonical-livepatch refresh where Ubuntu Pro is subscribed.

Verification & Acceptance Criteria

Acceptance: dpkg -l amd64-microcode shows the expected fixed version, systemctl is-active amd64-microcode returns active, journalctl -u amd64-microcode --since "5 minutes ago" shows no errors, apt list --upgradable no longer lists the advisory, sudo ufw status shows required services, sudo aa-status reports the intended profile mode, and the original reproduction steps for amd64-microcode — multiple vulnerabilities (4 CVEs) — patch and remediation guide no longer trigger the failure across two consecutive runs.

Rollback Plan

Capture state with apt list --installed > /root/apt-pre.txt, dpkg --get-selections > /root/dpkg-pre.txt, and where available sudo zfs snapshot rpool/ROOT/ubuntu@pre-amd64-microcode on ZFS-on-root installs. To revert, run sudo apt install --allow-downgrades amd64-microcode=<old-version> and reload systemctl daemon-reload. Remove custom AppArmor profiles with sudo apparmor_parser -R. Reboot if the kernel or initramfs changed and re-verify symptoms.

Prevention & Hardening

Prevent recurrence by enabling unattended-upgrades with Unattended-Upgrade::Allowed-Origins tuned to ${distro_id}:${distro_codename}-security, subscribing to the ubuntu-security-announce mailing list, mirroring through Landscape / a local apt-mirror for controlled rollouts, version-locking sensitive packages, and monitoring file integrity with aide --check. Apply CIS Ubuntu hardening, keep AppArmor in enforce, and enable Canonical Livepatch under Ubuntu Pro so kernel advisories can be remediated without reboot.

Related issues that commonly surface alongside amd64-microcode — multiple vulnerabilities (4 CVEs) — patch and remediation guide: apt lock contention (dpkg --configure -a), systemd unit ordering cycles, AppArmor denials in journalctl -k, UFW zone drift, and kernel taint flags in cat /proc/sys/kernel/tainted. See sibling common-problem articles in this Ubuntu 24.04 series for adjacent failure modes.

View all ubuntu-24-04 tutorials on the Tutorials Hub →

Browse all common problems & solutions on the Tutorials Hub.

References & Further Reading

Primary reference: Ubuntu Security Notice USN-7561-1. Supporting docs: Ubuntu Server Guide, man apt, man systemctl, man ufw, man aa-status, man apparmor, man journalctl, the Ubuntu CVE Tracker at ubuntu.com/security/cves, and Canonical Livepatch docs. Review /usr/share/doc/amd64-microcode/ for component-level notes implicated in amd64-microcode — multiple vulnerabilities (4 CVEs) — patch and remediation guide.