
Recherche sur CVE-2024-38063 pour vous éviter de le faire.
Une recherche complète pour vous faire gagner du temps, de l'énergie, de la sérénité et de la compréhension. Je tiens à préciser d'emblée que cette CVE est comme beaucoup d'autres : en raison de son score de sévérité élevé, elle a attiré énormément d'attention en très peu de temps, ce qui a entraîné beaucoup de fausses informations et d'activités malveillantes autour d'elle. Le chercheur à l'origine de sa découverte est Wei.
Cela inclut, sans s'y limiter, des PoC basés sur des malwares publiés sur GitHub et conçus pour ressembler à de véritables PoC.
Ainsi, je ne partagerai dans ce dépôt que des PoC valides et non trompeurs afin de faire avancer la recherche et la compréhension.
Comme son nom l'indique, cette vulnérabilité n'affecte que Windows. Si vous utilisez autre chose, cela ne vous concerne pas directement.
Je partagerai également des stratégies d'atténuation pour tous ceux qui souhaitent protéger leurs systèmes contre cette vulnérabilité.
Issue Description:
This is a zero-click, wormable vulnerability in the IPv6 TCP/IP stack of Microsoft Windows enables attackers to remotely execute arbitrary code on affected systems without any user interaction.
Asset Description:
The issue impacts Microsoft Windows versions that support IPv6. It is particularly risky for internet-facing Windows servers and user devices with IPv6 enabled.
Vulnerability Impact:
If successfully exploited, this vulnerability could allow attackers to remotely execute arbitrary code, which might result in a full system compromise, unauthorized data access, and/or exposure of sensitive information.
Exploitation Details:
The flaw is located in the IPv6 TCP/IP component of the Windows networking stack. Attackers can exploit this vulnerability by sending specially crafted IPv6 packets to a target machine, enabling RCE without user interaction.
Patch Availability:
Microsoft has issued a security update for this vulnerability as part of the August 2024 Patch Tuesday.
It is crucial for organizations to apply this update promptly to mitigate risks.
If immediate patching isn’t feasible, disabling IPv6 on affected Windows systems can help reduce the attack surface until the patch is applied.
Désactiver IPv6 uniquement au niveau du pare-feu n'aura aucun effet pour empêcher cette vulnérabilité.
Tenter de reproduire cette vulnérabilité peut être un peu fastidieux au début, et il est juste de dire qu'il s'agit d'une vulnérabilité zero-click dans la pile TCP/IP IPv6 de Microsoft Windows, affectant de nombreuses versions de Windows 10, 11 et Windows Server.
Cette vulnérabilité RCE ne permet pas d'exécuter du shellcode, mais déclenche plutôt un sous-dépassement d'entier (integer underflow) qui entraîne une corruption de mémoire à distance. Cela perturberait efficacement les services sur l'appareil vulnérable. Les preuves de concept authentiques présentées en ligne, comme celles de Marcus Hutchins (@MalwareTech) et de ynwarcs, suggèrent que cela pourrait finir par être utilisé dans la nature comme une sorte de vulnérabilité de déni de service (DoS) au cours des semaines et des mois à venir.
Cependant, le PoC mentionné ci-dessus présente un défaut : il n'est pas nécessaire d'envoyer autant de paquets que ce qu'il envoie pour obtenir le résultat escompté. Certains ont proposé d'utiliser seulement deux paquets pour obtenir le résultat attendu, mais cette implémentation n'est pas toujours fiable. Lors de mes tests avec une machine Windows réelle et non corrigée, sur une fenêtre de 60 secondes, il faut au minimum environ 25 paquets pour obtenir systématiquement le résultat attendu. C'est néanmoins nettement moins que la conception d'origine, ce qui constitue une amélioration. Comme cela augmente toujours de manière exponentielle l'espace mémoire à fusionner, provoquant la corruption de mémoire dans le noyau, les utilisateurs finaux voient un écran bleu.
Si vous n'êtes pas en mesure de mettre à jour vos systèmes avec les derniers correctifs pour quelque raison que ce soit, votre meilleure option serait alors de désactiver IPv6 sur toutes les interfaces réseau afin de limiter considérablement la surface d'attaque de cet exploit. Toutefois, ne l'utilisez pas comme solution à long terme, car cela pourrait potentiellement casser la fonctionnalité de votre système.
Vous devrez exécuter ce script PowerShell en tant qu'administrateur et l'enregistrer sous script.ps1 :
# Check if the script is running with admin privileges
If (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole] "Administrator")) {
# Restart script with admin privileges
$arguments = "& '" + $myInvocation.MyCommand.Definition + "'"
Start-Process powershell.exe -ArgumentList $arguments -Verb RunAs
Exit
}
# Disable IPv6 on all network interfaces
Get-NetAdapterBinding -ComponentID ms_tcpip6 | Where-Object {$_.Enabled -eq $true} | ForEach-Object {
Disable-NetAdapterBinding -Name $_.Name -ComponentID ms_tcpip6
}
# Optional: Confirm that IPv6 has been disabled
Write-Host "IPv6 has been disabled on all network interfaces."
Je mettrai à jour ce dépôt GitHub au cours des prochaines semaines avec davantage de recherches, de mises à jour et d'autres options d'atténuation valides.