
Prova de conceito de exploit para uma vulnerabilidade de escalonamento local de privilégios na tarefa agendada do Windows Recall, demonstrando exclusão arbitrária de pastas como SYSTEM por meio de link simbólico.
Este é um PoC para a vulnerabilidade de escalada local de privilégios na tarefa agendada \Microsoft\Windows\WindowsAI\Recall\PolicyConfiguration.
Quando esta tarefa agendada é iniciada, o processo taskhostw.exe tenta abrir o diretório C:\Users\%username%\AppData\Local\CoreAIPlatform.00\UKP e procurar por diretórios usando o seguinte filtro: {????????-????-????-????-????????????}. Se esse diretório for encontrado, ele será excluído sem verificar links simbólicos.
Como um usuário de baixo privilégio pode, por padrão, criar diretórios em sua própria pasta %LOCALAPPDATA%, isso leva à exclusão arbitrária de pastas no contexto do usuário NT AUTHORITY\SYSTEM.
A tarefa agendada está configurada com vários gatilhos que podem ser usados para iniciá-la.
<Triggers>
<WnfStateChangeTrigger id="RecallPolicyCheckUpdateTrigger">
<Enabled>true</Enabled>
<StateName>7508BCA32C079E41</StateName>
</WnfStateChangeTrigger>
<WnfStateChangeTrigger id="AADStatusChangeTrigger">
<Enabled>true</Enabled>
<StateName>7508BCA32C0F8241</StateName>
</WnfStateChangeTrigger>
<WnfStateChangeTrigger id="DisableAIDataAnalysisTrigger">
<Enabled>true</Enabled>
<StateName>7528BCA32C079E41</StateName>
</WnfStateChangeTrigger>
<WnfStateChangeTrigger id="UserLoginTrigger">
<Enabled>true</Enabled>
<StateName>7510BCA338038113</StateName>
</WnfStateChangeTrigger>
<SessionStateChangeTrigger id="SessionUnlockTrigger">
<Enabled>true</Enabled>
<StateChange>SessionUnlock</StateChange>
</SessionStateChangeTrigger>
</Triggers>
Este PoC utiliza o WnfStateChangeTrigger RecallPolicyCheckUpdateTrigger para iniciar a tarefa agendada.
