Blog Agility

iRule para Desativar URI na política do ASM

iRule para Desativar URI na política do ASM

A solução ASM trabalha diretamente com o LTM. Este artigo irá mostrar como criar uma iRule para fazer a política não checar uma URI específica e associar a iRule no Virtual Server.

Ao criar uma política no modulo ASM e associar ao Virtual Server responsavel pela aplicação, essa política  irá analisar todo trafego a fim de mitigar vulnerabilidades e bloquear ataques na aplicação. Por muitos motivos, seja excesso de falsos-positivos, comportamento que o ASM considere incomum ou até onerar o BIG-IP, é preciso fazer desvios na política  para que o ASM não analise determinadas URIs da aplicação que é a origem de tais problemas, para fazer isso temos a opção de criar uma iRule.

Para isso temos que seguir os seguintes passos:

  • Acessar: Local Traffic  ››  iRules ›› iRule List  ››  New iRule…
  • Ao abrir a tela para criar uma nova iRule é preciso criar um nome em “Name” e em “Definition” escrever a iRule:

Tech-Tips_2015_08_Alexandre_Orquisa_Angelin_iRule_Disable_URI_ASM_01
Figura 1: Tela para criar irule

  • Ao abrir esta tela de criação de iRule vamos inserir a seguinte iRule:when HTTP_REQUEST {

if {[HTTP::uri] contains “/search.php” } {

    ASM::disable

    log local0. “ASM disabled.”

 } else {

    ASM::enable /Common/Server_test

    log local0. “ASM enabled. Current ASM policy is [ASM::policy]”

 }

}

  • Colocamos uma condição dentro da iRule que é:se a URL HTTP contiver “/search.php” em sua URI o ASM sera desabilitado e seu log também, senão o ASM fica ativado normalmente.
  • Ficando da seguinte forma:

Tech-Tips_2015_08_Alexandre_Orquisa_Angelin_iRule_Disable_URI_ASM_02
Figura 2: Tela irule criada

  • Após isso basta clicar em “Finished” e associar a iRule ao Virtual Server correspondente a aplicação, conforme tela abaixo:

Tech-Tips_2015_08_Alexandre_Orquisa_Angelin_iRule_Disable_URI_ASM_03
Figura 3: Associar irule no virtual server

Com isso conseguimos fazer um pequeno desvio na política  do ASM, pois ela sera desativada pela iRule quando a página contendo “/search.php” for chamada.