Pular para conteúdo

Mulesoft com Política Wallarm

MuleSoft é uma plataforma de integração que permite uma conectividade e integração de dados perfeitas entre os serviços, com um gateway de API funcionando como ponto de entrada para que os aplicativos do cliente acessem as APIs. Com a Wallarm, você pode proteger as APIs na plataforma Mulesoft Anypoint usando a política da Wallarm. Este artigo explica como anexar e utilizar a política.

O diagrama abaixo ilustra o fluxo de tráfego de alto nível quando a política Wallarm está anexada às APIs na plataforma MuleSoft Anypoint, e a Wallarm está configurada para bloquear atividades maliciosas.

Mulesoft com política Wallarm

A solução envolve a implantação do nó Wallarm externamente e a injeção de código personalizado ou políticas na plataforma específica. Isso permite que o tráfego seja direcionado para o nó Wallarm externo para análise e proteção contra ameaças potenciais. Conhecidos como conectores Wallarm, eles servem como o elo essencial entre plataformas como Azion Edge, Akamai Edge, Mulesoft, Apigee e AWS Lambda, e o nó Wallarm externo. Esta abordagem garante uma integração perfeita, análise segura de tráfego, mitigação de riscos e segurança geral da plataforma.

Casos de uso

Entre todas as opções de implantação Wallarm suportadas, esta solução é a recomendada para os seguintes casos de uso:

  • Proteger as APIs implantadas na plataforma MuleSoft Anypoint com apenas uma política.

  • Requerer uma solução de segurança que ofereça observação abrangente de ataques, relatórios e bloqueio instantâneo de solicitações maliciosas.

Limitações

A solução apresenta certas limitações, pois só funciona com solicitações recebidas:

  • A descoberta de vulnerabilidades usando o método de detecção passiva não funciona corretamente. A solução determina se uma API é vulnerável ou não com base nas respostas do servidor a solicitações maliciosas típicas das vulnerabilidades que testa.

  • O Wallarm API Discovery não pode explorar o inventário da API com base no seu tráfego, pois a solução depende da análise das respostas.

  • A proteção contra navegação forçada não está disponível, pois requer análise do código de resposta.

Requisitos

Para prosseguir com a implantação, certifique-se de que você atende aos seguintes requisitos:

  • Entendimento da plataforma Mulesoft.

  • Maven (mvn) 3.8 ou uma versão anterior instalada. Versões mais recentes do Maven podem encontrar problemas de compatibilidade com o plugin Mule.

  • Você foi atribuído ao papel de contribuidor do Mulesoft Exchange, permitindo o upload de artefatos para a conta da plataforma Mulesoft Anypoint da sua organização.

  • Suas credenciais do Mulesoft Exchange (nome de usuário e senha) são especificadas no arquivo <MAVEN_DIRECTORY>/conf/settings.xml.

  • Seu aplicativo e API estão linkados e funcionando no Mulesoft.

Implantação

Para proteger as APIs na plataforma Mulesoft Anypoint usando a política Wallarm, siga essas etapas:

  1. Implementar um nó Wallarm usando uma das opções de implantação disponíveis.

  2. Obter a política Wallarm e enviá-la para o Mulesoft Exchange.

  3. Anexar a política Wallarm à sua API.

1. Implementar um nó Wallarm

Ao utilizar a política Wallarm, o fluxo de tráfego é in-line.

  1. Escolha uma das soluções de implantação do nó Wallarm suportadas ou artefatos para implantação in-line e siga as instruções de implantação fornecidas.

  2. Configure o nó implantado usando o seguinte modelo:

    server {
        listen 80;
    
        server_name _;
    
        access_log off;
        wallarm_mode off;
    
        location / {
            proxy_set_header Host $http_x_forwarded_host;
            proxy_pass http://unix:/tmp/wallarm-nginx.sock;
        }
    }
    
    server {
        listen 443 ssl;
    
        server_name seu-dominio-para-no-wallarm.tld;
    
        ### Configuração SSL aqui
    
        access_log off;
        wallarm_mode off;
    
        location / {
            proxy_set_header Host $http_x_forwarded_host;
            proxy_pass http://unix:/tmp/wallarm-nginx.sock;
        }
    }
    
    
    server {
        listen unix:/tmp/wallarm-nginx.sock;
    
        server_name _;
    
        wallarm_mode monitoring;
        #wallarm_mode block;
    
        real_ip_header X-REAL-IP;
        set_real_ip_from unix:;
    
        location / {
            echo_read_request_body;
        }
    }
    

    Por favor, certifique-se de prestar atenção nas seguintes configurações:

    • Certificados TLS/SSL para tráfego HTTPS: Para permitir que o nó Wallarm gerencie o tráfego HTTPS seguro, configure os certificados TLS/SSL de acordo. A configuração específica dependerá do método de implantação escolhido. Por exemplo, se você estiver usando o NGINX, pode consultar seu artigo para obter orientação.
    • Configuração do modo de operação Wallarm.
  3. Uma vez que a implantação esteja completa, anote o IP da instância do nó, pois você precisará dele mais tarde para definir o endereço de encaminhamento das solicitações recebidas.

2. Obtenha e envie a política Wallarm para o Mulesoft Exchange

Para adquirir e enviar a política Wallarm para o Mulesoft Exchange, siga estas etapas:

  1. Entre em contato com support@wallarm.com para obter a política Wallarm Mulesoft.

  2. Extraia o arquivo da política quando você o receber.

  3. Navegue até o diretório da política:

    cd <DIRETORIO_DA_POLITICA>/wallarm
    
  4. No arquivo pom.xml → parâmetro groupId no topo do arquivo, especifique o ID da sua organização Mulesoft.

    Você pode encontrar o ID da sua organização navegando até Mulesoft Anypoint Platform → Access ManagementOrganization → escolha a sua organização → copie o ID dela.

  5. No seu diretório Maven .m2, atualize o arquivo settings.xml com suas credenciais do Exchange:

    <?xml version="1.0" encoding="UTF-8"?>
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
      <servers>
        <server>
          <id>exchange-server</id>
          <username>meunomeusuario</username>
          <password>minhasenha</password>
        </server>
      </servers>
    </settings>
    
  6. Implantar a política no Mulesoft usando o seguinte comando:

    mvn clean deploy
    

A sua política personalizada agora está disponível na Exchange da sua Plataforma Mulesoft Anypoint.

Mulesoft com política Wallarm

3. Anexar a política Wallarm à sua API

Você pode anexar a política Wallarm a todas as APIs ou a uma API individual.

Anexando a política a todas as APIs

Para aplicar a política Wallarm a todas as APIs usando a opção de política automatizada do Mulesoft, siga estes passos:

  1. Na sua Plataforma Anypoint, navegue até API ManagerAutomated Policies.

  2. Clique em Add automated policy e selecione a política Wallarm do Exchange.

  3. Especifique WLRM REPORTING ENDPOINT que é o endereço IP da instância do nó Wallarm , incluindo o http:// ou https://.

  4. Se necessário, modifique o período máximo para a Wallarm processar uma única solicitação, alterando o valor de WALLARM NODE REQUEST TIMEOUT.

  5. Aplique a política.

Política Wallarm

Anexando a política a uma API individual

Para proteger uma API individual com a política Wallarm, siga estes passos:

  1. Na sua Plataforma Anypoint, navegue até API Manager e selecione a API desejada.

  2. Navegue até PoliciesAdd policy e selecione a política Wallarm.

  3. Especifique WLRM REPORTING ENDPOINT que é o endereço IP da instância do nó Wallarm , incluindo o http:// ou https://.

  4. Se necessário, modifique o período máximo para a Wallarm processar uma única solicitação, alterando o valor de WALLARM NODE REQUEST TIMEOUT.

  5. Aplique a política.

Política Wallarm

Testando

Para testar a funcionalidade da política implantada, siga estas etapas:

  1. Envie a solicitação com o teste de ataque Path Traversal para a sua API:

    curl http://<SEU_IP_OU_DOMINIO_DO_APP>/etc/passwd
    
  2. Abra o Console Wallarm → seção Events no US Cloud ou EU Cloud e certifique-se de que o ataque está exibido na lista.

    Ataques na interface

    Se o modo do nó Wallarm estiver definido para bloqueio, a solicitação também será bloqueada.

Se a solução não funcionar conforme esperado, consulte os logs da API acessando Mulesoft Anypoint Platform → Runtime Manager → sua aplicação → Logs.

Você também pode verificar se a política foi aplicada à API navegando até a API no API Manager e revisar as políticas aplicadas na aba Policies. Para políticas automatizadas, você pode usar a opção See covered APIs para ver as APIs cobertas e as razões de quaisquer exclusões.

Atualização e desinstalação

Para atualizar a política Wallarm implantada, siga estas etapas:

  1. Remova a política Wallarm atualmente implantada usando a opção Remove policy na lista de política automatizada ou na lista de políticas aplicadas a uma API individual.

  2. Adicione a nova política seguindo as etapas 2-3 acima.

  3. Reinicie os aplicativos anexados no Runtime Manager para aplicar a nova política.

Para desinstalar a política, simplesmente execute o primeiro passo do processo de atualização.

Precisa de ajuda?

Se você encontrar algum problema ou precisar de ajuda com a implantação descrita da política Wallarm em conjunto com o MuleSoft, você pode entrar em contato com a equipe de suporte da Wallarm. Eles estão disponíveis para fornecer orientação e ajudar a resolver quaisquer problemas que você possa enfrentar durante o processo de implementação.