
Nalpeiron Licensing Service (NLSSRV32) произвольное чтение диска [CVE-2019-19315]
Служба лицензирования Nalpeiron (NLSSRV32.exe) устанавливается в составе некоторых программных установок для обработки привилегированных операций лицензирования ПО. Она работает в паре с клиентским компонентом (filechck.dll), который взаимодействует со службой через почтовые слоты (отсюда и название).
Вызовы к службе выполняются с использованием пользовательской сериализации, и многие из них включают прямой доступ к томам дисков, подключенным к машине. Я полагаю, что они используются для проверки целостности самой службы и клиентских двоичных файлов. Многие из этих типов вызовов не ограничены для администраторов и поэтому могут быть использованы для чтения (и потенциальной записи) необработанных данных с локальных дисков.
Я не знаю, насколько распространена эта служба. Наиболее заметным примером является Nitro PDF <= v10. Nalpeiron с тех пор перешел на облачную модель лицензирования и, похоже, больше не рекомендует эту модель.
Я реализовал только базовый вызов чтения для доказательства концепции. Однако существуют и другие управляющие коды, которые предоставляют больше функциональности. Это работает с основным диском, когда служба запущена, и читает сектор по сектору (512). Если вы будете достаточно мотивированы, чтение всего диска и восстановление информации о томе NTFS должно быть вполне возможным. Упражнение для читателя, полагаю.
PS C:\> MailOrder.exe c 4096
[+] Requesting sector from c: at offset 4096 ...
[+] Drive data [hex]:
45 46 49 20 50 41 52 54 00 00 01 00 5C 00 00 00 0D 24 5C 77 00 00 00 00 01 00 00 00 00 00 00 00
AF 6D 70 74 00 00 00 00 22 00 00 00 00 00 00 00 8E 6D 70 74 00 00 00 00 96 2F 01 83 CE 70 E7 41
...
Два самых сильных индикатора возможности эксплуатации:
PS C:\> Get-Service nlsX86cc
Status Name DisplayName
------ ---- -----------
Running nlsX86cc Nalpeiron Licensing Service
\\.\mailslot\nlsX86ccMailslotПомимо удаления службы и/или программного обеспечения, для которого она используется, я не знаю о способе смягчения. Основой возможности эксплуатации является слабая ACL (список управления доступом) на почтовом слоте, но я полагаю, что она необходима для правильной связи клиентской стороны.
Я пытался связаться с вендором несколько раз, но не получил ответа. Если кто-то из Nalpeiron желает помочь с деталями/исправлением, пожалуйста, свяжитесь со мной.
CVE-2019-19315 для этой уязвимости