Penetration Testing mailing list archives

Re: Multiple Spoofed HTTP Requests


From: Kaj Huisman <kaj.huisman () gmail com>
Date: Sat, 03 Sep 2005 19:29:09 +0200

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
-------------------------------------------------------------------------------


Current thread: