Edit File: modsec_audit_log.cpython-311.pyc
� P6h�� � �: � d Z ddlZddlZddlZddlZddlZddlZddlZddl m Z mZ ddlm Z ddlmZ ddlmZmZ ddlmZ ddlmZ dd lmZmZ dd lmZ ddlmZmZ ddlmZmZ dd l m!Z! dZ"d\ Z#Z$Z%d\ Z&Z'Z(Z)Z*Z+dZ,dde*ddddde#ddddde+e,e$fe"z Z-dx\ Z.Z/Z0 ej1 dej2 � � Z3 ee4� � Z5 ee� � � e5j6 � � Z7 G d!� d"e8� � Z9 G d#� d$e8� � Z: G d%� d&e8� � Z; G d'� d(e<� � Z= G d)� d*e �+� � Z> G d,� d-e>� � Z? G d.� d/e>� � Z@ G d0� d1e>� � ZA G d2� d3e>� � ZB G d4� d5e>� � ZC G d6� d7eC� � ZD G d8� d9e>� � ZE G d:� d;e>� � ZF G d<� d=e �+� � ZG G d>� d?eG� � ZH G d@� dAeG� � ZI G dB� dCeI� � ZJ G dD� dEeI� � ZK G dF� dGeK� � ZL G dH� dIeK� � ZM G dJ� dKeL� � ZN G dL� dMeG� � ZO G dN� dOeH� � ZP G dP� dQeG� � ZQ G dR� dSeH� � ZR G dT� dU� � ZSdedV�ZTdeUdWeVfdX�ZWdYeUdZeUdWeeeU eXf fd[�ZYdWeeU fd\�ZZd]� Z[d^eVfd_�Z\d`� Z]daeeU dWeeU fdb�Z^dceUdWe_fdd�Z`dS )fz SecAuditLog parser � N)�ABCMeta�abstractmethod)�suppress)�copy)�CookieError�SimpleCookie)�product)� getLogger)�Optional�Tuple)�parse_qs)�DAY� rate_limit)�USER_IDENTITY_FIELD� user_identity)�ModsecSensor)�inbound_anomality_score�outbound_anomality_score)�severity�advanced�headers)�uri�http_method�form�query�attackers_ip�status_code�engine_modez User-Agent�Host�transaction_id�rule�msg�message� access_denied�ver�tag�Producer�modsec_version�vendor)�cookie� authorizationz((Inbound|Outbound) Anomaly Score.*?(\d+))�periodc � � e Zd ZdZdS )� ParseError�E log as logger.exception(*e.args) to avoid sentry duplicates N��__name__� __module__�__qualname__�__doc__� � �R/opt/imunify360/venv/lib/python3.11/site-packages/im360/subsys/modsec_audit_log.pyr. r. D � � � � � � �� � �Dr6 r. c � � e Zd ZdZdS )�_AmbiguousSeverityz to log as warning Nr0 r5 r6 r7 r: r: L r8 r6 r: c � � e Zd ZdZdS )�MalformedFileErrorr/ Nr0 r5 r6 r7 r<