Pular para conteúdo

Lista de permissões de endereço IP

Lista de permissões é uma lista de endereços IP confiáveis que têm permissão para acessar seus aplicativos, mesmo se as solicitações originadas a partir deles contiverem sinais de ataque. A lista de permissões tem a mais alta prioridade entre outras listas, o nó de filtragem em qualquer modo de filtragem não bloqueará solicitações originárias de endereços IP da lista de permissões.

No Console Wallarm → Listas de IPLista de permissões, você pode gerenciar endereços IP da lista de permissões da seguinte maneira:

  • Adicione um único endereço IP ou uma sub-rede

  • Adicione um grupo de endereços IP registrados em um país/região, data center, rede, etc. específicos

  • Personalize o tempo e o motivo para armazenar o endereço IP na lista

  • Delete o endereço IP da lista

  • Reveja o histórico de mudanças na lista

Lista de permissões IP

Nome antigo da lista

O nome antigo da lista de permissões de endereço IP é "lista de permissões de endereço IP".

Exemplos de uso da lista de permissões de IP

Se você usa outras ferramentas confiáveis ​​que originam solicitações potencialmente maliciosas, é necessário adicionar manualmente os IPs originais dessas ferramentas à lista de permissões.

Adicionando um objeto à lista

Adicionando um endereço IP à lista no nó de vários inquilinos

Se você instalou o nó de vários inquilinos, mude primeiro para a conta de um inquilino para o qual o endereço IP está sendo adicionado à lista.

Para adicionar um endereço IP, sub-rede ou grupo de endereços IP à lista:

  1. Abra o Console Wallarm → Listas de IPLista de permissões e clique no botão Adicionar objeto.

  2. Na lista suspensa, selecione a lista para adicionar o novo objeto.

  3. Especifique um endereço IP ou grupo de endereços IP de uma das seguintes maneiras:

    • Insira um único endereço IP ou uma sub-rede

      Máscaras de sub-rede suportadas

      A máscara de sub-rede máxima suportada é /32 para endereços IPv6 e /12 para endereços IPv4.

    • Selecione um país ou uma região (geolocalização) para adicionar todos os endereços IP registrados neste país ou região

    • Selecione o tipo de fonte para adicionar todos os endereços IP que pertencem a este tipo, por exemplo:
  4. Selecione os aplicativos aos quais você permite ou restringe o acesso para os endereços IP especificados.

  5. Selecione o período pelo qual um endereço IP ou um grupo de endereços IP deve ser adicionado à lista. O valor mínimo é de 5 minutos, o valor máximo é para sempre.

  6. Especifique o motivo para adicionar um endereço IP ou um grupo de endereços IP à lista.

Adicione IP à lista (com aplicativo)

Analisando objetos adicionados à lista

O console Wallarm exibe os seguintes dados sobre cada objeto adicionado à lista:

  • Objeto - Endereço IP, sub-rede, país/região ou fonte de IP adicionada à lista.

  • Aplicativo - aplicativo ao qual a configuração de acesso do objeto é aplicada.

  • Razão - razão para adicionar um endereço IP ou um grupo de endereços IP à lista. A razão é especificada manualmente ao adicionar objetos à lista ou gerada automaticamente quando os IPs são adicionados à lista por gatilhos.

  • Data de adição - data e hora em que um objeto foi adicionado à lista.

  • Remover - período de tempo após o qual um objeto será excluído da lista.

Revisando o histórico de alterações na lista de IPs

Quando você escolhe datas específicas para examinar o conteúdo da lista de IPs, o sistema retorna um histórico detalhado de suas mudanças, incluindo o momento exato e o método de inclusão, seja manual ou automatizado. O relatório também fornece dados sobre os indivíduos responsáveis pelas alterações e os motivos de cada inclusão. Esses insights auxiliam na manutenção de um rastro de auditoria para conformidade e relatórios.

Histórico da lista de IP

Ao voltar para a guia Agora, você acessa o estado atual da lista de IPs, permitindo visualizar os objetos atualmente incluídos na lista.

Filtrando a lista

Você pode filtrar os objetos na lista por:

  • Endereço IP ou sub-rede especificado na linha de pesquisa

  • Período para o qual você deseja obter um status da lista

  • País/região em que um endereço IP ou uma sub-rede está registrado

  • Fonte à qual um endereço IP ou uma sub-rede pertence

Alterando o tempo que um objeto está na lista

Para alterar o tempo que um endereço IP está na lista:

  1. Selecione um objeto da lista.

  2. No menu do objeto selecionado, clique em Alterar período de tempo.

  3. Selecione uma nova data para remover um objeto da lista e confirme a ação.

Excluindo um objeto da lista

Para excluir um objeto da lista:

  1. Selecione um ou vários objetos da lista.

  2. Clique em Excluir.

Re-adicionando o endereço IP excluído

Após excluir manualmente o endereço IP adicionado à lista pelo gatilho, o gatilho funcionará novamente apenas depois de metade do tempo anterior em que o endereço IP estava na lista.

Por exemplo:

  1. O endereço IP foi adicionado automaticamente à lista cinza por 1 hora porque 4 vetores de ataque diferentes foram recebidos deste endereço IP em 3 horas (como está configurado no gatilho).
  2. O usuário deletou este endereço IP da lista cinza via console Wallarm.
  3. Se 4 vetores de ataque diferentes são enviados a partir deste endereço IP dentro de 30 minutos, então este endereço IP não será adicionado à lista cinza.

Para obter, popular e excluir objetos da lista de IPs, você pode chamar a API Wallarm diretamente além de usar a interface do usuário do console Wallarm. Abaixo estão alguns exemplos das chamadas de API correspondentes.

Parâmetros de solicitação da API

Parâmetros a serem passados nas solicitações da API para ler e alterar listas de IPs:

Parameter Description
X-WallarmApi-Token Token to access Wallarm API, copy it from Wallarm Console → SettingsAPI tokens.
clientid ID of an account in Wallarm Cloud to populate/read IP list.
ip_rule.list The IP list type to add objects, can be: black (for denylist), white (for allowlist), gray (for graylist).
ip_rule.rule_type The type of objects to add to the list:
  • ip_range if adding particular IPs or subnets
  • country if adding countries or regions
  • proxy_type if adding proxy services (VPN, SES, PUB, WEB, TOR)
  • datacenter for other source types (rackspace, tencent, plusserver, ovh, oracle, linode, ibm, huawei, hetzner, gce, azure, aws, alibaba)
ip_rule.subnet
(rule_type:"ip_range")
IP or subnet to add to the list, e.g. "1.1.1.1".
ip_rule.source_values
(for other rule_type values)
One of the options:
  • If rule_type:"country" - array of countries in the ISO-3166 format, e.g. ["AX","AL"].
  • If rule_type:"proxy_type" - array of proxy services, e.g. ["VPN","PUB"].
  • If rule_type:"datacenter" - array of other source types, e.g. ["rackspace","huawei"].
ip_rule.pools Array of application IDs to allow or restrict access for IPs, e.g. [3,4] for applications IDs 3 and 4 or [0] for all applications.
ip_rule.expired_at Unix Timestamp date for IPs to be removed from the list. The maximum value is forever (33223139044).
reason Reason to allow or restrict access for IPs.
force If true and some objects specified in the request are already in the IP list, the script will overwrite them.

Adicionar à lista as entradas do arquivo .csv

Para adicionar à lista os IPs ou sub-redes do arquivo .csv, use o seguinte script bash:

#!/bin/bash

UUID="<YOUR_UUID>"
SECRET="<YOUR_SECRET_KEY>"
CLIENT="<YOUR_CLIENT_ID>"
LIST="<TYPE_OF_IP_LIST>"
PATH_TO_CSV_FILE="<PATH_TO_CSV_FILE>" # path to the CSV file with IPs or subnets
APPLICATIONS="<APP_IDS_THROUGH_COMMA>"
REMOVE_DATE="TIMESTAMP_REMOVE_DATE"
REASON='<REASON>'
API="us1.api.wallarm.com"


index=0
while read line; do
    subnets[$index]="$line"
    index=$(($index+1))
done < "$PATH_TO_CSV_FILE"


for i in ${subnets[@]}; do
    currentDate=`date -u +%s`
    time=$REMOVE_DATE
    remove_date=$(($currentDate+$time))

curl -X POST \
https://$API/v4/ip_rules \
-H "Content-Type: application/json" \
-H "X-WallarmApi-Token: <YOUR_TOKEN>"  \
-d '{
"clientid": '$CLIENT',
"ip_rule": {
    "list": "'$LIST'",
    "rule_type": "ip_range",
    "subnet": "'$i'",
    "expired_at": '$remove_date',
    "pools": [
        '$APPLICATIONS'
    ],
    "reason": "'"$REASON"'"
},
"force": false
}'

done
#!/bin/bash

UUID="<YOUR_UUID>"
SECRET="<YOUR_SECRET_KEY>"
CLIENT="<YOUR_CLIENT_ID>"
LIST="<TYPE_OF_IP_LIST>"
PATH_TO_CSV_FILE="<PATH_TO_CSV_FILE>" # path to the CSV file with IPs or subnets
APPLICATIONS="<APP_IDS_THROUGH_COMMA>"
REMOVE_DATE="TIMESTAMP_REMOVE_DATE"
REASON='<REASON>'
API="api.wallarm.com"


index=0
while read line; do
    subnets[$index]="$line"
    index=$(($index+1))
done < "$PATH_TO_CSV_FILE"


for i in ${subnets[@]}; do
    currentDate=`date -u +%s`
    time=$REMOVE_DATE
    remove_date=$(($currentDate+$time))

curl -X POST \
https://$API/v4/ip_rules \
-H "Content-Type: application/json" \
-H "X-WallarmApi-Token: <YOUR_TOKEN>"  \
-d '{
"clientid": '$CLIENT',
"ip_rule": {
    "list": "'$LIST'",
    "rule_type": "ip_range",
    "subnet": "'$i'",
    "expired_at": '$remove_date',
    "pools": [
        '$APPLICATIONS'
    ],
    "reason": "'"$REASON"'"
},
"force": false
}'

done

Adicionar à lista um único IP ou sub-rede

To add particular IPs or subnets to the IP list, send the following request for each IP/subnet:

curl 'https://us1.api.wallarm.com/v4/ip_rules' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data-raw '{"clientid":<YOUR_CLIENT_ID>,"force":false,"ip_rule":{"list":"<TYPE_OF_IP_LIST>","reason":"<REASON_TO_ADD_ENTRIES_TO_LIST>","pools":[<ARRAY_OF_APP_IDS>],"expired_at":<TIMESTAMP_REMOVE_DATE>,"rule_type":"ip_range","subnet":"<IP_OR_SUBNET>"}}'
curl 'https://api.wallarm.com/v4/ip_rules' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data-raw '{"clientid":<YOUR_CLIENT_ID>,"force":false,"ip_rule":{"list":"<TYPE_OF_IP_LIST>","reason":"<REASON_TO_ADD_ENTRIES_TO_LIST>","pools":[<ARRAY_OF_APP_IDS>],"expired_at":<TIMESTAMP_REMOVE_DATE>,"rule_type":"ip_range","subnet":"<IP_OR_SUBNET>"}}'

Adicionar à lista vários países

curl 'https://us1.api.wallarm.com/v4/ip_rules' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data-raw '{"clientid":<YOUR_CLIENT_ID>,"ip_rule":{"list":"<TYPE_OF_IP_LIST>","rule_type":"country","source_values":[<ARRAY_OF_COUNTRIES_REGIONS>],"pools":[<ARRAY_OF_APP_IDS>],"expired_at":"<TIMESTAMP_REMOVE_DATE>","reason":"<REASON_TO_ADD_ENTRIES_TO_LIST>"},"force":false}'
curl 'https://api.wallarm.com/v4/ip_rules' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data-raw '{"clientid":<YOUR_CLIENT_ID>,"ip_rule":{"list":"<TYPE_OF_IP_LIST>","rule_type":"country","source_values":[<ARRAY_OF_COUNTRIES_REGIONS>],"pools":[<ARRAY_OF_APP_IDS>],"expired_at":"<TIMESTAMP_REMOVE_DATE>","reason":"<REASON_TO_ADD_ENTRIES_TO_LIST>"},"force":false}'

Adicionar à lista vários serviços de proxy

curl 'https://us1.api.wallarm.com/v4/ip_rules' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data-raw '{"clientid":<YOUR_CLIENT_ID>,"ip_rule":{"list":"<TYPE_OF_IP_LIST>","rule_type":"proxy_type","source_values":[<ARRAY_OF_PROXY_SERVICES>],"pools":[<ARRAY_OF_APP_IDS>],"expired_at":"<TIMESTAMP_REMOVE_DATE>","reason":"<REASON_TO_ADD_ENTRIES_TO_LIST>"},"force":false}'
curl 'https://api.wallarm.com/v4/ip_rules' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H "accept: application/json" \
  -H "Content-Type: application/json" \
  --data-raw '{"clientid":<YOUR_CLIENT_ID>,"ip_rule":{"list":"<TYPE_OF_IP_LIST>","rule_type":"proxy_type","source_values":[<ARRAY_OF_PROXY_SERVICES>],"pools":[<ARRAY_OF_APP_IDS>],"expired_at":"<TIMESTAMP_REMOVE_DATE>","reason":"<REASON_TO_ADD_ENTRIES_TO_LIST>"},"force":false}'

Excluir um objeto da lista de IPs

Os objetos são excluídos das listas de IPs por seus IDs.

Para obter um ID de objeto, solicite o conteúdo da lista de IPs e copie objects.id do objeto requerido de uma resposta:

curl 'https://us1.api.wallarm.com/v4/ip_rules?filter%5Bclientid%5D=<YOUR_CLIENT_ID>&filter%5Blist%5D=<TYPE_OF_IP_LIST>&offset=0&limit=50' \
      -H 'X-WallarmApi-Token: <YOUR_TOKEN>'
curl 'https://api.wallarm.com/v4/ip_rules?filter%5Bclientid%5D=<YOUR_CLIENT_ID>&filter%5Blist%5D=<TYPE_OF_IP_LIST>&offset=0&limit=50' \
      -H 'X-WallarmApi-Token: <YOUR_TOKEN>'

Tendo o ID do objeto, envie a seguinte solicitação para excluí-lo da lista:

curl 'https://us1.api.wallarm.com/v4/ip_rules' \
  -X 'DELETE' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H 'accept: application/json' \
  -H 'content-type: application/json' \
  --data-raw '{"filter":{"clientid":<YOUR_CLIENT_ID>,"id":[<OBJECT_ID_TO_DELETE>]}}'
curl 'https://api.wallarm.com/v4/ip_rules' \
  -X 'DELETE' \
  -H 'X-WallarmApi-Token: <YOUR_TOKEN>' \
  -H 'accept: application/json' \
  -H 'content-type: application/json' \
  --data-raw '{"filter":{"clientid":<YOUR_CLIENT_ID>,"id":[<OBJECT_ID_TO_DELETE>]}}'

Você pode excluir vários objetos de uma vez, passando seus IDs como uma array na solicitação de exclusão.