-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Advisory ID: SYSS-2019-010
Product: Wireless Keyboard Set LX390
Manufacturer: Fujitsu
Affected Version(s): Model No. GK381
Tested Version(s): Model No. GK381
Vulnerability Type: Missing Encryption of Sensitive Data (CWE-311)
Risk Level: High
Solution Status: Open (product reached end-of-life (EOL) in May 2019)
Manufacturer Notification: 2019-04-01
Solution Date: -
Public Disclosure: 2019-10-23
CVE Reference: CVE-2019-18201
Author of Advisory: Matthias Deeg (SySS GmbH)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Overview:
Fujitsu Wireless Keyboard Set LX390 is a wireless desktop set consisting
of a mouse and a keyboard.
The manufacturer describes the product as follows (see [1, 2]):
"The Wireless Keyboard Set LX390 is an excellent desktop solution for
users with ambition. This durable keyboard set is equipped with secure
2.4 GHz technology and plug and play technology. The elegant mouse works
on most surfaces due to its precise 1000 dpi sensor. It offers fabulous
features and ultra slim, portable design."
Due to an insecure implementation of the radio data communication
without encryption, an attacker is able to remotely eavesdrop sensitive
data, for instance passwords entered via the wireless keyboard.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Vulnerability Details:
SySS GmbH found out that the wireless desktop set Fujitsu LX390 does not
use encryption for transmitting data packets containing keyboard events
like keystrokes.
However, the payload and checksum of data packets are transmitted in an
encoded way using so-called data whitening or data scrambling of the
used 2.4 GHz radio transceiver. Thus, without knowing this data
whitening mechanism and its configuration, an attacker cannot actually
gain access to the cleartext payload contents of transmitted radio
packets during a sniffing attack.
By analyzing the Fujitsu LX390 keyboard and its radio communication,
SySS was able to identify the used communication protocol, the data
whitening mechanism, and how to find the correct data whitening
configuration by sniffing the radio communication of a specific
keyboard.
With this knowledge, an attacker can remotely analyze and decode sent
keyboard events of a Fujitsu LX390 keyboard as cleartext, for instance
keystrokes, and thus gain unauthorized access to sensitive data like
passwords.
Knowing how to analyze the data communication of a Fujitsu LX390
keyboard also enabled SySS to synthesize valid data packets which
allowed for key stroke injection attacks, which are described in the
SySS security advisory SYSS-2019-011 (see [3]).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Proof of Concept (PoC):
SySS GmbH could successfully perform sniffing attacks against the
2.4 GHz radio communication of the Fujitsu LX390 keyboard using a
software-defined radio and an in-house developed software tool utilizing
GNU Radio [3].
For the protocol analysis,the software tool Universal Radio Hacker [4]
was used.
SySS GmbH could also perform successful sniffing attacks using another
in-house developed software tool in combination with the USB radio
dongle Crazyradio PA and the nrf-research-firmware by Bastille Networks
Internet Security written by Marc Newlin (see [6] and [7]).
The following output of the developed PoC software tool illustrates a
successful keystroke sniffing attack.
# python3 fujitsu_lx390_sniffer.py -l -p "3b:5b:53:bd:43" -c 28
_ __ _ _ ____ _ __ __
| |/ /___ _ _ ___| |_ _ __ ___ | | _____ / ___| _ __ (_)/ _|/ _| ___ _ __
| ' // _ \ | | / __| __| '__/ _ \| |/ / _ \ \___ \| '_ \| | |_| |_ / _ \ '__|
| . \ __/ |_| \__ \ |_| | | (_) | < __/ ___) | | | | | _| _| __/ |
|_|\_\___|\__, |___/\__|_| \___/|_|\_\___| |____/|_| |_|_|_| |_| \___|_|
|___/
SySS Fujitsu LX390 Keystroke Sniffer - PoC Tool v0.1 by Matthias Deeg - SySS GmbH
Based on different tools by Marc Newlin
- ---
3B:5B:53:BD:43:DB 42:EF:F5:0A:2D 02:45:13:93:AB KEY_P
3B:5B:53:BD:43:DB 42:CF:F5:0C:CB 02:41:13:F3:CC KEY_P
3B:5B:53:BD:43:DB 42:EF:F5:0A:2D 02:45:13:93:AB KEY_P
3B:5B:53:BD:43:DB 42:CF:1D:70:ED 02:41:04:CD:A8 KEY_A
3B:5B:53:BD:43:DB 42:EF:1D:76:0B 02:45:04:AD:CF KEY_A
3B:5B:53:BD:43:DB 42:CF:1D:70:ED 02:41:04:CD:A8 KEY_A
3B:5B:53:BD:43:DB 42:EF:55:BF:C7 02:45:16:3E:FC KEY_S
3B:5B:53:BD:43:DB 42:CF:55:B9:21 02:41:16:5E:9B KEY_S
3B:5B:53:BD:43:DB 42:EF:55:BF:C7 02:45:16:3E:FC KEY_S
3B:5B:53:BD:43:DB 42:EF:65:89:94 02:45:1A:52:36 KEY_W
(...)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Solution:
The Fujitsu Wireless Keyboard Set LX390 reached its end-of-life (EOL) in
May 2019.
Fujitsu has released two new wireless keyboard sets named LX410 [8] and
LX960 [9] that are not affected by the described security issue.
SySS recommends replacing LX390 wireless keyboard sets used in
environments with higher security demands, for instance with one of the
newer successor models LX410 or LX960.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Disclosure Timeline:
2019-04-01: Vulnerability reported to manufacturer
2019-04-02: Fujitsu confirms receipt of security advisory and asks
questions regarding the reported security issue;
answered open questions
2019-04-11: Received further questions from manufacturer
2019-04-18: Answered open questions and postponed disclosure date
2019-10-08: Reminded manufacturer of the upcoming release of the
security advisory
2019-10-18: Discussed details of coordinated disclosure with
manufacturer
2019-10-21: Public release of security advisory
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
References:
[1] Product website for Fujitsu Wireless Keyboard Set LX390
https://www.fujitsu.com/global/products/computing/peripheral/accessories/input-devices/keyboards/keyboard-lx390.html
[2] Data sheet Fujitsu Wireless Keyboard Set LX390
https://produktinfo.conrad.com/datenblaetter/1300000-1399999/001375431-da-01-en-FUJITSU_DESKTOP_SET_WIREL_LX390_WEISS.pdf
[3] SySS Security Advisory SYSS-2019-011
https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2019-011.txt
[4] GNU Radio
https://www.gnuradio.org/
[5] Universal Radio Hacker (URH)
https://github.com/jopohl/urh
[6] Product website for Crazyradio PA
https://www.bitcraze.io/crazyradio-pa/
[7] Bastille's nRF24 research firmware and tools
https://github.com/BastilleResearch/nrf-research-firmware
[8] Product website for Fujitsu Wireless Keyboard Set LX410
https://www.fujitsu.com/global/products/computing/peripheral/accessories/input-devices/keyboards/keyboard-lx410.html
[9] Product website for Fujitsu Wireless Keyboard Set LX960
https://www.fujitsu.com/global/products/computing/peripheral/accessories/input-devices/keyboards/keyboard-lx960.html
[10] SySS Security Advisory SYSS-2019-010
https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2019-010.txt
[11] SySS Responsible Disclosure Policy
https://www.syss.de/en/responsible-disclosure-policy/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Credits:
This security vulnerability was found by Matthias Deeg of SySS GmbH.
E-Mail: matthias.deeg (at) syss.de
Public Key: https://www.syss.de/fileadmin/dokumente/PGPKeys/Matthias_Deeg.asc
Key fingerprint = D1F0 A035 F06C E675 CDB9 0514 D9A4 BF6A 34AD 4DAB
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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-----
iQIzBAEBCgAdFiEE0fCgNfBs5nXNuQUU2aS/ajStTasFAl2wG84ACgkQ2aS/ajSt
TasGfA/6A2+us49Z3ZAYp/ctq+bCORNooowoZFf0eYW5+k0pLOuVusTA+sGwnxgN
VZcCpAzGKkkXiqOI+vVgzyncjzFY33GAiFEat+pFjsxRL9clO0rKKWTymTKA5uIR
1nn4cR98gfgB5ik5u6WZSQeH6hmP/kEmjRMjS0B7LjrFu+oWU3rnIqS4RhcSYRdd
9JSEdj2wD9R3IHwglZE7t8d/p4OBXmq+Ith0fzssJW2J+salsqwuD8YK58fMe1J5
i8WutJry1LCW+eYrC9MQYWSYVlj82manqoyP8GLJtRkt9Wk1Zp+kNr4bn7t8GP0J
N/QTLzUOrOfL9tsbsPxOU6t5rCS40iZdD3d2UFDQPgJHreUA6ocJN3f4ajnzwq7h
Xj/Q+t43zhfi6IqbqBciDBzFskO/AVyo7odP7RRt5g4p8fE40+PogNegaO+n1vBv
K2gTPGk3pgogkxT+Dk8fpPalVltr7eSRz+0/3KLun9JUgQMJc1SB2pjNDlV6nAFC
vg7QJ6aWufrNKia4/NorKXrD48ubBkvA6R+CVDed1ePbbQSDpFzjgVRHoc+5vXsE
BCU/QlEK6LmM2OylFvsmlEaHA/UDmXb2ppCrxTbgAywcKlJ3JogbgKaKrKfLXTn0
lpFMUy3CyDUJmP2mT5uzsGqp+nj97TBWgdPcaccd7xEeWxU9xW4=
=Noe8
-----END PGP SIGNATURE-----