Python盗号原理-代码实现截屏键盘记录远程发送(不要做坏事)
这年头盗号的从出不穷,不是脱裤就是社工钓鱼。今天呢我们就以前面的几篇技术文章做铺垫,来讲一下python盗号的原理(学习用途,请勿用于违法犯罪),知己知彼方能百战不殆嘛。
脱裤我们就不多提了,无非就是过滤不严谨导致的sql注入,或者数据库存储不安全,这个本篇文章暂且不说,当然有感兴趣的,我后面的文章或许也会讲讲。

最简单的,也是技术手段相对较低的盗号方式当属钓鱼了(当然,社工更考验心理),除了钓鱼网站,就是发布某些带有诱惑性的工具,诱导消费者下载,运行后开启后门,或者启用钩子进行键盘记录。本篇文章我们就来讲一讲技术的实现。
环境拓扑:
操作系统:windows7
python版本:2.7.14
主要库/模块:smtplib/pyHook/PIL/pythoncom等
设计思路:
1.启用Hook,进行键盘的监听(当然鼠标坐标也可以监控,这不作为本节课的重点)
2.获取title标签/标题内容(比如说:新建文本文档)
3.设置敏感标题(这点很重要,我们只需要对特定敏感的标题进行记录,不然从一开始就记录键盘值那会很乱)
4.发现敏感标题(类似于QQ邮箱、微博、英雄联盟等网页标题)
5.发现标题后进行记录,当用户按回车或者Tab的时候进行截图发送
重点函数/方法:
.find() 寻找关键字
time.strftime('%Y%m%d%H%M%S',time.localtime(time.time())) 时间点
ImageGrab.grab() 截图
hm = pyHook.HookManager() 创建hook
注:判断回车 空格 回删 Tab键 可以对照ascii码表来判断

(键盘ascii对照表)
好做完前期的思想铺垫后,我们开始上代码部分。
代码实现:
用到的库模块

(用到的类库)
第一部分:发送邮件部分

(邮件发送代码)
注:截图功能在下面介绍,这只是流程
第二部:设置按键触发事件

(按键截图)

(启动函数)
完成上面的一切之后我们就可以来测试一下了,我们先打开网易邮箱测试下效果~

(启动)
这是启动效果,当然你可以把这些debug提示都去掉,鄙人是为了测试好用,在CMD下运行的所以会有黑框显示,这个不作为难点。
我们打开网易的163进行登录,下面的是后台debug显示,也就是我们程序的运行效果。

(后台显示)
我们再来看我们的邮箱收到了什么:

(完美)
小编有自己也建了一个学习交流的地方:719+139+688,大家如果有什么疑问或者不理解的地方可以在群里面交流。无论是大神还是小白,小编都欢迎,而且还为正在学习中的小伙伴们准备了一份学习礼包,帮助各位学习。
好啦,这就是我们今天所将的内容了,么么哒伙计们,感谢支持!大家有什么问题都可以一起来学习。
Python盗号原理-代码实现截屏键盘记录远程发送(不要做坏事)的更多相关文章
- 使用Python中PIL图形库进行截屏
目的:通过使用Python的一个图形库PIL(Python Image Library)对屏幕进行截图 步骤: 1.下载PIL(路径)并安装 2.新建文件“截屏.py”,右键Edit with IDL ...
- 小胖说事22-----iOS开发技巧之取消键盘响应和截屏功能
1.UILable内容模糊 在非Retina的iPad mini 的屏幕上,一个UILable的frame的origin值假设是有小数位(如0.5),就会造成显示模糊,所以不妨用整数值的origin. ...
- iOS中的截屏(屏幕截屏及scrollView或tableView的全部截屏)
iOS中的截屏(屏幕截屏及scrollView或tableView的全部截屏) 2017.03.16 12:18* 字数 52 阅读 563评论 4喜欢 2 1. 截取屏幕尺寸大小的图片并保存至相册 ...
- Selenium | 基础入门 | 截屏并保存于本地
可先参考 Selenium | 基础入门 | 利用Xpath寻找用户框 核心代码: //截屏操作 File srcFile = ((TakesScreenshot)driver).getScree ...
- C语言实现截屏
实现手机控制电脑执行部分功能需要获取桌面状态,在网上找的一段截屏代码 /** * GDI 截屏函数 * 参数 hwnd 要截屏的窗口句柄 * 参数 dirPath 截图存放目录 * 参数 filena ...
- Android8.1 MTK平台 截屏功能分析
前言 涉及到的源码有 frameworks\base\services\core\java\com\android\server\policy\PhoneWindowManager.java vend ...
- Python: 截屏
最近项目中想实现截屏功能,使用的笔记本是高清屏,实际屏幕设置成了150%,所以在截屏的时候遇到个各种问题. 最开始使用PIL ImageGrab来截取屏幕,如果本来是100%的设置没有问题,能截取到全 ...
- Python 实现网页截屏、查库、发邮件
本文介绍了使用 Python(2.7版本)实现网页截屏.查库.发邮件的 demo.用到了 selenium.phantomjs.mailer.jinja2.mysqldb 还有 image,都是比较典 ...
- Android 长截屏原理
https://android-notes.github.io/2016/12/03/android%E9%95%BF%E6%88%AA%E5%B1%8F%E5%8E%9F%E7%90%86/ a ...
随机推荐
- Oracle复合B*tree索引branch block内是否包含非先导列键值?
好久不碰数据库底层细节的东西,前几天,一个小家伙跑来找我,非要说复合b*tree index branch block中只包含先导列键值信息,并不包含非先导列键值信息,而且还dump了branch b ...
- Centos系统运行nodejs
这里我们需要先搭建一下运行的环境,直接yum安装就可以了! [root@iZwz9f80ph5u8tlqp6pi9cZ ~]# yum -y install nodejs 这里我们的环境就搭好了!安装 ...
- Sublime Text3 运行Python 出现Error:Decode error - output not utf-8
问题描述: Sublime Text 3 在build Python时,如果python源代码输出有中文,例如"print('中文')",Sublime Text 会报 [Deco ...
- Text-鼠标点击事件
from tkinter import * import webbrowser master=Tk() text=Text(master,width=50,height=20) text.pack() ...
- Java知识体系纲要
最近一段时间,把Java主要涉及到的大概念都大致学习了一遍,为了让自己能够更好地形成对Java知识体系的整体把握,先把学过的知识点添加到自己画的思维导图上. 整个Java知识体系的划分,我自己主要将它 ...
- 用js来实现那些数据结构05(栈02-栈的应用)
上一篇文章我们一起实现了栈,那么这一篇文章我们一起来用栈解决问题.看看如何用栈来解决进制转换,平衡圆括号以及汉诺塔问题,使我们对栈有更为深入的理解. 1.进制转换 我们先来看看十进制如何转换成二进制, ...
- 学习React系列(九)——高阶函数
定义:高阶组件就是一个函数,且该函数接收一个组件作为参数,并返回一个新的组件. (上一篇已经说过了高阶组件可以用来解决交叉问题) 一.不要改变原始组件,使用组合 class A extends Rea ...
- jQuery系列 第四章 jQuery框架的选择器
第四章 jQuery框架的选择器 4.1 jQuery选择器说明 jQuery 最核心的组成部分就是选择器引擎.它完全继承了 CSS 的风格,可以对 DOM 元 素的标签名.属性名.状态等进行快速准确 ...
- ASP.NET MVC5 实现基于Quartz.NET任务调度
工作之余.技术?.记是不可能记住的. 只有写点东西 才能维持得了生活这样子的.好早就像写一篇关于任务调度的文章.终究是太懒了 一.Quartz.NET介绍 Quartz.NET是一个强大.开源.轻量的 ...
- Mybatis-简单基于源码了解获取动态代理对象
这是我们要测试的代码 OderDao就是我们要需要获取的对象. 首先我们根据传入的参数,进入SqlSessionFactoryBuilder 中的对应的build 方法,第一步创键XMLConfigB ...