Статья [Вирусология] Пишем винлокер на Python

fres

Премиум

fres не предоставил(а) никакой дополнительной информации.
Мы с вами напишем локер для компьютера, на базе Windows или UNIX систем. Наша программа будет блокировать систему пользователя, пока он не введет пароль. В простонародье данный вирус называют "WinLocker".

Переходим на официальный сайт Python - . Скачиваем последнюю версию и устанавливаем ее.

Наш вирус будет работать по такому принципу: Программа открывается на весь экран,у нее нет кнопки закрыть. Доступно поле для ввода пароля и кнопка для разблокировки. Пока жертва не введет правильный пароль, мышка будет постоянно кликать на кнопку, и переводить туда курсор. Это будет мешать пользователю свернуть окно или убить его через диспетчер задач. Так же будет таймер отсчитывающий время до удаления системы. На самом деле, он ничего не удалит, но хорошо припугнут жертву и например заставит скорее перевести деньги. По истечении времени таймер сменится на надпись - "Удаление системы" Вот и вся суть программы)

Начинаем кодить.
Комментарии к коду будут помечены #комментарий

Для написания вы можете использовать обычный IDLE от питона, или любой другой. Для начала мы должны к нашей программе подключить нужные нам библиотеки.
*Библиотека - написанные коды/функции, которые подключаются к нашей программе.
1678583625522.jpeg
Но при запуске нам выдаст ошибку, указывающую на отсутствие библиотек pyautogui и pygame. Они не являются стандартными и их нужно установить. Для этого выполняем действия как на видео(через систему для установки пакетов мы ставим нужные нам библиотеки)

Видео 1 - (обновление pip)
Видео 2 - (установка pyautogui)
Видео 3 - (установка pygame)

ДАЛЬШЕ МЫ ЗАДАДИМ ПЕРЕМЕННЫЕ, КОТОРЫЕ МЫ БУДЕМ ИСПОЛЬЗОВАТЬ
pLq1HDGYlq8.jpg

Почти в самом начале мы должны создать функции. Которые будут отвечать за блокировку компьютера и за проверку на ввод правильного пароля. Сначала создаем функцию блокировки компьютера.
woFFOOIx324.jpg

Теперь мы создаем функцию, которая проверяет, введен ли правильный пароль.
1678583711368.jpeg
Дальше мы должны создать окно нашего локера,которое откроется на весь экран.
Пожалуйста , Вход или Регистрация to view codes content!
Теперь мы создадим объекты для нашей программы - кнопку,поле для ввода и надписи
Пожалуйста , Вход или Регистрация to view codes content!
У нас есть кнопка и она должна что-то делать. В нашем случае при нажатии на кнопку будет выполняться проверка на правильность пароля.
1678583826968.png
До этого мы просто создали переменные с объектами,а теперь эти объекты нужно отобразить/отрисовать на экране. (используем функцию .place(), которая принимает значения x и y - координаты)
1678583860959.jpeg
В winlock-ерах принято оставлять сообщения с информацией,требованием перевода денег. Я решил, что оставлять текстовое сообщение - слишком банально, и при запуске нашего вируса будет проигрываться голосовое сообщение. Голосовое сообщение я сделал с помощью этого сервиса - . Музыка/сообщение должно быть в формате .wav, можно использовать конвертеры.
1678583886504.jpeg
Дальше мы должны обновить наш экран и выполнить нажатие на поле для ввода
1678583936894.jpeg
Теперь мы должны запустить цикл, который будет работать,пока от пользователя мы не получим правильный пароль.
1678583968077.jpeg
Компилируем в exe При запуске программы(F5) все будет работать, но распространять код и установщик питона, это явно не лучший вариант. Поэтому мы наш код скомпилируем в exe файл. Для этого мы через pip установить специальную программу. Смотрим видео.
Видео -
После в папке dist появится наш код скомпилированный в EXE. У него есть 2 минуса
1. Большой вес, исправить можно удалив голосовое сообщение и заодно отключить импорт pygame.
2. Долгий запуск, это происходит из за сбора всех файлов в один. Наш exe можно назвать архивом, который распаковывается в временную папку. Этого можно избежать не собирая все в один файл.
!!!ВАЖНО если вы добавили голосовое сообщение и скомпилировали программу, файл с звуком(message.wav) должен лежать рядом с EXE иначе программа крашнется.
Вот мы и написали наш простой локер, да диспетчер задач и комбинации alt+tab будут работать, но из-за постоянных кликов - убить процесс практически невозможно. Наш вирус не будет палится антивирусами, ведь им не на что реагировать. В нашей программе нету взаимодействия с системой пользователя.
НЕБОЛЬШОЙ СЛОВАРЬ ТЕРМИНОВ:
IDLE/IDE - среда для разработки программного обеспечения.
Библиотека/модуль - написанные коды/функции,которые подключаются к нашей программе.
pip - система для установки пакетов(Для Python).
Переменная - ячейка в памяти,которая имеет свое уникальное название и может хранить определенную информацию
Функция - часть кода, который имеет свое уникальное название по которому его можно запустить/вызвать
Цикл - действие, которое будет повторятся N-ное количество раз и может зависит
 
Сверху Снизу