FERM

Threat Response: Vulnerabilities Intel CPU & Microsoft Remote Desktop Services (RDS)

Northwave
- 21 May 2019

This is a TLP: WHITE message
https://www.us-cert.gov/tlp
English follows Dutch

Dinsdag 14 mei jl. zijn er meerdere kwetsbaarheden in de meeste moderne Intel CPUs bekendgemaakt. Daarnaast is er een kwetsbaarheid aangetroffen in Microsoft Remote Desktop Services (RDS), waar we onder 'Deel II' aandacht aan besteden.

Intel CPU

Het gaat om de volgende kwetsbaarheden:

  • RIDL - Rogue In Flight Data Load - ontdekt door wetenschappers van de VU [1].
  • Fallout - ontdekt door samenwerkende wetenschappers van verscheidene universiteiten, onder andere van KU Leuven [2].
  • ZombieLoad - ontdekt door wetenschappers van de TU Graz [3].

Deze kwetsbaarheden werken allen op vergelijkbare manieren. Intel vat ze samen onder de noemer Microarchitectural Data Sampling of MDS.

Beschrijving

Het gaat hier om zogeheten side-channel attacks, vergelijkbaar met de bekende SPECTRE en MELTDOWN-kwetsbaarheden van 2018. Een side-channel attack houdt in dat processen op een computer informatie uit het geheugen of de CPU kunnen uitlezen door operaties te timen en te controleren op kleine discrepanties. Deze informatie kan dus niet rechtstreeks uitgelezen worden. Enkele voorbeelden van mogelijke discrepanties waarop gelet wordt: stroomverbruik, executietijden en in sommige gevallen zelfs geluidsgolven.

Bij de huidige set MDS-kwetsbaarheden wordt speculatieve executie misbruikt om informatie uit te lezen waar een proces geen toegang toe zou moeten hebben. Speculatieve executie is een door Intel gebruikte techniek om, voordat een proces bepaalde data nodig heeft, deze data alvast te laden in snel beschikbare buffers. Als deze data toch niet nodig blijkt, wordt de buffer weer overschreven. Deze voorgeladen data is sneller te lezen dan data die nog niet voorgeladen is. Dit verschil in snelheid is door kwaadwillenden te misbruiken om de inhoud van deze buffers te raden. In tegenstelling tot SPECTRE en MELTDOWN kunnen deze vulnerabilities over zogehetensecurity boundaries heen. Dat wil zeggen dat bijvoorbeeld in een situatie met meerdere virtual machines, de ene virtual machine potentieel bij informatie van de andere virtual machine kan, mits deze op dezelfde processor draaien.

Eventuele aanvallers hebben geen controle over wat er zich in deze buffers bevindt. Ze moeten gebruik maken van sampling; er moeten vele metingen gedaan worden voordat er bruikbare informatie is. Een voorbeeld dat door de onderzoekers is gegeven is het uitlezen van het (versleutelde) wachtwoord van een gebruiker; dit duurde ongeveer 24 uur. Hierbij was het nodig om het betreffende systeem constant het passwd-commando te laten draaien, zodat er een grote waarschijnlijkheid was dat de inhoud van het betreffende bestand in een van de buffers te vinden was.

Voor deze aanval is het nodig dat er code uitgevoerd kan worden op dezelfde processor als waarvan het beoogde slachtoffer gebruik maakt. Dit kan bijvoorbeeld gebeuren door JavaScript uit te voeren in de browser, maar kan ook bij shared hosting situaties van toepassing zijn.

De volgende CVEs zijn uitgegeven voor deze kwetsbaarheden:

  • CVE-2018-12126: Microarchitectural Store Buffer Data Sampling (MSBDS) - CVSS score 6.5: Medium, Fallout
  • CVE-2018-12127: Microarchitectural Load Port Data Sampling (MLPDS) - CVSS score 6.5: Medium,  RIDL
  • CVE-2018-12130: Microarchitectural Fill Buffer Data Sampling (MFBDS) - CVSS score 6.5: Medium, RIDL en ZombieLoad
  • CVE-2019-11091: Microarchitectural Data Sampling Uncacheable Memory (MDSUM) - CVSS score 3.8: Low, RIDL

Northwave acht de ernstigheid van deze kwetsbaarheden op medium. Hoewel de potentiële impact hoog is, is het daadwerkelijk succesvol uitvoeren van deze aanval complex. Aanvullend zijn patches en mitigaties reeds beschikbaar. Voor een lijst van getroffen CPUs verwijzen we naar Intel: [4] en [5].

Mitigatie

Intel heeft in samenwerking met leveranciers als Microsoft, Apple en VMWare patches uitgebracht voor deze kwetsbaarheden. Northwave raadt aan deze patches te installeren. Daarnaast raden de onderzoekers aan om Simultaneous MultiThreading (SMT) - ook bekend als HyperThreading - uit te schakelen. Dit laatste brengt wel een (mogelijk significante) performance-daling met zich mee. Maak een goede afweging van deze performanceimpact alvorens ook SMT uit te schakelen.
Een overzicht van de informatie zoals uitgebracht door Intel en overige leveranciers:

Bronnen

[1]: RIDL paper: https://mdsattacks.com/files/ridl.pdf
[2] Fallout paper: https://mdsattacks.com/files/fallout.pdf
[3] ZombieLoad paper: https://zombieloadattack.com/zombieload.pdf
[4] Intel security advisory: https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00233.html
[5] List of impacted CPUs: https://www.intel.com/content/dam/www/public/us/en/documents/corporate-information/SA00233-microcode-update-guidance_05132019.pdf
 

Deel II: Microsoft Remote Desktop Services

Op dinsdag 14 mei j. is er informatie over een nieuwe kwetsbaarheid in Microsoft Remote Desktop Services (RDS) bekend geworden. Het gaat om een kwetsbaarheid die remote code execution zonder gebruikersinteractie mogelijk maakt op een systeem dat RDS aanbiedt. Deze kwetsbaarheid heeft CVE-2019-0708 toegewezen gekregen.

Beschrijving

De kwetsbaarheid is ontdekt in het onderdeel van RDS dat de binnenkomende connectieverzoeken van het Remote Desktop Protocol afhandelt. Hierdoor is het voor een aanvaller mogelijk om, voordat er authenticatie plaatsvindt, middels een gemanipuleerd pakket toegang te krijgen tot het doelsysteem. De gevonden kwetsbaarheid maakt het voor een aanvaller mogelijk om op afstand code uit te voeren op het doelsysteem. Bij succesvolle exploitatie van de kwetsbaarheid is er geen gebruikersinteractie vereist en heeft de aanvaller de vrijheid om wijzigingen op het doelsysteem aan te brengen met volledige gebruikersrechten.

Het uitvoeren van een aanval op deze kwetsbaarheid kan worden gedaan door een aanvaller die in staat is om via het netwerk naar de RDS-service te verbinden. Door een specifiek verzoek te sturen, kan de aanvaller pogen misbruik te maken van de manier waarop de RDS-service binnenkomende RDP-verzoeken afhandelt. Microsoft heeft verder aangegeven de kwetsbaarheid als ‘wormable’ te beschouwen. Dit houdt in dat malware die misbruik weet te maken van de genoemde kwetsbaarheid, zich op geautomatiseerde wijze van systeem naar systeem kan verspreiden.

De volgende CVE is uitgegeven voor de bovengenoemde kwetsbaarheid:
CVE-2019-0708
Remote Desktop Services Remote Code Execution Vulnerability
CVSS base score: 9.8 (kritiek)
Vector string: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C

Risico

Op het moment van schrijven zijn er, volgens Microsoft, geen aanwijzingen dat deze kwetsbaarheid actief wordt misbruikt. De exacte details van de kwetsbaarheid zijn ook nog niet vrijgegeven. Northwave acht de ernst van deze kwetsbaarheid gemiddeld. De potentiële impact is hoog, echter zijn er momenteel geen actieve exploits bekend. Derhalve kunnen we geen inschatting doen van de kans van dergelijke aanvallen.

We raden u aan om te controleren er kwetsbare versies van Microsoft Windows aanwezig zijn in uw organisatie. Onderstaande lijst bevat de versies die zijn getroffen door deze kwetsbaarheid:

  • Windows XP (buiten actieve support)
  • Windows Server 2003 (buiten actieve support)
  • Windows Vista (buiten actieve support)
  • Windows 7
  • Windows Server 2008
  • Windows Server 2008 R2

Nieuwere versies van het Microsoft Windows besturingssysteem zoals Windows 8, Windows 10 en Windows Server 2012 of nieuwer zijn niet getroffen door de genoemde kwetsbaarheid.

Mitigatie

Microsoft heeft inmiddels patches uitgebracht voor de kwetsbare Windows versies. Deze patch is meegenomen in de maandelijkse security rollup en is ook als losse security patch beschikbaar. Voor systemen voorzien van Windows 7 of nieuwer wordt de patch automatisch beschikbaar gesteld via Windows Update. [1] Voor versies van het besturingssysteem die buiten de actieve support vanuit Microsoft vallen maar wel getroffen zijn, heeft Microsoft een update met nummer KB4500331 uitgebracht. [2]

Northwave adviseert om de beschikbaar gekomen updates zo snel mogelijk te installeren, ook als kwetsbare systemen niet direct vanaf het internet benaderbaar zijn. Naast het bijwerken van de software adviseert Northwave om de directe toegang tot Remote Desktop Services zoveel mogelijk af te schermen door middel van een firewall en om RDP uit te schakelen op machines waar er geen gebruik wordt gemaakt van dit protocol. Op deze manier kan het potentiële aanvalsoppervlak worden verkleind.

Voor systemen waarvoor de inschakeling van Remote Desktop Services noodzakelijk is, wordt sterk aangeraden om, naast het installeren van de uitgebrachte patches, Network Level Authentication (NLA) in te schakelen [3]. Deze maatregel zorgt ervoor dat er eerst gebruikersauthenticatie plaats dient te vinden, alvorens er een verbinding met het doelsysteem tot stand kan worden gebracht.

Bronnen

[1] Een overzicht van de beschikbare patches voor versies die onder actieve support vallen, zijn beschikbaar via de volgende pagina: https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-0708
[2]: Voor Windows XP en Windows Server 2003 zijn er aparte downloads beschikbaar gesteld op de volgende pagina: https://support.microsoft.com/en-us/help/4500705/customer-guidance-for-cve-2019-0708
[3]: Voor meer informatie over het inschakelen van NLA verwijzen wij naar de supportpagina van Microsoft op https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc732713(v=ws.11)

 

------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ENGLISH

Dear reader,

This message consists of two parts; an additional vulnerability was found in Microsoft Remote Desktop Services which we will address below (‘Part II’).

Tuesday, 14th of May 2019 a number of new Intel CPU vulnerabilities were published. This regards three items:

  • RIDL - Rogue In Flight Data Load - discovered by researchers of the VU [1].
  • Fallout - discovered by a team of researchers from multiple universities, amongst others the KU Leuven [2].
  • ZombieLoad - discovered by researchers of Graz [3].

These vulnerabilities all work in similar ways. Intel has summarized them as Microarchitectural Data Sampling, or MDS. Most modern Intel CPUs are vulnerable.

Description

These vulnerabilities concern so-called side-channel attacks, similar to the SPECTRE and MELTDOWN vulnerabilities of 2018. A side-channel attack is an attack where processes running on a computer can read or infer information from the CPU or the memory, by timing operations and checking for minor discrepancies. This information cannot be directly accessed. Some possible discrepancies that could be monitored are power consumption, execution times and in some cases even sound waves.

For the current set of MDS vulnerabilities, speculative execution is abused to read information that a process should not be able to read. Speculative execution is a technique used by Intel to preload data into buffers, before a process actually asked for it. The processor speculates what information might be requested. If this data is not requested after all, the buffer will be cleared and the actual information requested will be loaed instead. Because this data is faster to read than information that has not been preloaded, attackers can use timing differences to guess the contents of the buffers. In contrast to the SPECTRE and MELTDOWN vulnerabilities, these new vulnerabilities can cross so-called security boundaries. This means that in - for example - a situation with multiple virtual machines, one virtual machine can read information from another virtual machine, as long as they run on the same processor.

Attackers do not have control of what is in these buffers. They have to make use ofsampling; many measurements must be taken before enough useful information is gained. An example that has been given by research is to read the encrypted password of a user; this took about 24 hours. This was while the targeted system was made to run the passwd command over and over again, so the possibility that a buffer contained information from the password shadow file was high enough.

In order for this attack to work, the attackers need to be able to execute code on the same processor as the intended victim. This can be done by e.g. running JavaScript in the browser of an intended victim, but this is also something that can occur when making use of shared hosting.

The following CVEs have been published, related to these vulnerabilities:

  • CVE-2018-12126: Microarchitectural Store Buffer Data Sampling (MSBDS) - CVSS score 6.5: Medium, Fallout
  • CVE-2018-12127: Microarchitectural Load Port Data Sampling (MLPDS) - CVSS score 6.5: Medium,  RIDL
  • CVE-2018-12130: Microarchitectural Fill Buffer Data Sampling (MFBDS) - CVSS score 6.5: Medium, RIDL en ZombieLoad
  • CVE-2019-11091: Microarchitectural Data Sampling Uncacheable Memory (MDSUM) - CVSS score 3.8: Low, RIDL

 

Northwave assesses the severity of these vulnerabilites as medium. Although the potential impact is quite high, the attack itself is complex to perform. Patches and mitigations are already available. For a list of impacted CPUs, please refer to Intel: [4] en [5].

Mitigation

Intel has, in collaboration with vendors like Microsoft, Apple and VMWare, supplied patches for these vulnerabilities. Northwave advises to install these patches. Additionally, the researchers recommend to disable Simultaneous MultiThreading (SMT), which is also known as HyperThreading. However, this will result in a performance penalty for these processors. It is important to make a proper assessment of this performance penalty before additionally disabling SMT.

An overview of information as supplied by various vendors:

 

Sources

[1]: RIDL paper: https://mdsattacks.com/files/ridl.pdf
[2] Fallout paper: https://mdsattacks.com/files/fallout.pdf
[3] ZombieLoad paper: https://zombieloadattack.com/zombieload.pdf
[4] Intel security advisory: https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00233.html
[5] List of impacted CPUs: https://www.intel.com/content/dam/www/public/us/en/documents/corporate-information/SA00233-microcode-update-guidance_05132019.pdf

 

Part II: Microsoft Remote Desktop Services

Last Tuesday, 14th of May, information regarding a new vulnerability in Microsoft Remote Desktop Services (RDS) was published. This concerns a vulnerability that allows an attacker to perform remote code execution (RCE) without user interaction on a system that offers RDS. This vulnerability was assigned the number CVE-2019-0708.

Description

The vulnerability was discovered in a component of RDS that is responsible for handling incoming Remote Desktop Protocol (RDP) connections. This makes it possible for an attacker to gain access to the target system by sending specially crafted requests to the target, even before authentication has been performed. If successfully exploited, this vulnerability allows an attacker to execute code remotely on the target system. No user interaction is required, and the attacker gains access to the target system with full user rights, allowing them to perform actions and make changes.

An attack on this vulnerability can be attempted by an attacker who is able to connect to the RDS service via the network. By sending a specially crafted request, the attacker can attempt to abuse the way in which the RDS service handles incoming RDP requests. Microsoft considers this exploit to be ‘wormable’. This means that a given malware that is able to exploit this vulnerability, is able to spread itself from system to system automatically.

The following CVE details have been assigned to this vulnerability:
CVE-2019-0708; Remote Desktop Services Remote Code Execution Vulnerability
CVSS base score: 9.8 (critical)
Vector string: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C

Risk

Microsoft has indicated that, at the time of writing, no indications of active exploiting attempts have been observed. The exact details of this vulnerability have not yet been disclosed. Northwave assesses the severity of this vulnerability as medium. The potential impact is high, but currently no active exploits are known to Northwave. Therefore, we cannot estimate the likeliness of such exploit attempts.

We recommend verifying if vulnerable versions of Microsoft Windows are present within your organization. The list below contains the versions that are affected by this vulnerability:

  • Windows XP (outside active support)
  • Windows Server 2003 (outside active support)
  • Windows Vista (outside active support)
  • Windows 7
  • Windows Server 2008
  • Windows Server 2008 R2

 

More recent versions of the Microsoft Windows operating system, including Windows 8, Windows 10 and Windows Server 2012 or newer versions are not affected by this vulnerability.

Mitigation

Microsoft has released patches for the vulnerable versions of Microsoft Windows. This patch is included in the monthly security rollup of May 2019 and is available for download as a separate security patch. Systems that are running Windows 7 or newer will receive the patch automatically through Windows Update. [1] The affected versions of Windows include versions that are not actively supported anymore. However, Microsoft has released security updates for Windows Server 2003 and Windows XP as well under number KB4500331. [2]

Northwave advises to install the published updates as soon as possible, even when vulnerable systems are not directly connected to the internet. Besides updating the software, Northwave recommends restricting direct access to Remote Desktop Services as much as possible using a firewall and disabling the RDS service on systems where the function is not used. This reduces the potential attack surface. For systems that require Remote Desktop Services to be enabled, it is strongly recommended, besides updating the software, to enable Network Level Authentication (NLA) [3]. This is a mitigating action that will enforce successful user authentication before a connection to the target system can be established.

Sources

[1] An overview of the available patches for Windows versions that are currently supported can be found on the following page: https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-0708
[2]: Separate downloads have been made available for Windows XP and Windows Server 2003 on the following page: https://support.microsoft.com/en-us/help/4500705/customer-guidance-for-cve-2019-0708
[3]: For more information regarding enabling NLA, please refer to the following Microsoft support page: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc732713(v=ws.11)