CVE-2024-42416

8.8 HIGH

📋 TL;DR

This vulnerability allows arbitrary write to kernel memory in FreeBSD's bhyve hypervisor due to insufficient validation in the ctl_report_supported_opcodes function. Malicious software in a guest VM can exploit this to achieve code execution on the host as root, though constrained by Capsicum sandbox. Affects FreeBSD systems using bhyve with virtio_scsi.

💻 Affected Systems

Products:
  • FreeBSD
  • NetApp products using affected FreeBSD versions
Versions: FreeBSD 13.2-RELEASE before p6, FreeBSD 13.3-RELEASE before p2, FreeBSD 14.0-RELEASE before p5, FreeBSD 14.1-RELEASE before p1
Operating Systems: FreeBSD
Default Config Vulnerable: ⚠️ Yes
Notes: Requires bhyve hypervisor with virtio_scsi enabled. iSCSI initiators can exploit remotely against iSCSI targets.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution on the host system as root, potentially leading to full host compromise and lateral movement.

🟠

Likely Case

Privilege escalation from guest VM to host bhyve process, allowing host file system access and further exploitation within sandbox constraints.

🟢

If Mitigated

Limited impact due to Capsicum sandbox restrictions, preventing full system compromise but still allowing data exfiltration and limited host access.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires access to guest VM or iSCSI initiator. Capsicum sandbox limits impact but root code execution is possible.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: FreeBSD 13.2-RELEASE p6, 13.3-RELEASE p2, 14.0-RELEASE p5, 14.1-RELEASE p1

Vendor Advisory: https://security.freebsd.org/advisories/FreeBSD-SA-24:11.ctl.asc

Restart Required: Yes

Instructions:

1. Update FreeBSD using freebsd-update fetch && freebsd-update install
2. Rebuild kernel if using custom kernel
3. Restart affected bhyve instances and host if necessary

🔧 Temporary Workarounds

Disable virtio_scsi in bhyve

all

Remove or disable virtio_scsi device from bhyve VM configurations

Edit bhyve configuration to remove '-s' options with virtio-scsi

Network segmentation for iSCSI

all

Isolate iSCSI traffic to trusted networks only

🧯 If You Can't Patch

  • Disable bhyve hypervisor if not required
  • Implement strict network controls for iSCSI traffic and guest VM network access

🔍 How to Verify

Check if Vulnerable:

Check FreeBSD version with 'uname -a' and compare against affected versions. Verify bhyve usage and virtio_scsi configuration.

Check Version:

uname -a

Verify Fix Applied:

Confirm FreeBSD version is patched with 'uname -a'. Check that no bhyve instances are using vulnerable configurations.

📡 Detection & Monitoring

Log Indicators:

  • Unexpected bhyve process crashes
  • Kernel panic messages related to ctl or SCSI
  • Unusual iSCSI connection attempts

Network Indicators:

  • Abnormal iSCSI traffic patterns
  • Unexpected connections to iSCSI ports from untrusted sources

SIEM Query:

process_name:"bhyve" AND (event_type:"crash" OR event_type:"privilege_escalation")

🔗 References

📤 Share & Export