
SandboxEscaper, Microsoft bug hunter, který letos v srpnu na Twitteru odhalil Windows privilege escalation bug (CVE-2018–0952), přišel s novou 0day zranitelností současných Windows.
Chyba podobně jako Windows privilege escalation bug využívá faktu, že Windows services zpravidla využívají zvýšená oprávnění, ale občas také musejí provádět akce za uživatele (funkce impersonation). Funguje to tak, že se Windows services v případě, že musí provést nějakou akci za uživatele, přepnou do režimu s jeho oprávněními a po skončení akce se opět přepnou do svého výchozího nastavení.
Podobně jako předchozí bug chyba využívá nezamýšlené použití funkce impersonation (v předchozí chybě šlo o Task Scheduler, nyní se jedná o službu starající se o sdílení dat – Data Sharing Services). Jde o situaci, kdy je funkce impersonace vrácena příliš rychle a Windows services vykonají akci, při které by měly mít uživatelské oprávnění, se svými původními „silnými“ právy. V daném případě takto chyba umožňuje, aby byl jeden soubor přepsán jiným. Uživatel tak může zneužít chybně provedené impersonace k tomu, aby smazal libovolný soubor v systému (včetně souborů, ke kterým nemá přístupová práva).
Not the same bug I posted a while back, this doesn't write garbage to files but actually deletes them.. meaning you can delete application dll's and hope they go look for them in user write-able locations. Or delete stuff used by system services c:\windows\temp and hijack them.
— SandboxEscaper (@SandboxEscaper) October 23, 2018
Zneužití chyby vyžaduje správné načasování – musí dojít ke dvěma akcím současně, aby mohlo dojít k předčasnému ukončení impersonace. Zranitelné jsou tak především stroje s více jádry. Vzhledem k tomu, že zranitelnost využívá Data Sharing Services, které byly představeny teprve ve Windows 10, lze předpokládat, že nebude použitelná na starších verzích operačního systému. Zranitelné nicméně naopak budou také Windows Server 2016 či Windows Server 2019.
https://t.co/1Of8EsOW8z Here's a low quality bug that is a pain to exploit.. still unpatched. I'm done with all this anyway. Probably going to get into problems because of being broke now.. but whatever.
— SandboxEscaper (@SandboxEscaper) October 23, 2018
SandboxEscaper také na GitHubu publikoval proof of concept, který se touto cestou pokouší smazat Windows PCI driver.