Riscos e recomendações de segurança de API

1 de setembro de 2020 | Blog Riscos e recomendações de segurança de API


ameaça à segurança da API

Especialistas alertam profissionais de segurança sobre a próxima grande ameaça ao mundo cibernético: ataques a interfaces de programação de aplicativos (APIs) . As APIs funcionam para melhorar o desempenho dos sistemas, integrando serviços de outros sites aos seus próprios. APIs populares incluem Google Maps, YouTube e Twitter, permitindo que criadores de sites incorporem mapas, vídeos do YouTube ou tweets em suas páginas. Com o crescimento dessas ferramentas, hackers encontraram maneiras de explorá-las para cometer fraudes e roubar dados.

Dez principais riscos da API OWASP

À medida que os hackers voltam sua atenção para o hacking de APIs, eles representam um risco para as empresas que os utilizam em seus sites. Nossos amigos confiáveis da OWASP codificaram os principais riscos de segurança envolvidos com APIs:

  1. Autorização de nível de objeto quebrado. O único propósito de uma API é fornecer acesso remoto aos dados. Em algumas APIs, as permissões de acesso devem ser definidas para impedir que um usuário acesse os dados de outro. Isso é feito por meio da Autorização em Nível de Objeto. Certifique-se de que suas APIs restrinjam o acesso aos usuários apropriados para reduzir esse risco. Por exemplo, uma API simples de e-commerce pode listar as vendas da sua loja. A Autorização em Nível de Objeto, quando feita corretamente, impede que outros proprietários de lojas consultem as vendas da sua loja. 
  2. Autenticação de usuário quebrada. Os mecanismos de autenticação são frequentemente implementados incorretamente, permitindo que os invasores comprometam tokens de autenticação ou explorem falhas de implementação para assumir a identidade de outros usuários temporária ou permanentemente. Comprometer a capacidade de um sistema de identificar o cliente/usuário compromete a segurança geral da API.
  3. Exposição excessiva de dados. Desenvolvedores frequentemente expõem conjuntos de dados de API involuntariamente. Utilize o princípio do privilégio mínimo para reduzir a chance de exposição de dados confidenciais. Em nosso exemplo de e-commerce, permita que a loja A acesse apenas os dados da loja A e que a loja B acesse apenas os dados da loja B. 
  4. Falta de restrições de consulta e limitação de taxa. As APIs não impõem nenhuma restrição quanto ao tamanho ou número de recursos que podem ser solicitados pelo cliente/usuário. Isso não só pode impactar o desempenho do servidor da API, como também Negação de Serviço (DoS), mas também permite ataques de autenticação, como um ataque de força bruta sobre credenciais. 
  5. Autorização de nível de função quebrada. Políticas complexas de controle de acesso com diferentes grupos e funções, além da falha em separar corretamente as funções administrativas e regulares. Esses erros de API são falhas de autorização. Ao explorar esses problemas, invasores obtêm acesso aos recursos e/ou funções administrativas de outros usuários.
  6. Atribuição em massa. As APIs, por definição, expõem as funções subjacentes de acesso a dados aos usuários. As APIs devem restringir todas as solicitações de dados a um conjunto específico de chamadas de função. Isso reduz o risco de modificação ou acesso inadequado a objetos simplesmente adivinhando propriedades do objeto, explorando outros endpoints da API, lendo a documentação ou fornecendo propriedades adicionais do objeto em payloads de solicitação.
  7. Configuração incorreta de segurança. A configuração incorreta de segurança geralmente é resultado de configurações padrão inseguras, incompletas ou ad hoc, armazenamento em nuvem aberta, cabeçalhos HTTP mal configurados, métodos HTTP desnecessários, Compartilhamento de Recursos entre Origens (CORS) permissivo e mensagens de erro detalhadas contendo informações confidenciais. Por exemplo, uma falha de login na web não deve revelar se o nome de usuário está presente no site.
  8. Injeção. Falhas de injeção, como SQL, NoSQL, injeção de comando, etc., ocorrem quando dados não confiáveis ​​são enviados a um interpretador como parte de um comando ou consulta. Os dados maliciosos do invasor podem induzir o intérprete a executar comandos não intencionais ou acessar dados sem a devida autorização.
  9. Gestão inadequada de ativos. As APIs tendem a expor mais endpoints do que os aplicativos web tradicionais, o que torna a documentação adequada e atualizada extremamente importante. Uma documentação robusta de todas as implantações e versões de API resulta em inventários válidos. Quando bugs ou vulnerabilidades são encontrados em sua API e corrigidos, seu inventário ajuda a garantir que tudo esteja sempre atualizado. 
  10. Registro e monitoramento insuficientes. Registros e monitoramento insuficientes, somados à integração ausente ou ineficaz com a resposta a incidentes, levam a muitos problemas. Isso permite que invasores explorem sistemas, configurem e mantenham persistência, ataquem mais sistemas e extraiam ou destruam dados. A maioria dos estudos sobre violações demonstra que o tempo para detectar uma violação é superior a 200 dias, normalmente detectados por partes externas em vez de processos ou monitoramento internos.

Requisitos de segurança

Com o aumento da adoção de APIs, aumentam também os ataques de hackers direcionados a essas APIs. Especialistas recomendam que designers e desenvolvedores adotem os seguintes requisitos de segurança ao lidar com aplicativos que envolvem APIs: 

Visibilidade

Conhecimento é poder é apropriado quando se trata de visibilidade de APIs. Desenvolvedores e usuários de aplicativos precisam saber quais APIs estão sendo publicadas, como e quando são atualizadas, quem as acessa e como elas são acessadas. Entender o escopo do uso de APIs é o primeiro passo para protegê-las.

O controle de acesso

O acesso à API costuma ser controlado de forma pouco rigorosa, levando a uma exposição indesejada. Garantir que o conjunto correto de usuários tenha as permissões de acesso apropriadas para cada API é um requisito de segurança crítico que deve ser coordenado com os sistemas de Gerenciamento de Identidade e Acesso (IAM).

Mitigação de bot

Em alguns ambientes, até 90% do tráfego de aplicativos (login/cadastro de conta, finalização de compra no carrinho de compras) é gerado por bots automatizados. Compreender e gerenciar perfis de tráfego, incluindo a diferenciação entre bots bons e ruins, é necessário para prevenir ataques automatizados sem bloquear o tráfego legítimo. Medidas complementares eficazes incluem a implementação de políticas de listas de permissões, listas de bloqueios, limitação de taxas, CAPTCHA, bem como geofencing específico para casos de uso e endpoints de API correspondentes.

Prevenção de exploração de vulnerabilidades

As APIs simplificam os processos de ataque, eliminando o formulário web ou o aplicativo móvel, permitindo que um invasor explore uma vulnerabilidade específica com mais facilidade. Proteger os endpoints da API contra abusos de lógica de negócios e outras explorações de vulnerabilidades é um requisito fundamental para a mitigação da segurança da API.

Prevenção de perda de dados

Prevenir a perda de dados em APIs expostas para usuários com privilégios apropriados ou de outra forma, seja devido a erros de programação ou lacunas no controle de segurança, também é um requisito crítico de segurança. Muitos ataques de API são projetados especificamente para obter acesso a dados críticos disponibilizados em servidores e sistemas back-end.

O que se segue

É importante manter-se atualizado sobre as ferramentas e softwares que você usa com frequência e garantir que esteja ciente de todas as novas vulnerabilidades relacionadas aos sistemas. Assinar uma newsletter de cibersegurança pode ajudar você a ficar por dentro dessas ameaças emergentes à segurança. Confira as newsletters da CyberHoot e inscreva-se para receber atualizações mensais gratuitas. Estar ciente das ameaças à segurança que você enfrenta é o primeiro passo para proteger seus sistemas.

A CyberHoot é uma ótima empresa para se fazer parceria, pois oferecemos centenas de programas de treinamento, incluindo noções básicas de segurança cibernética. A CyberHoot oferece treinamento para usuários em diversos aspectos, desde noções básicas de segurança cibernética a riscos de aplicativos OWASP e treinamento avançado em Microsoft Excel. Entre em contato conosco. vendas@cyberhoot.com, ou marque uma reunião em https://Calendly.com/CyberHoot.

Para saber mais sobre segurança de API, assista a este breve vídeo de 2 minutos:

Fontes: 

Postagem de ameaça

AjudaNetSegurança

Leitura Adicional: 

Os dez principais riscos de segurança da OWASP

Apple incentiva desenvolvedores a usar a nova API App Attest do iOS 14 para proteção contra ameaças de segurança

Últimos Blogs

Fique por dentro das últimas novidades insights de segurança

Descubra e compartilhe as últimas tendências, dicas e melhores práticas de segurança cibernética, além de novas ameaças às quais você deve ficar atento.

Extensões falsas de carteiras de criptomoedas atingem o Firefox. Veja como manter seu navegador limpo.

Extensões falsas de carteiras de criptomoedas atingem o Firefox. Veja como manter seu navegador limpo.

Autora: Katie Boquetti | Editorial: Craig Taylor Editorial de Craig Taylor: Mesmo antes de Claude Code fazer...

Ler mais
Corp MDM: O aplicativo de trabalho falso que queria ler suas mensagens de texto

Corp MDM: O aplicativo de trabalho falso que queria ler suas mensagens de texto

Autora: Katie Boquetti | Editorial: Craig Taylor Editorial de Craig Taylor: Já sabíamos disso há algum tempo...

Ler mais
Assistentes falsos do ChatGPT estão espalhando malware. Veja como identificá-los.

Assistentes falsos do ChatGPT estão espalhando malware. Veja como identificá-los.

Autora: Katie Boquetti | Editorial: Craig Taylor Editorial de Craig Taylor: Um CAPTCHA deve testar se...

Ler mais