Vulnerabilities

With the aim of informing, warning and helping professionals with the latest security vulnerabilities in technology systems, we have made a database available for users interested in this information, which is in Spanish and includes all of the latest documented and recognised vulnerabilities.

This repository, with over 75,000 registers, is based on the information from the NVD (National Vulnerability Database) – by virtue of a partnership agreement – through which INCIBE translates the included information into Spanish.

On occasions this list will show vulnerabilities that have still not been translated, as they are added while the INCIBE team is still carrying out the translation process. The CVE  (Common Vulnerabilities and Exposures) Standard for Information Security Vulnerability Names is used with the aim to support the exchange of information between different tools and databases.

All vulnerabilities collected are linked to different information sources, as well as available patches or solutions provided by manufacturers and developers. It is possible to carry out advanced searches, as there is the option to select different criteria to narrow down the results, some examples being vulnerability types, manufacturers and impact levels, among others.

Through RSS feeds or Newsletters we can be informed daily about the latest vulnerabilities added to the repository. Below there is a list, updated daily, where you can discover the latest vulnerabilities.

CVE-2026-63954

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> hpfs: fix a crash if hpfs_map_dnode_bitmap fails<br /> <br /> If hpfs_map_dnode_bitmap fails, the code would call hpfs_brelse4 on<br /> uninitialized quad buffer head, causing a crash.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63955

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> mm/vmalloc: do not trigger BUG() on BH disabled context<br /> <br /> __get_vm_area_node() currently triggers a BUG() if in_interrupt() returns<br /> true. However, in_interrupt() also reports true when BH are disabled.<br /> <br /> The bridge code can call rhashtable_lookup_insert_fast() with bottom<br /> halves disabled:<br /> <br /> __vlan_add()<br /> -&gt; br_fdb_add_local()<br /> spin_lock_bh(&amp;br-&gt;hash_lock); fdb_add_local()<br /> -&gt; fdb_create()<br /> -&gt; rhashtable_lookup_insert_fast()<br /> -&gt; kvmalloc()<br /> -&gt; vmalloc()<br /> -&gt; __get_vm_area_node()<br /> -&gt; BUG_ON(in_interrupt())<br /> spin_unlock_bh(&amp;br-&gt;hash_lock)<br /> <br /> this triggers the BUG() despite the caller not being in NMI or<br /> hard IRQ context.<br /> <br /> Replace the in_interrupt() check with in_nmi() || in_hardirq().
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63956

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> USB: serial: cypress_m8: fix memory corruption with small endpoint<br /> <br /> Make sure that the interrupt-out endpoint max packet size is at least<br /> eight bytes to avoid user-controlled slab corruption or NULL-pointer<br /> dereference should a malicious device report a smaller size.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63957

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> USB: serial: safe_serial: fix memory corruption with small endpoint<br /> <br /> Make sure that the bulk-out buffer size is at least eight bytes to avoid<br /> user-controlled slab corruption in "safe" mode should a malicious device<br /> report a smaller size.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63958

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> usb: typec: ucsi: validate connector number in ucsi_connector_change()<br /> <br /> The connector number in a UCSI CCI notification is a 7-bit field<br /> supplied by the PPM. ucsi_connector_change() uses it to index the<br /> ucsi-&gt;connector[] array without checking it against the number of<br /> connectors the PPM reported at init time, so a buggy or malicious PPM<br /> (EC firmware, or an I2C-attached UCSI controller on the ccg / stm32g0 /<br /> glink transports) can drive schedule_work() on memory past the end of<br /> the array.<br /> <br /> Reject connector numbers that are zero or exceed cap.num_connectors<br /> before dereferencing the array.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63959

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> usb: typec: tcpm/tcpci_maxim: validate header NDO against RX_BYTE_CNT<br /> <br /> A broken/malicious port can transmit a CRC-valid frame whose header<br /> advertises up to seven data objects but whose body carries fewer than<br /> that. Check for this, and rightfully reject the message, instead of<br /> reading from uninitialized stack memory.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63960

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> usb: typec: wcove: don&amp;#39;t write past struct pd_message in wcove_read_rx_buffer()<br /> <br /> wcove_read_rx_buffer() copies the PD RX FIFO into the caller&amp;#39;s<br /> struct pd_message with<br /> <br /> for (i = 0; i regmap, USBC_RX_DATA + i, msg + i);<br /> <br /> which has two problems:<br /> <br /> USBC_RXINFO_RXBYTES() is a 5-bit field (max 31) while struct pd_message<br /> is 30 bytes (__le16 header + __le32 payload[PD_MAX_PAYLOAD], packed).<br /> The byte count latched in RXINFO is the number of bytes the port partner<br /> put on the wire, so a malicious partner that transmits a 31-byte frame<br /> can drive the loop one byte past the destination if the WCOVE BMC<br /> receiver does not enforce the PD object-count limit in hardware. The<br /> existing FIXME flagged this as unverified.<br /> <br /> Independently, regmap_read() takes an unsigned int * and stores a full<br /> unsigned int at the destination. Passing the byte pointer msg + i means<br /> each iteration writes four bytes; the high three are zero (val_bits is<br /> 8) and are normally overwritten by the next iteration, but the final<br /> iteration&amp;#39;s high bytes are not. With RXBYTES == 30 the i == 29 iteration<br /> already writes three zero bytes past msg, which sits on the IRQ thread&amp;#39;s<br /> stack in wcove_typec_irq().<br /> <br /> Clamp the loop to sizeof(struct pd_message) and read each register into<br /> a local before storing only its low byte, so the copy can never exceed<br /> the destination regardless of what RXINFO reports.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63945

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> Bluetooth: ISO: serialize iso_sock_clear_timer with socket lock<br /> <br /> iso_sock_close() calls iso_sock_clear_timer() before acquiring<br /> lock_sock(sk).<br /> <br /> iso_sock_clear_timer() reads iso_pi(sk)-&gt;conn twice without the<br /> socket lock held:<br /> <br /> if (!iso_pi(sk)-&gt;conn)<br /> return;<br /> cancel_delayed_work(&amp;iso_pi(sk)-&gt;conn-&gt;timeout_work);<br /> <br /> Concurrently, iso_conn_del() executes under lock_sock(sk) and calls<br /> iso_chan_del(), which sets iso_pi(sk)-&gt;conn to NULL and may result in<br /> the final reference to the connection being dropped:<br /> <br /> CPU0 CPU1<br /> ---- ----<br /> iso_sock_clear_timer()<br /> if (conn != NULL) ... lock_sock(sk)<br /> iso_chan_del()<br /> iso_pi(sk)-&gt;conn = NULL<br /> cancel_delayed_work(conn) /* NULL deref or UAF */<br /> <br /> iso_pi(sk)-&gt;conn is not stable across the unlock window, causing a<br /> NULL pointer dereference or use-after-free.<br /> <br /> Serialize iso_sock_clear_timer() with the socket lock by moving it<br /> inside lock_sock()/release_sock(), matching the pattern used in<br /> iso_conn_del() and all other call sites.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63946

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> Bluetooth: ISO: fix UAF in iso_recv_frame<br /> <br /> iso_recv_frame reads conn-&gt;sk under iso_conn_lock but releases the lock<br /> before using sk, with no reference held. A concurrent iso_sock_kill()<br /> can free sk in that window, causing use-after-free on sk-&gt;sk_state and<br /> sock_queue_rcv_skb().<br /> <br /> Fix by replacing the bare pointer read with iso_sock_hold(conn), which<br /> calls sock_hold() while the spinlock is held, atomically elevating the<br /> refcount before the lock drops. Add a drop_put label so sock_put() is<br /> called on all exit paths where the hold succeeded.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63947

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> Bluetooth: HIDP: fix missing length checks in hidp_input_report()<br /> <br /> hidp_input_report() reads keyboard and mouse payload data from an skb<br /> without first verifying that skb-&gt;len contains enough data.<br /> <br /> hidp_recv_intr_frame() pulls the 1-byte HIDP header before dispatching<br /> to hidp_input_report(). If a paired device sends a truncated packet,<br /> the handler reads beyond the valid skb data, resulting in an<br /> out-of-bounds read of skb data. The OOB bytes may be interpreted as<br /> phantom key presses or spurious mouse movement.<br /> <br /> Replace the open-coded length tracking and pointer arithmetic with<br /> skb_pull_data() calls. skb_pull_data() returns NULL if the requested<br /> bytes are not present, eliminating the need for a manual size variable<br /> and the separate skb-&gt;len guard.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63948

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> Bluetooth: L2CAP: fix chan ref leak in l2cap_chan_timeout() on !conn<br /> <br /> __set_chan_timer() takes a l2cap_chan reference via l2cap_chan_hold()<br /> before scheduling the delayed work. The normal path in<br /> l2cap_chan_timeout() drops this reference with l2cap_chan_put() at the<br /> end, but the early return when chan-&gt;conn is NULL skips the put,<br /> leaking the reference.<br /> <br /> Add the missing l2cap_chan_put() before the early return.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026

CVE-2026-63949

Publication date:
19/07/2026
In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> auxdisplay: line-display: fix OOB read on zero-length message_store()<br /> <br /> linedisp_display() unconditionally reads msg[count - 1] before<br /> checking whether count is zero, so a write of zero bytes to the<br /> message sysfs attribute hits msg[-1]:<br /> <br /> write(fd, "", 0);<br /> <br /> -&gt; message_store(..., buf, count=0)<br /> -&gt; linedisp_display(linedisp, buf, count=0)<br /> -&gt; msg[count - 1] == &amp;#39;\n&amp;#39; ; OOB read<br /> <br /> The kernfs write buffer for that store is a 1-byte allocation<br /> (kernfs_fop_write_iter() does kmalloc(len + 1) with len == 0),<br /> so msg[-1] is a 1-byte read before the slab object. On a<br /> KASAN-enabled kernel this trips an out-of-bounds report and<br /> panics; on stock kernels it silently reads adjacent slab data<br /> and, if that byte happens to be &amp;#39;\n&amp;#39;, the following count--<br /> wraps ssize_t 0 to -1 and is then passed to kmemdup_nul().<br /> <br /> linedisp_display() is reached from the message_store() sysfs<br /> callback (drivers/auxdisplay/line-display.c message attribute,<br /> mode 0644) and from the in-tree initial-message setup with<br /> count == -1, so the OOB path is only userspace-triggerable via<br /> zero-byte writes; vfs_write() does not short-circuit on<br /> count == 0 and kernfs_fop_write_iter() dispatches the store<br /> callback regardless.<br /> <br /> Guard the trailing-newline trim with a count check. The<br /> existing if (!count) block then takes the clear-display path<br /> unchanged.<br /> <br /> Affects every auxdisplay driver that registers via<br /> linedisp_register() / linedisp_attach(): ht16k33, max6959,<br /> img-ascii-lcd, seg-led-gpio.
Severity CVSS v4.0: Pending analysis
Last modification:
19/07/2026