В ядре Linux устранена следующая уязвимость:
ieee802154: операции дампа устаревшей версии LLSEC на уровне администратора
В net/ieee802154/netlink.c устаревшая таблица операций семейства IEEE802154_NL.
создает записи дампа LLSEC (LLSEC_LIST_KEY, LLSEC_LIST_DEV,
LLSEC_LIST_DEVKEY, LLSEC_LIST_SECLEVEL) с IEEE802154_DUMP(), который
не устанавливает .flags, поэтому общий сетевой канал запускает их без ограничений. Современный
семейство nl802154 admin-gates эквивалент читает через
NL802154_CMD_GET_SEC_KEY и друзья с .flags = GENL_ADMIN_PERM. Любой локальный идентификатор, который может открыть AF_NETLINK/NETLINK_GENERIC, может разрешить
семейство «802.15.4 MAC» и дамп LLSEC_LIST_KEY на любом wpan netdev
на котором установлен ключ LLSEC; обработчик дампа записывает необработанные данные
16-байтовые ключевые байты AES-128 (IEEE802154_ATTR_LLSEC_KEY_BYTES, скопированы
дословно из структуры ieee802154_llsec_key.key) в ответ.
Восстановление ключа AES, скомпрометировавшего конфиденциальность канала 802.15.4 LLSEC
и подлинность, поскольку LLSEC использует CCM* и аутентифицирует тот же ключ
и шифрует кадры. Воздействие: любой локальный идентификатор пользователя без каких-либо возможностей может прочитать необработанные 16-байтовые данные. Ключ AES-128 LLSEC из таблицы ключей ядра на любом сетевом устройстве wpan, имеющем
ключ LLSEC, установленный администратором, путем выдачи LLSEC_LIST_KEY
дамп устаревшего семейства generic-netlink IEEE802154_NL.
Ввести IEEE802154_DUMP_PRIV(), зеркально отображающий IEEE802154_DUMP(), но
установите .flags = GENL_ADMIN_PERM и используйте его для дампа четырех LLSEC.
записи. LIST_PHY и LIST_IFACE сохраняют IEEE802154_DUMP(), поскольку
современное семейство nl802154 предоставляет свои эквиваленты непривилегированному доступу.
считыватели по дизайну (NL802154_CMD_GET_WPAN_PHY и
Перенос NL802154_CMD_GET_INTERFACE "может быть получен непривилегированным
аннотации пользователей).
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: ieee802154: admin-gate legacy LLSEC dump operations In net/ieee802154/netlink.c, the legacy IEEE802154_NL family ops table builds the LLSEC dump entries (LLSEC_LIST_KEY, LLSEC_LIST_DEV, LLSEC_LIST_DEVKEY, LLSEC_LIST_SECLEVEL) with IEEE802154_DUMP() which sets no .flags, so generic netlink runs them ungated. The modern nl802154 family admin-gates the equivalent reads via NL802154_CMD_GET_SEC_KEY and friends with .flags = GENL_ADMIN_PERM. Any local uid that can open AF_NETLINK / NETLINK_GENERIC can resolve the "802.15.4 MAC" family and dump LLSEC_LIST_KEY on any wpan netdev that has an LLSEC key installed; the dump handler writes the raw 16-byte AES-128 key bytes (IEEE802154_ATTR_LLSEC_KEY_BYTES, copied verbatim from struct ieee802154_llsec_key.key) into the reply. Recovering the AES key compromises 802.15.4 LLSEC link confidentiality and authenticity, since LLSEC uses CCM* and the same key authenticates and encrypts frames. Impact: any local uid with no capabilities can read the raw 16-byte AES-128 LLSEC key from the kernel keytable on any wpan netdev that has an administrator-installed LLSEC key, by issuing an LLSEC_LIST_KEY dump on the legacy IEEE802154_NL generic-netlink family. Introduce IEEE802154_DUMP_PRIV() mirroring IEEE802154_DUMP() but setting .flags = GENL_ADMIN_PERM, and use it for the four LLSEC dump entries. LIST_PHY and LIST_IFACE retain IEEE802154_DUMP() because the modern nl802154 family exposes their equivalents to unprivileged readers by design (NL802154_CMD_GET_WPAN_PHY and NL802154_CMD_GET_INTERFACE carry "can be retrieved by unprivileged users" annotations).
Характеристики атаки
Последствия
Строка CVSS v3.1