Файловый менеджер - Редактировать - /opt/imunify360/venv/lib/python3.11/site-packages/imav/malwarelib/subsys/__pycache__/malware.cpython-311.pyc
Назад
� �l�h � � �8 � d Z ddlZddlZddlZddlZddlZddlZddlZddlm Z ddl mZ ddlm Z ddlmZ ddlmZmZmZmZmZmZmZmZmZmZmZ ddlmZ dd lmZm Z m!Z!m"Z"m#Z#m$Z$m%Z% dd l&m'Z'm(Z(m)Z) ddl*m+Z+ ddl,m-Z- dd l.m/Z/m0Z0 ddl1m2Z2 ddl3m4Z4m5Z5 ddl6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z? ddl@mAZAmBZB ddlCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\ ddl]m^Z^m_Z_m`Z`maZambZb ddlcmdZd ddlemfZf ddlgmhZh ddlimjZj ddlkmlZl erddlmmnZn e eo� � Zpeeqerejs f Zs ed� � Zt ede`ed� � Zudevfd�Zwd� Zxd� Zyd � Zzd!eqdeeqeqf fd"�Z{ G d#� d$� � Z|d%� Z} G d&� d'� � Z~ G d(� d)e|� � ZdS )*u This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>. Copyright © 2019 Cloud Linux Software Inc. This software is also available under ImunifyAV commercial license, see <https://www.imunify360.com/legal/eula> � N)�defaultdict)�ConfigParser)� getLogger)�Path)� TYPE_CHECKING�Callable� Collection�Dict�Iterable�List�Optional�Tuple�TypeVar�Union�cast)�IntegrityError)�Core� HackerTrap�MyImunifyConfig�UserType�"choose_use_backups_start_from_date�choose_value_from_config� should_try_autorestore_malicious)�MS_CONFIG_DEFAULT_ACTION_EDIT�has_permission�myimunify_protection_enabled)�g)�run_in_executor)�svcctl� web_server)� hosting_panel)�ModsecVendorsError�PanelException) �COPY_TO_MODSEC_MAXTRIES�LazyLock�atomic_rewrite�base64_decode_filename�base64_encode_filename�is_cloudways�log_failed_to_copy_to_modsec�retry_on� safe_sequence)�MalwareCleanupRevert�MalwareCleanupTask)�ADDED_TO_IGNORE�CLEANUP�CLEANUP_DONE�CLEANUP_ON_SCHEDULE�CLEANUP_REMOVED�DELETED_FROM_IGNORE�FAILED_TO_CLEANUP�FAILED_TO_DELETE_FROM_IGNORE�FAILED_TO_IGNORE�FAILED_TO_RESTORE_FROM_BACKUP�FAILED_TO_RESTORE_ORIGINAL�FAILED_TO_STORE_ORIGINAL�FOUND� NOT_EXIST�NOTIFY�REQUIRES_MYIMUNIFY_PROTECTION�RESTORED_FROM_BACKUP�RESTORED_ORIGINAL�SUBMITTED_FOR_ANALYSIS�UNABLE_TO_CLEANUP�MalwareEvent�MalwareEventPostponed�MalwareHitStatus�MalwareScanResourceType�MalwareScanType)�MalwareHistory� MalwareHit�MalwareHitAlternate�MalwareIgnorePath�MalwareScan)�MalwareDatabaseHitInfo)� restore_files�� hash_path)�submit_in_background)� detected_hook)� RestoreReport�T�HitInfoType�returnc �� � t � � } | � d� � | � ddd�� � dk }|o t � � S # t $ r Y nw xY wdS )Nz*/etc/sysconfig/imunify360/integration.confr �server_type� )�fallback�nginxF)r �read�getr) � Exception)�cfg�is_nginxs �S/opt/imunify360/venv/lib/python3.11/site-packages/imav/malwarelib/subsys/malware.py�_is_force_use_corazarb � ss � � ��n�n�����=�>�>�>��7�7�<���7�D�D��O���*�L�N�N�*��� � � ��� �����5s �AA � A�Ac �� � � t j � � � d� fd� � � }t j � � � d� fd� � � }t j � � � r|n|S )z8Decorator responsible for logging malware events into DBNc � �� ���������� � ��� ���K � �| f�����pt j ��� � ��d�|��� d {V ���t t j � � ��� �� ��������� ��fd�� � � d {V �� �S )N)�path� file_owner� file_user�signature_id� initiator�app_name� resource_type�db_host�db_port�db_name�scan_idc � �� t j di d� j �d��d� �d� �d��d��d��d��d ��d ��d��d��d � �d��d��d���S )N�eventre rj rk rf rg ri �causerl rm rn � table_name�table_field� table_row_infro rh � )rH � save_event�title)rj rr rl rn rm rf rg ri re rk �resultro rh rt rs ru s ����������������ra �<lambda>z?update_malware_history.<locals>.async_wrapper.<locals>.<lambda>� s� �� �N�-� � � ��l�l���T�� "��� ,�m� � &�:�� $�)� � $�)�� �e�� ��� ��� ��� &�:�� (�K�� ,�m�� ��� *�\�!� � )r �ROOTr �asyncio�get_event_loop��clsre rf rg rh ri rr rk rj rl rm rn rs rt ru ro �kwargsry �coros ``````````````` @�ra � async_wrapperz-update_malware_history.<locals>.async_wrapper� s+ ������������������ � � �( �t�� ��!��%��0�8�=��'����� � � � � � � � � � � �� ��"�$�$� � � � � � � � � � � � � � � � � � � � � � � � � � � � �* � r{ c �� �� �| f||||pt j ||| | |||d�|��}t j di d|j �d|�d|�d|�d|�d|�d|�d |�d | �d| �d|�d |�d| �d|�d|�d|�� |S )N)re rf rg ri rj rk rl rm rn ro rh rq re rj rk rf rg ri rr rl rm rn rs rt ru ro rh rv )r r| rH rw rx r s �ra �wrapperz'update_malware_history.<locals>.wrapper� s6 �� �( ��� ��!���0�8�=��'�����%� � � � � �� �!� � � ��,�,� ��� � �X� � (�-� � "�z� � �i� � �i� � �%� � �G� � �G� � �G� � "�z� � $�� � (�-� � �G� � &��! � �$ � r{ )NNNNNNNNNNN)� functools�wrapsr} �iscoroutinefunction)r� r� r� s ` ra �update_malware_historyr� � s� �� � �_�T��� �����������!8� 8� 8� 8� 8� ��8�t �_�T��� �����������!5� 5� 5� 5� 5� ��5�n $�7��=�=�J�=�=�7�Jr{ c �<