{"api_version":"1","generated_at":"2026-08-13T21:50:47+00:00","cve":"CVE-2026-68146","urls":{"html":"https://cve.report/CVE-2026-68146","api":"https://cve.report/api/cve/CVE-2026-68146.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-68146","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-68146"},"summary":{"title":"ftrace: Add global mutex to serialize trace_parser access","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nftrace: Add global mutex to serialize trace_parser access\n\nIn ftrace, the trace_parser structure is allocated and initialized when\na trace file is opened, and is subsequently used across write and release\nhandlers to parse user input.\n\nThe affected handler paths and their specific functions are:\n  - Open paths: ftrace_regex_open(), ftrace_graph_open()\n  - Write paths: ftrace_regex_write(), ftrace_graph_write()\n  - Release paths: ftrace_regex_release(), ftrace_graph_release()\n\nIf userspace opens a trace file descriptor and shares it across multiple\nthreads, concurrent write calls will race on the parser's internal state,\nspecifically the 'idx', 'cont', and 'buffer' fields, leading to corrupted\ninput or undefined behavior.\n\nFix this by adding a global mutex, parser_lock, to serialize all access\nto trace_parser across write and release paths, preventing concurrent\ncorruption of parser state.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-08-10 13:20:00","updated_at":"2026-08-10 13:20:00"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/90be137813e1a5bdfd671e40fe28004fb959d3e4","name":"https://git.kernel.org/stable/c/90be137813e1a5bdfd671e40fe28004fb959d3e4","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/65bf73bee1a4f3722208ae46afc0fa5de76b9a0a","name":"https://git.kernel.org/stable/c/65bf73bee1a4f3722208ae46afc0fa5de76b9a0a","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/7720b63bcef3f54c7fe288774b720a227d54a306","name":"https://git.kernel.org/stable/c/7720b63bcef3f54c7fe288774b720a227d54a306","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/3d0dd138a06c782f8b755cd1b6f9909494514ce1","name":"https://git.kernel.org/stable/c/3d0dd138a06c782f8b755cd1b6f9909494514ce1","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/e807c9193d9493c7a0d039158ebb955050a76df1","name":"https://git.kernel.org/stable/c/e807c9193d9493c7a0d039158ebb955050a76df1","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-68146","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-68146","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 689fd8b65d669b96d612ccc37d6fb87bf7ed6907 3d0dd138a06c782f8b755cd1b6f9909494514ce1 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 689fd8b65d669b96d612ccc37d6fb87bf7ed6907 90be137813e1a5bdfd671e40fe28004fb959d3e4 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 689fd8b65d669b96d612ccc37d6fb87bf7ed6907 65bf73bee1a4f3722208ae46afc0fa5de76b9a0a git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 689fd8b65d669b96d612ccc37d6fb87bf7ed6907 e807c9193d9493c7a0d039158ebb955050a76df1 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 689fd8b65d669b96d612ccc37d6fb87bf7ed6907 7720b63bcef3f54c7fe288774b720a227d54a306 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 2.6.32","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 2.6.32 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.148 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.101 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.42 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1.6 7.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.2-rc5 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["kernel/trace/ftrace.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"3d0dd138a06c782f8b755cd1b6f9909494514ce1","status":"affected","version":"689fd8b65d669b96d612ccc37d6fb87bf7ed6907","versionType":"git"},{"lessThan":"90be137813e1a5bdfd671e40fe28004fb959d3e4","status":"affected","version":"689fd8b65d669b96d612ccc37d6fb87bf7ed6907","versionType":"git"},{"lessThan":"65bf73bee1a4f3722208ae46afc0fa5de76b9a0a","status":"affected","version":"689fd8b65d669b96d612ccc37d6fb87bf7ed6907","versionType":"git"},{"lessThan":"e807c9193d9493c7a0d039158ebb955050a76df1","status":"affected","version":"689fd8b65d669b96d612ccc37d6fb87bf7ed6907","versionType":"git"},{"lessThan":"7720b63bcef3f54c7fe288774b720a227d54a306","status":"affected","version":"689fd8b65d669b96d612ccc37d6fb87bf7ed6907","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["kernel/trace/ftrace.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"2.6.32"},{"lessThan":"2.6.32","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.148","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.101","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.42","versionType":"semver"},{"lessThanOrEqual":"7.1.*","status":"unaffected","version":"7.1.6","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.2-rc5","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.148","versionStartIncluding":"2.6.32","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.101","versionStartIncluding":"2.6.32","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.42","versionStartIncluding":"2.6.32","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.1.6","versionStartIncluding":"2.6.32","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2-rc5","versionStartIncluding":"2.6.32","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nftrace: Add global mutex to serialize trace_parser access\n\nIn ftrace, the trace_parser structure is allocated and initialized when\na trace file is opened, and is subsequently used across write and release\nhandlers to parse user input.\n\nThe affected handler paths and their specific functions are:\n  - Open paths: ftrace_regex_open(), ftrace_graph_open()\n  - Write paths: ftrace_regex_write(), ftrace_graph_write()\n  - Release paths: ftrace_regex_release(), ftrace_graph_release()\n\nIf userspace opens a trace file descriptor and shares it across multiple\nthreads, concurrent write calls will race on the parser's internal state,\nspecifically the 'idx', 'cont', and 'buffer' fields, leading to corrupted\ninput or undefined behavior.\n\nFix this by adding a global mutex, parser_lock, to serialize all access\nto trace_parser across write and release paths, preventing concurrent\ncorruption of parser state."}],"providerMetadata":{"dateUpdated":"2026-08-10T11:59:11.273Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/3d0dd138a06c782f8b755cd1b6f9909494514ce1"},{"url":"https://git.kernel.org/stable/c/90be137813e1a5bdfd671e40fe28004fb959d3e4"},{"url":"https://git.kernel.org/stable/c/65bf73bee1a4f3722208ae46afc0fa5de76b9a0a"},{"url":"https://git.kernel.org/stable/c/e807c9193d9493c7a0d039158ebb955050a76df1"},{"url":"https://git.kernel.org/stable/c/7720b63bcef3f54c7fe288774b720a227d54a306"}],"title":"ftrace: Add global mutex to serialize trace_parser access","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-68146","datePublished":"2026-08-10T11:59:11.273Z","dateReserved":"2026-07-30T09:28:09.371Z","dateUpdated":"2026-08-10T11:59:11.273Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-08-10 13:20:00","lastModifiedDate":"2026-08-10 13:20:00","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"68146","Ordinal":"1","Title":"ftrace: Add global mutex to serialize trace_parser access","CVE":"CVE-2026-68146","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"68146","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nftrace: Add global mutex to serialize trace_parser access\n\nIn ftrace, the trace_parser structure is allocated and initialized when\na trace file is opened, and is subsequently used across write and release\nhandlers to parse user input.\n\nThe affected handler paths and their specific functions are:\n  - Open paths: ftrace_regex_open(), ftrace_graph_open()\n  - Write paths: ftrace_regex_write(), ftrace_graph_write()\n  - Release paths: ftrace_regex_release(), ftrace_graph_release()\n\nIf userspace opens a trace file descriptor and shares it across multiple\nthreads, concurrent write calls will race on the parser's internal state,\nspecifically the 'idx', 'cont', and 'buffer' fields, leading to corrupted\ninput or undefined behavior.\n\nFix this by adding a global mutex, parser_lock, to serialize all access\nto trace_parser across write and release paths, preventing concurrent\ncorruption of parser state.","Type":"Description","Title":"ftrace: Add global mutex to serialize trace_parser access"}]}}}