Re: Multiple Spoofed HTTP Requests

From: Kaj Huisman (kaj.huisman@gmail.com)
Date: Sat Sep 03 2005 - 13:29:09 EDT


kuffya@gmail.com wrote:
> Hi list, I've used a variety of tools such as Nemesis, Packet
> Xcalibur & Libnet GUI to craft customized packets. Using such tools,
> you can create packets at layers 2 up to 5 possibly spoofing your
> source IP, port numbers or whatever you see fit. The question is :
> Would it be possible to craft a HTTP request(or multiple requests)
> using a spoofed IP address? I'm inclined to consider that it's not,
> the reason being you must have a 3-way handshake established before
> you can start talking application layer protocols (such as HTTP). If
> you use a spoofed IP address, then there's no way of doing that. On
> the other hand, I might be totally wrong, that's why I'm asking the
> list, for the list is wise. If, however, it is possible could you
> please give me some directions on how to do it?
>
> Thanks a lot S.
>

Theoretically it is possible, practically it is unlikly to find a device
that is vulnerable.

The attack is due to something allready described in 1989 by Steve
Belovin in his 'Security Problems in the TCP/IP Protocol Suite'.
quoted:
"One of the more fascinating security holes was first described by
Morris[7]. Briefly, he used TCP sequence number prediction to construct
a TCP packet sequence without ever receiving any responses from the
server. This allowed him to spoof a trusted host on a local network."

<blunt>
code might look like:
send syn
wait (guessed_rtt)
untill (predicted_count) { send syn-ack+predicted_count; repeat }
contine proc untill all date (request) is sent.
</blunt>

If your calculations serve you correct one of the packets will be valid.

There are a couple of obstacles besides the obvious that you cannot see
the responses from the server.
1. Current day systems use non-predictable sequence numbers.
Nmap does predictions when using the -O option.
# nmap -O 192.168.0.3
[..]
TCP Sequence Prediction: Class=random positive increments
                          Difficulty=3480899 (Good luck!)
TCP ISN Seq. Numbers: 10FE9D2 17A073D B855E2 9CC74D 11C4BCC B1711C
[..]

2. Given the above, you would have to send alot of packets, which would
be very (very) noisy.

3. If the above are good you would have to make sure no error packets
are sent from the spoofed source address.

Certain attacks have taken place using this technique.
Mitnick used it against Tsutomu (be it with a different protocol than http).

References
http://www.cs.columbia.edu/~smb/papers/
http://www.securityfocus.com/print/infocus/1674

G'Day
Kaj

------------------------------------------------------------------------------
Audit your website security with Acunetix Web Vulnerability Scanner:

Hackers are concentrating their efforts on attacking applications on your
website. Up to 75% of cyber attacks are launched on shopping carts, forms,
login pages, dynamic content etc. Firewalls, SSL and locked-down servers are
futile against web application hacking. Check your website for vulnerabilities
to SQL injection, Cross site scripting and other web attacks before hackers do!
Download Trial at:

http://www.securityfocus.com/sponsor/pen-test_050831
-------------------------------------------------------------------------------



This archive was generated by hypermail 2.1.7 : Sat Apr 12 2008 - 10:54:49 EDT