{"id":"CVE-2026-99124","kind":"vulnerability","aliases":["CVE-2026-99124"],"related":[],"title":"Linux s390 PCI: short error report write leaks uninitialized kernel memory","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ns390/pci: Fix leak of uninitialized kernel data in SCLP report\n\nWhile report_error_write() checks that the provided buffer is at least\nas large as the header struct, but not that it is large enough to\ncontain the report with the length claimed by report->length. If\nuser-space provides a short buffer, meaning a larger report->length than\nthe actually written payload, up to around 4K of kernel data from past\nthe kmalloc(len + 1) sized buffer allocated in kernfs_fop_write_iter()\nwill leak into the SCLP report.\n\nHowever, as the entity processing the SCLP is privileged and able to\naccess at least the page including the report, this does not leak data\nthat entity could not access but it is still an out of bounds read and\na malformed error report that should be rejected.","summary":"The s390 PCI SCLP error reporting interface does not check that a user-supplied buffer is as long as the report length it declares, so a short write lets an out-of-bounds read pull nearby kernel memory into the report. The leaked data only reaches the privileged SCLP service entity, which can already read that memory, so the flaw is an out-of-bounds read and a malformed-report issue rather than a broad data exposure.","severity":"unknown","cvss":null,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["ibm-z","infrastructure","kernel","linux","s390"],"not_affected_if":["non-s390-architecture"],"how_to_check":"- unknown","fix":"- unknown","status":"open","published_at":"2026-10-28T11:17:32+00:00","first_seen_at":"2026-10-28T11:32:35+00:00","triaged_at":"2026-10-28T11:37:29+00:00","updated_at":"2026-10-28T11:37:29+00:00","category":"infrastructure","confidence":0.5,"triage":{"at":"2026-10-28T11:37:29Z","model":"claude-haiku-5-5","output":{"fix":"- unknown","reach":"local","title":"Linux s390 PCI: short error report write leaks uninitialized kernel memory","impact":"low","summary":"The s390 PCI SCLP error reporting interface does not check that a user-supplied buffer is as long as the report length it declares, so a short write lets an out-of-bounds read pull nearby kernel memory into the report. The leaked data only reaches the privileged SCLP service entity, which can already read that memory, so the flaw is an out-of-bounds read and a malformed-report issue rather than a broad data exposure.","category":"infrastructure","nicknames":[],"who_cares":["linux","s390","ibm-z","kernel"],"confidence":0.5,"needs_auth":"yes","worst_case":"privileged SCLP entity reads adjacent kernel memory from the report","analyst_note":"Find the kernel commit and fixed stable versions for the s390/pci report_error_write fix from the NVD or kernel.org stable changelog.","how_to_check":"- unknown","needs_analyst":true,"not_affected_if":["non-s390-architecture"],"who_is_affected":"Only Linux systems running on IBM Z (s390) hardware with the PCI error reporting path present are in scope; the sources do not name affected kernel version ranges. Systems on other architectures, and s390 hosts without this interface, can skip it.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"low"},"cost_usd":0.0006,"input_tokens":3481,"output_tokens":503,"severity_before":"unknown"},"analyst_status":null,"analyst_note":null,"search":"'-2026':13A,16A '-99124':14A,17A '1':192C '4k':183C 'abl':217C 'access':219C,236C 'actual':177C 'alloc':195C 'alreadi':80B 'around':182C 'bound':59B,92B,244C 'broad':103B 'buffer':40B,134C,169C,194C 'check':34B,130C 'claim':158C 'contain':152C 'could':234C 'cve':12A,15A 'data':70B,104B,122C,186C,231C 'declar':49B 'enough':150C 'entiti':77B,210C,233C 'error':5A,29B,128C,249C 'exposur':105B 'fix':117C 'flaw':86B 'follow':111C 'fop':198C 'header':142C 'howev':207C 'ibm':19B 'ibm-z':18B 'includ':224C 'infrastructur':21B 'interfac':31B 'issu':99B 'iter':200C 'kernel':10A,22B,63B,109C,121C,185C 'kernf':197C 'kmalloc':190C 'larg':139C,149C 'larger':172C 'leak':8A,69B,118C,202C,230C 'least':137C,221C 'len':191C 'length':47B,157C,161C,174C 'let':54B 'linux':1A,23B,108C 'long':43B 'malform':97B,248C 'malformed-report':96B 'mean':170C 'memori':11A,64B,83B 'nearbi':62B 'out-of-bound':56B,89B 'page':223C 'past':188C 'payload':179C 'pci':3A,27B 'privileg':74B,215C 'process':211C 'provid':133C,166C 'pull':61B 'rather':100B 'reach':72B 'read':60B,81B,93B,245C 'reject':254C 'report':6A,30B,46B,67B,98B,125C,127C,154C,160C,173C,206C,226C,250C 'resolv':115C 's390':2A,24B,26B 's390/pci':116C 'sclp':28B,75B,124C,205C,213C 'servic':76B 'short':4A,52B,168C 'size':193C 'space':165C 'still':240C 'struct':143C 'suppli':39B 'uniniti':9A,120C 'user':38B,164C 'user-spac':163C 'user-suppli':37B 'vulner':112C 'write':7A,53B,129C,199C 'written':178C 'z':20B","nicknames":[],"mitigations":[],"who_affected":"Only Linux systems running on IBM Z (s390) hardware with the PCI error reporting path present are in scope; the sources do not name affected kernel version ranges. Systems on other architectures, and s390 hosts without this interface, can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-28T11:17:32+00:00","kev":null,"cvss_vector":null,"cvss_by":null,"poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-99124","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-99124","severity":null,"published_at":"2026-10-28T11:17:32+00:00","modified_at":"2026-10-28T11:17:32+00:00","first_seen_at":"2026-10-28T11:32:35+00:00","fetched_at":"2026-10-28T11:32:35+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}