From 711b109246dc7d7e3881ccf70dce4adceefb4b02 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 29 Jun 2025 02:29:33 +0100 Subject: Mitigate VIA keylogger security issues (#25414) Co-authored-by: Nick Brassel --- quantum/via.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'quantum') diff --git a/quantum/via.c b/quantum/via.c index 3682b4ab2b..9446811af6 100644 --- a/quantum/via.c +++ b/quantum/via.c @@ -22,6 +22,10 @@ # error "DYNAMIC_KEYMAP_ENABLE is not enabled" #endif +#ifdef VIA_INSECURE +# pragma message "VIA_INSECURE is enabled - firmware is susceptible to keyloggers" +#endif + #include "via.h" #include "raw_hid.h" @@ -318,7 +322,11 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { uint8_t rows = 28 / ((MATRIX_COLS + 7) / 8); uint8_t i = 2; for (uint8_t row = 0; row < rows && row + offset < MATRIX_ROWS; row++) { +#ifdef VIA_INSECURE matrix_row_t value = matrix_get_row(row + offset); +#else + matrix_row_t value = 0; +#endif #if (MATRIX_COLS > 24) command_data[i++] = (value >> 24) & 0xFF; #endif -- cgit v1.2.3