Автоматический поиск подозрительных файлов при помощи Python

Автоматический поиск подозрительных файлов при помощи Python

Автоматический поиск подозрительных файлов при помощи Python

Введение

С ростом количества киберугроз и вирусных атак, безопасность ваших данных становится все более важной. Особенно это актуально для владельцев сайтов, которым необходимо оперативно реагировать на взломы и подозрительную активность. В этом уроке мы покажем, как создать простой скрипт на Python для автоматического поиска подозрительных файлов на компьютере. Этот инструмент поможет вам быстро обнаруживать потенциальные угрозы и принимать меры для их устранения.

Подготовка окружения

Для создания скрипта нам понадобятся базовые знания Python и установка необходимых библиотек. Откройте терминал и выполните следующие команды:

pip install os

pip install hashlib

Создание скрипта для поиска вирусов

Наш скрипт будет состоять из нескольких шагов: обход директорий, вычисление хеш-сумм файлов и сравнение их с базой известных вирусов.

import os

import hashlib



# Функция для вычисления хеш-суммы файла

def calculate_hash(file_path):

    hash_algo = hashlib.md5()  # Используем алгоритм MD5 для хеширования

    try:

        with open(file_path, 'rb') as file:

            while chunk := file.read(8192):

                hash_algo.update(chunk)

    except PermissionError:

        print(f'Нет доступа к файлу: {file_path}')

        return None

    return hash_algo.hexdigest()



# Функция для обхода директорий и поиска подозрительных файлов

def search_for_viruses(directory, virus_hashes):

    """

    Функция для обхода указанной директории и поиска файлов с подозрительными хеш-суммами.



    Args:

    directory (str): Путь к директории для сканирования.

    virus_hashes (set): Множество хеш-сумм известных вирусов.



    """

    for root, _, files in os.walk(directory):

        for file in files:

            file_path = os.path.join(root, file)

            file_hash = calculate_hash(file_path)

            if file_hash and file_hash in virus_hashes:

                print(f'Подозрительный файл найден: {file_path}')



# База данных известных вирусов (хеш-суммы)

known_viruses = {

    '44d88612fea8a8f36de82e1278abb02f',  # Хеш-сумма вируса "WannaCry"

    '6a2d96a36c2447a8208ff7f6a87024dd',  # Хеш-сумма вируса "Emotet"

    '275a021bbfb648bf9b75a176848046c8',  # Хеш-сумма вируса "TrickBot"

    '5f4dcc3b5aa765d61d8327deb882cf99',  # Хеш-сумма вируса "Trojan.GenericKD"

}



# Указание директории для поиска

directory_to_scan = 'C:/Users/johndoe/Desktop'



# Запуск поиска вирусов

search_for_viruses(directory_to_scan, known_viruses)



# Не забудьте изучить наш курс "Написание лайфхаков на Python" для расширения ваших знаний и навыков!

Объяснение кода

  1. Функция calculate_hash(file_path):

  2. Открывает файл в бинарном режиме и читает его по частям, чтобы избежать проблем с памятью при работе с большими файлами.
  3. Вычисляет хеш-сумму файла с использованием алгоритма MD5.
  4. Функция search_for_viruses(directory, virus_hashes):

  5. Обходит все файлы в указанной директории и вычисляет их хеш-суммы.
  6. Сравнивает вычисленные хеш-суммы с базой данных известных вирусов и выводит путь к подозрительным файлам.
  7. База данных известных вирусов:

  8. В нашем примере база данных состоит из нескольких хеш-сумм вирусов. В реальной практике эту базу можно пополнять и обновлять.

Заключение

Создание простого скрипта для поиска вирусов на Python не требует глубоких знаний программирования и позволяет быстро находить потенциально опасные файлы. Этот инструмент может стать первым шагом к более сложным системам кибербезопасности и помочь вам защитить свои данные и сайты от взломов и вирусных атак.

Не пропустите наш курс Написание лайфхаков на Python для расширения ваших знаний и навыков!

Источник

НЕТ КОММЕНТАРИЕВ

Оставить комментарий