Ignorar o UAC usando a Área de Trabalho Remota para conectar-se ao host local?

1

Posso usar a Área de trabalho remota (RDP) para conectar-me ao computador B do computador A sem digitar minha senha e vice-versa, porque uso a mesma conta nesses dois computadores. Além disso, em uma sessão da área de trabalho remota, posso clicar nos botões de prompt do UAC no computador remoto.

O que impede o malware de ignorar o UAC usando o RDP para conectar-se a um computador remoto, use-o para o RDP de volta (ou apenas use o RDP para conectar-se a localhost) e clique no yesbotão UAC ?

O malware pode implementar facilmente o próprio protocolo RDP ou apenas iniciar uma sessão RDP e mover o cursor do mouse na sessão RDP.

zzh1996
fonte
Primeiro, o malware precisa ser executado e, em seguida, ele precisa conhecer realmente um computador no qual ele pode fazer o RDP e, em seguida, ele precisa saber como fazer o RDP de volta. É improvável que essas situações ocorram, que as chances são pequenas de que nenhum malware utilize isso. Você não pode fazer o RDP para si mesmo, portanto é mais provável que não exista uma situação explorável por malware genérico para fazer isso.
precisa saber é o seguinte
Além disso, o único motivo pelo qual você pode se conectar remotamente em outro computador é porque você digitou seu nome de usuário e senha e clicou em salvar credenciais; quando você faz o RDP em um computador remoto, o host fica bloqueado; portanto, um loopback, como você sugeriu, não é até possível.
LPChip
@LPChip É possível RDP localhostligar em 1) Computadores que suportam várias sessões RDP simultâneas (por exemplo, edições de servidor) e 2) Se a Restrict each user to a single sessionpolítica estiver definida como "Não". Mesmo que essa política seja definida como Sim, ainda é possível desde que você use uma conta de usuário diferente, o que seria viável para um usuário com direitos de administrador na máquina remota, como o OP obviamente tem, pois os botões do UAC remoto são Sim / Não.
Twisty Imitador de

Respostas:

1

Você está fazendo a pergunta errada

Lembre-se de que o UAC ajuda a proteger contra códigos maliciosos, dando a um usuário com direitos administrativos a opção de negar que um processo (potencialmente malicioso) inicie a execução na máquina local.

Dito isso, em termos simples, seu cenário de exemplo descreve malware em um computador que utiliza o RDP para ignorar o UAC e iniciar um ataque contra o computador local. Para que esse ataque funcione, o malware já deve estar em execução no computador, tornando os esforços para contornar o UAC completamente inúteis.

Portanto, a pergunta correta a ser feita é como o processo malicioso foi capaz de ignorar o UAC no Computador A em primeiro lugar.

E o Computador B?

Embora não seja a consulta direta da sua postagem, seu cenário pode funcionar em um ataque ao Computador B. Permitindo que o Computador A já esteja comprometido, é possível que um programa malicioso inicie uma sessão RDP e envie movimentos do mouse ou pressionamentos de teclas para o Computador B, incluindo aqueles necessário ignorar o UAC.

Mas isso também não é uma vulnerabilidade de segurança legítima.

Primeiro, o seguinte não é um comportamento padrão no Windows:

Posso usar o RDP (área de trabalho remota) para conectar ao computador B do computador A sem digitar minha senha.

Isso só é possível se você tiver:

  1. Credenciais salvas para o computador remoto (que são armazenadas no Credentials Manager) ou
  2. A política de grupo Permitir Delegação de Credenciais Padrão foi configurada.

Nenhum deles está presente em uma configuração padrão. Vou me referir a ambos como "salvou suas credenciais".

Portanto, a conexão RDP ao Computador B pelo malware só é possível se você tiver salvo suas credenciais no Computador A. Como qualquer código em execução no contexto da sua conta no Computador A pode acessar as credenciais salvas, o ato de salvá-las é o equivalente a declarar: "Confio explicitamente em qualquer código atual ou futuro em execução no contexto da minha conta de usuário, incluindo malware".

Ao salvar as credenciais de acesso do Computador B no Computador A, você desativa o mecanismo de controle de acesso destinado a controlar o acesso ao Computador B (pelo menos no Computador A). O código que aproveita esse fato não está explorando uma vulnerabilidade no nível do sistema operacional, mas sim uma criada pelo usuário.

Imitador Twisty
fonte
Você perdeu um ponto aqui. Atualmente, o malware é executado sem privilégios de administrador POR CAUSA do UAC e tenta induzir um usuário a obter permissões de administrador, mas existe um malware que nunca usa direitos de administrador e é muito limitado no que pode fazer. Geralmente, eles tentam ver o que tem acesso e coletar dados e enviá-los para um servidor offshore.
LPChip
Como a questão é contornar o UAC, como eu perdi o ponto do malware que não precisa de direitos de administrador? Ou estou entendendo mal que ponto você diz que eu perdi?
Twisty Imitador de
Se eu salvei credenciais de B em A e credenciais de A em B (acho que esse cenário não é raro para pessoas que têm dois computadores), o malware em execução em A sem privilégio de administrador pode usar o RDP para funcionar como administrador. Isso está correto?
zzh1996
Você escreve: "Para que esse ataque funcione, o malware já deve estar em execução no computador, tornando os esforços para contornar o UAC completamente inúteis". mas o malware pode estar em execução no computador, abusando da exploração de um navegador, mas não está sendo executado como administrador e pode tentar truques para obter acesso de administrador, e é disso que se trata.
LPChip
@LPChip Ah, sim, eu entendo agora. Portanto, não o enquadrei explicitamente nesses termos, mas abordo isso na segunda parte da minha resposta. O ataque que você descreve depende de o usuário salvar suas credenciais, o que de fato cria uma "vulnerabilidade", mas ainda é uma vulnerabilidade criada pelo usuário .
Twisty Imitador de