Peleg Hadar of SaveBreach Labs has posted about the vulnerability he found in Intel's Rapid Storage Technology Service (CVE-2019-14568). Intel has released a patch for the bug, and credits Hadar for its discovery in the security advisory that accompanies it.
Intel Rapid Storage Technology (RST) is a Windows-based application providing "improved performance and reliability for systems equipped with SATA disks for desktop, mobile, and server platforms." It is widely used with Intel chipsets.
Hadar first notified Intel about the situation in July of this year. He had noticed that when it was started up "IAStorDataMgrSvc.exe" tried to load 4 DLL files that were not present into its own directory. Once the service had been loaded, it would load Intel's ISDI2.dll library (Intel Storage Driver Interface Dynamic Library). That library will use "LoadLibraryA" in two places in order to load the DLL files.
He further noted that the procedure would actually load, if it was found, only one of the "Ioctl.dll" files that it was looking for. Once it loaded one of them successfully it would not try to load any of the rest.
He says that, "The root cause of this vulnerability is that no signature validation is made against the DLL files which the service tries to load (i.e., calling the WinVerifyTrust function)." The upshot of this is an attacker can implant arbitrary DLL files and the service will load them.
Because it will load the implant without any questions, the service will load the same malicious code each time it is restarted. This gives persistence to any DLL-based attack.
Now, there is still a bar to using this attack vector. Notice how Intel states what the problem is as, "Improper permissions in the executable for Intel(R) RST before version 184.108.40.2066 may allow an authenticated user to potentially enable escalation of privilege via local access."
You need to be an authenticated user with local access before this attack can be carried out. In fact, Hadar says that," Note: In order to exploit this vulnerability the attacker needs to have Administrator privileges." Perhaps he is considering that the attacker needs to implant the DLL into the correct directory.
In any case, this was assigned a medium vulnerability score in the CVE.
The release of the mitigation by Intel was almost held up for an additional month, according to Hadar. The timeline he posted says:
"Dec 4th, 2019 - Intel asked to delay the public disclosure until January 14th, 2020 in order to allow their business partners sufficient time to integrate the fix into their products.
Dec 10th, 2019 - Intel informed us that they managed to work out mitigation details with the business partner that had requested delay of the disclosure to January. As a result, their advisory was published December 10th, 2019."
Sometimes, things do work out.
— Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek.