Os três principais controles de segurança em profundidade para proteger as APIs contra ataques

Adicionar controles de segurança robustos à sua API pode melhorar significativamente a postura de segurança do seu aplicativo móvel. Essas defesas aumentam a resiliência aos ataques, aumentando a barreira para quem tenta investigar ou manipular sua API. Isso se aplica a aplicativos móveis e da Web.

Neste blog, destacaremos três controles principais que podem ajudar Reduza o risco de exploração da API:

  • Assinaturas de Códigos de Autenticação de Mensagens baseados em Hash (HMAC)
  • Limitação da taxa
  • Corpos de mensagem criptografados

Adicionar um ou todos esses controles pode ajudar a fortalecer sua API contra vetores de ataque comuns.

Assinaturas HMAC: Proteger a integridade da mensagem

As assinaturas de HMAC são usadas para verificar a integridade e a autenticidade das solicitações e respostas da API. Eles ajudam a detectar quando uma mensagem foi modificada em trânsito.

Como funciona o HMAC

O HMAC envolve gerar uma assinatura usando componentes de solicitação ou resposta selecionados, um algoritmo de hash e uma chave secreta conhecida apenas pelo aplicativo e servidor. A assinatura é então incluída como cabeçalho.

Os componentes típicos usados ​​para gerar a assinatura do HMAC incluem:

  • Corpo de mensagem
  • Timestamp
  • Caminho da URL
  • Método HTTP
  • Cabeçalhos relevantes, como o tipo de conteúdo

O processo de hash usa um algoritmo criptográfico e uma chave secreta compartilhada apenas entre o cliente e o servidor.

O aplicativo cliente envia a solicitação da API, incluindo a assinatura HMAC recém -gerada, em um cabeçalho personalizado.

Os três principais controles de segurança em profundidade para proteger as APIs contra ataques

Ao receber a solicitação, o servidor repete o mesmo processo de hash usando os mesmos parâmetros e chave secreta. Em seguida, compara a assinatura HMAC calculada com a enviada pelo aplicativo no cabeçalho da solicitação.

  • Se as assinaturas corresponderem, o servidor aceitar e processar a solicitação.
  • Se as assinaturas não corresponderem, o servidor rejeitar a solicitação, impedindo que cargas úteis maliciosas ou inseguras sejam processadas.

Depois que o servidor verifica e processa a solicitação, ele gera uma nova assinatura do HMAC que adiciona aos cabeçalhos de resposta. O aplicativo cliente valida a resposta da mesma maneira para proteger a integridade da mensagem. Essa verificação de duas vias continua durante toda a sessão de aplicativos, garantindo integridade e autenticidade em cada etapa.

Impacto no mundo real

HMAC poderia ter ajudado a prevenir o Brecha Optusonde os invasores modificaram valores de ID do cliente para acessar os dados confidenciais de outros usuários. A implementação adequada do cabeçalho HMAC teria sinalizado as solicitações manipuladas como inválidas.

Por que isso importa para o celular

A segurança de aplicativos móveis é frequentemente depresentada em comparação com os aplicativos da Web. Mas os aplicativos móveis normalmente interagem com as mesmas APIs de back -end. A implementação do HMAC em aplicativos móveis pode impedir que os atacantes modifiquem solicitações ou respostas em trânsito, ajudando a impedir o vazamento de dados, a aquisição de contas e outras façanhas.

Os controles da API em camadas, incluindo validação de HMAC, limitação de taxa e corpos de mensagem criptografados, ajudam a proteger a funcionalidade crítica, bloquear o acesso não autorizado e reduzir a probabilidade de uma violação dispendiosa.

Limitação da taxa: API de força bruta ataques

A limitação da taxa restringe a frequência com que os clientes enviam solicitações de API, ajudando a bloquear tentativas de ataque de força bruta, tráfego de bot e explorações de negação de serviço. Esse controle de API leve, porém eficaz, protege a disponibilidade e os dados do usuário.

Como a limitação da taxa aumenta a segurança da API

Os ataques de força bruta normalmente envolvem a iteração de uma lista de e-mails e senhas conhecidos, na tentativa de obter acesso não autorizado às credenciais da conta do usuário e informações de pagamento. Quando um usuário ou bot envia solicitações repetidas em rápida sucessão, o sistema detecta o comportamento e acelera ou bloqueia ainda mais tentativas por um período de tempo. A taxa limitadora reduz drasticamente a janela para o sucesso da força bruta.

Impacto no mundo real: Dunkin Donuts Brecha

Muitos ataques de força bruta resultaram em violações de dados que causaram danos financeiros, reputacionais e legais. Dunkin Donuts Sofreu dois ataques de resfriamento de credenciais em larga escala. Milhões de tentativas automatizadas de login comprometeram milhares de contas de usuário, resultando em ações judiciais e danos à marca. A limitação da taxa robusta poderia ter reduzido esses pedidos maliciosos e impedido a aquisição da conta.

Casos de uso mais amplos

A limitação da taxa também ajuda a se defender de:

  • Recheio de credenciais
  • Enumeração do usuário
  • Fraude de pagamento
  • Ataques de negação de serviço da camada de API (DOS)

NowSecure recomenda fortemente que as organizações implementem a limitação da taxa em todos os pontos de extremidade e validem essas proteções durante o teste. (Avalie seu aplicativo com Plataforma agora segura automatizado Teste de segurança de aplicativos móveis ou envolver NowSecure Pen Testing como um serviço (PTAAs) para validação de especialistas.)

Órgãos de mensagens criptografadas: cargas úteis de API seguras em trânsito

A criptografia de corpos de mensagens da API aumenta a segurança, escondendo o conteúdo da carga útil de partes não autorizadas, mesmo quando interceptam o tráfego da rede.

Por que a criptografia é importante

Sem criptografia, os invasores na mesma rede podem observar ou manipular mensagens em trânsito. A criptografia obscurece a estrutura e o conteúdo das mensagens, exigindo que os invasores investissem significativamente mais tempo e recursos para lançar um ataque. A idéia é o aumento da dificuldade que impede o ator ruim e eles passam a alvos mais fáceis.

Não deixe atacantes com frutas baixas. Faça -os escalar a árvore com folhas espinhosas e violações escorregadias para incomodá -las e impedi -las.

Tipos de criptografia

  • Criptografia simétrica usa uma chave compartilhada para criptografar e descriptografar a mensagem – rápida, mas mais arriscada, se ocorrer a exposição das chaves.
  • Criptografia assimétrica é mais intensivo em recursos. Ele criptografa com uma chave pública; Somente a chave privada correspondente pode descriptografar os dados.
  • Criptografia híbrida combina os dois métodos. Ele criptografa a mensagem com uma chave simétrica e, em seguida, criptografa essa chave com uma chave pública para transmissão segura.

Estudo de caso: violação do PowerSchool

No Violação do PowerSchoolos invasores modificaram consultas da API de um banco de dados para exfiltrar os dados do aluno, dos pais e dos funcionários. Os corpos de mensagem criptografados poderiam ter oculto os parâmetros de solicitação e bloqueado a violação que permitiu a exploração.

Considerações móveis

Os aplicativos móveis frequentemente trocam dados com serviços de back -end. Os invasores com acesso à rede podem interceptar mensagens não criptografadas para executar atos maliciosos. Criptografar corpos de mensagens da API em ambos plataformas móveis e web pode ajudar a fornecer confidencialidade e resistir à manipulação do tráfego.

Fortalecer a segurança com controles em camadas

Em camadas Controles da API incluindo validação de HMAC, limitação de taxas e corpos de mensagem criptografados ajudam a proteger a funcionalidade crítica, bloquear o acesso não autorizado e reduzir a probabilidade de um Brecha dispendiosa.

NowSecure permite que as organizações testem e validem as proteções de API através PTAAs móveis. Nossos testadores de canetas especializados replicam ataques do mundo real e oferecem estratégias de mitigação acionáveis ​​para ajudar as equipes de segurança a fortalecer as defesas antes dos adversários.

Deixe um comentário