Ative a MFA, use funções RAM em vez de AccessKeys e faça a rotação de credenciais regularmente para evitar acesso não autorizado.
Riscos de segurança
As principais ameaças de segurança a uma conta do Alibaba Cloud incluem ataques de força bruta a senhas e vazamento de credenciais de longo prazo, como AccessKeys e tokens STS. Se um invasor obtiver essas credenciais, poderá se passar por um usuário legítimo para fazer logon, gerenciar recursos ou acessar dados confidenciais. Isso pode causar:
-
Uso não autorizado de recursos, resultando em perdas financeiras diretas.
-
Danos à infraestrutura ou interrupções de serviço que afetam a disponibilidade do negócio.
-
Vazamento ou criptografia de dados confidenciais, levando a riscos de divulgação de informações e ransomware.
-
Instalação de programas maliciosos ou backdoors, representando ameaças de longo prazo à segurança do sistema e à integridade dos dados.
Práticas recomendadas
Proteger senhas da conta e ativar a MFA
-
Defina senhas complexas: senhas fracas são uma das principais causas de violações de conta. Evite senhas fracas para prevenir ataques de força bruta.
-
Altere senhas regularmente: altere sua senha a cada 90 dias para reduzir o risco de vazamento pelo uso prolongado.
-
Ative a MFA: vincule ou desvincule um dispositivo MFA virtual para sua conta do Alibaba Cloud. A MFA adiciona um código de verificação dinâmico, como um token móvel ou uma chave protegida por hardware, como uma camada extra além da autenticação por senha para evitar acesso não autorizado.
Usar funções RAM do ECS em vez de AccessKeys
Se um aplicativo em uma instância ECS precisar chamar APIs do Alibaba Cloud, como para dimensionamento do ECS, use uma função RAM em vez de uma AccessKey.
Criar um usuário RAM e vincular uma função
A conta deve ter a permissão sts:AssumeRole para vincular uma função a uma instância.
Console
-
Crie e autorize um usuário do Resource Access Management (RAM).
-
Vincule uma função RAM a uma instância ECS.
Vincular uma função durante a criação da instância
Ao criar uma instância na página de compra de instâncias, selecione Instance RAM Role em Advanced Options.
Selecione Security Hardening Mode para Metadata Access Mode a fim de evitar o vazamento de tokens STS causado por vulnerabilidades da instância ou erros de configuração. Consulte Acessar metadados da instância usando o modo forçado.
Vincular uma função a uma instância existente
-
Acesse a página ECS console - Instances e selecione a região de destino.
-
Clique no ID da instância para acessar a página de detalhes da instância.
-
Na seção Outras informações, clique em Attach/Detach RAM Role.
-
Selecione a função RAM e clique em OK.
nullUma instância ECS pode ter apenas uma função RAM. Se seu aplicativo precisar de várias permissões, conceda todas a essa única função.
Por exemplo, se uma instância já possui a função
AliyunECSDiskEncryptDefaultRolee também precisa de permissões de gerenciamento de interface de rede, adicione a políticaAliyunECSNetworkInterfaceManagementAccessà função no console RAM. -
API
Use operações de API para vincular e desvincular funções:
-
Vincular uma função durante a criação da instância: ao chamar RunInstances ou CreateInstance, especifique o parâmetro
RamRoleName. -
Vincular uma função a uma instância existente: chame AttachInstanceRamRole.
-
Desvincular uma função: chame DetachInstanceRamRole.
Usar uma função RAM para acessar serviços do Alibaba Cloud a partir de um aplicativo
Um aplicativo em uma instância ECS pode obter um token STS temporário do serviço de metadados da instância e usá-lo para chamar APIs do Alibaba Cloud.
Proteger AccessKeys e reduzir o risco de vazamento
Se precisar usar uma AccessKey, reforce o gerenciamento de segurança ao longo de todo o seu ciclo de vida — criação, armazenamento, distribuição e uso.
-
Criação: siga o princípio de "uma AccessKey por pessoa, uma AccessKey por aplicativo". Não compartilhe uma AccessKey entre vários usuários ou programas. Isso permite identificar rapidamente o responsável, limitar o impacto e fazer a rotação da chave em caso de vazamento.
-
Gerenciamento de permissões: siga o princípio de privilégio mínimo e conceda apenas as permissões necessárias. Use usuários RAM e atribua permissões com base nas responsabilidades. Evite usar a AccessKey da conta do Alibaba Cloud. Consulte Evitar usar sua conta do Alibaba Cloud e conceder permissões diferentes a usuários RAM com diferentes responsabilidades.
-
Armazenamento seguro: armazene AccessKeys em dispositivos confiáveis, como:
-
Um arquivo legível apenas por root ou um usuário específico.
-
Um banco de dados ou Key Management Service (KMS) com controle de acesso.
-
Não armazene AccessKeys em notas, repositórios de código, registros de chat ou assinaturas pessoais.
-
-
Distribuição segura: envie o arquivo de AccessKey criptografado por um canal (como e-mail) e a senha de descriptografia por um canal separado (como mensagem de texto).
-
Uso seguro: não codifique AccessKeys diretamente no código. Armazene a AccessKey em um arquivo de configuração separado, criptografe-o e salve-o em um servidor confiável. Após a distribuição, descriptografe o arquivo e defina as permissões para que apenas o proprietário possa lê-lo.
-
Controle de acesso à rede: configure uma política de controle de acesso à rede para a AccessKey no console RAM.
-
Rotação e limpeza regulares
-
Faça a rotação regularmente: faça a rotação da AccessKey a cada 90 dias. Gere uma nova AccessKey e notifique os usuários para atualização.
-
Faça a limpeza regularmente: verifique os registros de operação da AccessKey no console RAM e revogue chaves não utilizadas. Consulte Excluir a AccessKey de um usuário RAM.
-
-
Monitore o vazamento de AccessKey: use o recurso de detecção de vazamento de AccessKey no Security Center para verificar se uma AccessKey foi vazada. Esse recurso oferece suporte a notificações de alerta. Em caso de vazamento, o Alibaba Cloud fornece proteção restritiva para a AccessKey para evitar o escalonamento.
Conformidade
Verificar se uma instância ECS usa uma AccessKey
Consulte os logs de AccessKey para encontrar os serviços, endereços IP e recursos associados a uma AccessKey.
Pré-requisito: você criou uma trilha do ActionTrail e entregou os logs a um Logstore do SLS.
-
Consultar chamadas de AccessKey iniciadas a partir de um VPC Endpoint:
* | SELECT "event.eventid","event.sourceipaddress", "event.userIdentity.accessKeyId", "event.vpcId" WHERE "event.userIdentity.accessKeyId" LIKE 'LTA%' and "event.vpcId" LIKE 'vpc%'Resultado de exemplo:

Use o
vpcIde osourceipaddresspara identificar a instância ECS que iniciou a chamada. Em seguida, investigue quais programas usam oaccessKeyIdpara chamar a OpenAPI. -
Consultar chamadas de AccessKey iniciadas a partir de um Internet Endpoint:
* | SELECT "event.eventid","event.sourceipaddress", "event.userIdentity.accessKeyId" WHERE "event.userIdentity.accessKeyId" LIKE 'LTA%' and "event.vpcId" IS NULLResultado de exemplo:

Determine se o
sourceipaddressé um endereço IP público de uma instância ECS. Recupere os EIPs e endereços IP públicos de sua conta e verifique se osourceipaddresspertence a você. Se um EIP ou endereço IP público estiver diretamente vinculado a uma instância ECS, você poderá localizar a instância e modificar sua configuração.
Substituir a AccessKey por uma função RAM de instância
Consulte Usar funções RAM do ECS em vez de AccessKeys e Soluções para vazamento de AccessKey.