Skip to main content

Source Routing



There are two types of Source Routing possible in IP packet.


Loose Source and Record Route 
The loose source and record route (LSRR) option provides a means for the source of an internet datagram to supply routing information to be used by the gateways in forwarding the datagram to the destination, and to record the route information.

MAC headerIP headerIP option 3Data :::

IP Option 3:
0001020304050607080910111213141516171819202122232425262728293031
TypeLengthPointerRoute [] :::

Type. 8 bits. Always set to 131.
0001020304050607
CClassOption

 C, Copy flag. 1 bit. Set to 1.
Indicates the option is to be copied into all fragments.

Class. 2 bits. Cleared to 0.
The option is a control option.

Option. 5 bits. Set to 3.
The IP option number.

Length. 8 bits.
Total length of the option in bytes.

Pointer. 8 bits.

Route []. Variable length.
An array of 32 bit IP addresses.


Strict Source and Record Routes
The strict source and record route (SSRR) option provides a means for the source of an internet datagram to supply routing information to be used by the gateways in forwarding the datagram to the destination, and to record the route information.The recorded route address is the internet module's own internet address as known in the environment into which this datagram is being forwarded.This procedure of replacing the source route with the recorded route (though it is in the reverse of the order it must be in to be used as a source route) means the option (and the IP header as a whole) remains a constant length as the datagram progresses through the internet.This option is a strict source route because the gateway or host IP must send the datagram directly to the next address in the source route through only the directly connected network indicated in the next address to reach the next gateway or host specified in the route.Must be copied on fragmentation. Appears at most once in a datagram.

MAC headerIP headerIP option 9Data :::

IP Option 9:
0001020304050607080910111213141516171819202122232425262728293031
TypeLengthPointerRoute Data [] :::

Type. 8 bits. Set to 137.
0001020304050607
CClassOption

C, Copy flag. 1 bit. Set to 1.
Indicates the option is to be copied into all fragments.

Class. 2 bits. Cleared to 0.
This is a control option.

Option. 5 bits. Set to 9.
The IP option number.
Length. 8 bits.
Total length of the option.

Pointer. 8 bits. 4 to 255
The pointer into the route data indicates the byte which begins the next source address to be processed. The pointer is relative to this option.

If the address in destination address field has been reached and the pointer is not greater than the length, the next address in the source route replaces the address in the destination address field, and the recorded route address replaces the source address just used, and pointer is increased by four.


Route Data []. Variable length.
A route data is composed of a series of internet addresses. Each internet address is 32 bits. If the pointer is greater than the length, the source route is empty (and the recorded route full) and the routing is to be based on the destination address field.

Comments

Popular posts from this blog

Install Virtual Box On Kali Rolling

If you facing problem with virtualbox installation on kali rolling edition because of its outdated kernel 4.3.0-kali1-amd64 then this post is for you only.

Step1: Install latest kernel. First search the cache for list of available ones apt-cache search linux-headers
Depending upon the list choose one from the set and install install it.
you can download kernel file using wget from ubuntu source also.
example:wget kernel.ubuntu.com/~kernel-ppa/mainline/v4.4.3-wily/linux-image-4.4.3-040403-generic_4.4.3-040403.201602251634_amd64.deb
for more refer to this post: link

Step2:
Edit the boot entry /boot/vmlinuz-(New Linux kernel Version) & /boot/initrd.img-(New Linux kernel version) in grub menu.

Before making boot entry changes be sure these files exist in the /boot directory after running install command.
In my case following new file got created in /boot folder:

1)vmlinuz-4.6.0-kali1-amd64
2)initrd.img-4.6.0-kali1-amd64

Thats all you need to do to install any virtual software on kali r…

Hacking Windows 10 UWP App: DLL Injection & common Vulnerabilities

I recently started working on  widows 10 Apps( Apps not Applications) security. Before diving deep in hacking terms lets try to understand what's new in Windows 10 UWP( Universal Platform) as compared to old Apps. Lets begin with how apps actually work on windows 10(desktop/tablet). Now windows 10 comes with a container only for running apps inside the isolated environment. By default, /APPCONTAINER(Linker Flag) is off. This option modifies an executable to indicate whether the app must be run in the appcontainer process-isolation environment. Specify /APPCONTAINER for an app that must run in the appcontainer environment—for example, a Windows Store app. (The option is set automatically in Visual Studio when you create a Windows Store app from a template.) For a desktop app, specify /APPCONTAINER:NO or just omit the option. The /APPCONTAINER option was introduced in Windows 8.
Now there is no registry entry concept for these app in the System HIVE rather they install they own hiv…

Assignment 01(Enroll TO Offensive-Security Course)

Steps 1:download the page.
2:open fc4.js in your favourite editor and add following lines in it or just replace it with vode given below.
3:then open the download html file in browser and fill the form with your email and a garbage value string.
4:thats it? it will show you the real security string??
yeah but  ...theirs another challenge waiting for you ... :D

function fc4me(srvstr) {

   if(!document.pleazfc4me.email.value || !document.pleazfc4me.securitystring.value) {
      alert("Please fill in all the required fields!");
      return false;
   }
   else {
      document.pleazfc4me.submit();
    }
   var t=hexMD5("\x74\x72\x79\x68\x61\x72\x64\x65\x72"+srvstr)
alert(t)
document.write(t)
}



Finally Got In :-)