Latest Posts »
Latest Comments »
Popular Posts »

Fragmentation of Datagrams

Written by The Geekette on July 9, 2006 – 6:40 pm
Posted in Networking |

Fragmentation occurs if the IP must send a datagram that is large than is allowed by the receive window in the network layer. This process will break up a datagram into smaller packets and then it will be restored when received by the other end. This is a normal and very important process. Each packet is marked with a length, an offset and a more bit.

Length = Total length of the fragment
Offset - distance from the beginning of the original datagram
More bit = used to determine if there are other packets after that one. 1 indicates there is another packet which is part of that set. 0 indicates it is the last packet of the set.

IPID = 043C   Length = 3,600   Offset = 0

Fragmented (Normal)

More = 1
Len = 1,000
Offset = 0
     
  More = 1
Len = 1,000
Offset = 1,000
   
    More = 1
Len = 1,000
Offset = 2,000
 
      More = 0
Len = 600
Offset = 3,000

When the packets are manipulated so that they overlap (shown below) instead of following in order one after another (above) it can crash the computer. The teardrop attack is a good example of an exploit that will overlap packets. The packets can also be manipulated so that instead of overlapping, there is too much space between them as well.

Overlapping Fragment Attack

More = 1
Len = 1,000
Offset = 0
     
  More = 1
Len = 1,000
Offset = 500
   
        More = 0
Len = 1,000
Offset = 1,500

§


Email This Post Email This Post | Print This Post Print This Post |


Leave a Comment

Girl Geekette uses Thank Me Later

By submitting a comment here you grant this site a perpetual license to reproduce your words and name/web site in attribution.