re.regex

Compatível com:

É possível definir a correspondência de expressões regulares em YARA-L 2.0 usando uma das seguintes sintaxes:

  • Usando a sintaxe YARA-L — relacionada a eventos. Confira a seguir uma representação genérica dessa sintaxe:

    $e.field = /regex/
    
  • Usando a sintaxe YARA-L como uma função que recebe os seguintes parâmetros:

    • Campo em que a expressão regular é aplicada.
    • Expressão regular especificada como uma string.

    Confira a seguir uma representação genérica dessa sintaxe:

    re.regex($e.field, `regex`)
    

Descrição

Essa função retorna true se a string contiver uma substring que corresponda à expressão regular fornecida. Não é necessário adicionar .* no início ou no fim da expressão regular.

Observações
  • Para corresponder à string exata ou apenas a um prefixo ou sufixo, inclua os caracteres âncora ^ (inicial) e $ (final) na expressão regular. Por exemplo, /^full$/ corresponde exatamente a "full", enquanto /full/ pode corresponder a "fullest", "lawfull" e "joyfully".
  • Se o campo da UDM incluir caracteres de nova linha, o regexp só vai corresponder à primeira linha do campo. Para forçar a correspondência completa do campo UDM, adicione um (?s) à expressão regular. Por exemplo, substitua /.*allUDM.*/ por /(?s).*allUDM.*/.
  • Use o modificador nocase depois das strings para indicar que a pesquisa deve ignorar a capitalização.

Tipos de dados de parâmetros

STRING, STRING

Tipos de expressão de parâmetro

ANY, ANY

Tipo de retorno

BOOL

Amostras de código

Exemplo 1
// Equivalent to $e.principal.hostname = /google/
re.regex($e.principal.hostname, "google")