🛡️ CVE-2025-68183 — kernel

🟠 CVSS 7.8 — High ✅ No Known Exploit NVD
7.8
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

ima: don't clear IMA_DIGSIG flag when setting or removing non-IMA xattr

In the Linux kernel, the following vulnerability has been resolved:

ima: don't clear IMA_DIGSIG flag when setting or removing non-IMA xattr

Currently when both IMA and EVM are in fix mode, the IMA signature will

be reset to IMA hash if a program first stores IMA signature in

security.ima and then writes/removes some other security xattr for the

file.

For example, on Fedora, after booting the kernel with "ima_appraise=fix

evm=fix ima_policy=appraise_tcb" and installing rpm-plugin-ima,

installing/reinstalling a package will not make good reference IMA

signature generated. Instead IMA hash is generated,

# getfattr -m - -d -e hex /usr/bin/bash

# file: usr/bin/bash

security.ima=0x0404...

This happens because when setting security.selinux, the IMA_DIGSIG flag

that had been set early was cleared. As a result, IMA hash is generated

when the file is closed.

Similarly, IMA signature can be cleared on file close after removing

security xattr like security.evm or setting/removing ACL.

Prevent replacing the IMA file signature with a file hash, by preventing

the IMA_DIGSIG flag from being reset.

Here's a minimal C reproducer which sets security.selinux as the last

step which can also replaced by removing security.evm or setting ACL,

#include <stdio.h>

#include <sys/xattr.h>

#include <fcntl.h>

#include <unistd.h>

#include <string.h>

#include <stdlib.h>

int main() {

const char* file_path = "/usr/sbin/test_binary";

const char* hex_string = "030204d33204490066306402304";

int length = strlen(hex_string);

char* ima_attr_value;

int fd;

fd = open(file_path, O_WRONLY|O_CREAT|O_EXCL, 0644);

if (fd == -1) {

perror("Error opening file");

return 1;

}

ima_attr_value = (char*)malloc(length / 2 );

for (int i = 0, j = 0; i < length; i += 2, j++) {

sscanf(hex_string + i, "%2hhx", &ima_attr_value[j]);

}

if (fsetxattr(fd, "security.ima", ima_attr_value, length/2, 0) == -1) {

perror("Error setting extended attribute");

close(fd);

return 1;

}

const char* selinux_value= "system_u:object_r:bin_t:s0";

if (fsetxattr(fd, "security.selinux", selinux_value, strlen(selinux_value), 0) == -1) {

perror("Error setting extended attribute");

close(fd);

return 1;

}

close(fd);

return 0;

}

How this vulnerability can be exploited

This issue can be reached with local access to the system, attack complexity is low, an attacker needs low-level privileges on the target. No user interaction is required. The scope is unchanged, so the impact stays within the vulnerable component. Rated impact: confidentiality high, integrity high, availability high.

Affected software

CVE-2025-68183 is recorded against 2 packages.

  • kernel (from 6.13.0 up to 6.17.8)
  • unknown

Timeline and source

Published on 16 December 2025 and last revised on 6 August 2026. No public exploit is currently recorded for this entry. Record sourced from NVD.

References

git.kernel.org (Web)
git.kernel.org (Web)
git.kernel.org (Web)
git.kernel.org (Web)
github.com (Advisory)
nvd.nist.gov (Advisory)
git.kernel.org (Package)

CVE-2025-68183 on other distributions

Each distribution ships its own build and its own fixed version. Pick the one you run:

Details

Severity High
CVSS Score 7.8
CVSS Vector CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE N/A
Public Exploit ✅ No
Source NVD
Published 2025-12-16
Updated 2026-08-12
Modified 2026-08-06
Fix URL N/A

Affected Packages

Software From version Fixed in
kernel 6.13.0 6.17.8
unknown

Similar Threats

Site Security Check

Is kernel part of your stack?

CVE-2025-68183 is rated CVSS 7.8 High. BotEraser scans your installation against known CVE records and tells you whether this vulnerability applies to the versions you actually run.

Scan My Site Free →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.