Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Initial Sequence Number generation in Linux TCP stack

What is the procedure for generating the Initial Sequence Numbers (ISN) in LINUX tcp/ip protocol. I know the procedure for ISN generation in the LINUX kernels 2.4 to 2.6 that are described in pages 7 & 8 of Embedding Covert Channels into TCP/IP. I have searched for similar procedures in later kernels, but to my dismay I couldn't find any. I understand that much details may not be available for obvious reasons related to security. As I'm verifying the possibilities of implementing a similar steganography scheme(as described in the link) in the later Linux kernels, I am badly in need of some information. Any help is appreciated.

like image 583
sjsam Avatar asked Sep 01 '12 21:09

sjsam


1 Answers

Read my answer here: Most efficient way to manipulate ISN numbers in TCP headers

This algorithm is used on the latest kernel TCP Stack (3.5).

EDIT : See image below to see all concerned kernels versionsenter image description here

EDIT2 : See the sources of the kernel for older versions of the function secure_tcp_sequence_number:

Kernel 2.4.22

Kernel 2.6.30

Kernel 2.6.39

Kernel 3.0

Kernel 3.1 : (MD5 has replaced half-MD4)

like image 62
TOC Avatar answered Oct 20 '22 01:10

TOC