Альтернативный способ записи IP-адресов

Наверное, некоторые знают такую штуку, но думаю, далеко не все.

Как мы все знаем, адрес IPv4 представляет собой 32-битное число. Традиционно IP-адрес записывается в виде 4-х октетов, разделенных точкой, в десятичной системе счисления. Например: 77.88.21.8.
Однако существуют и другие, менее распространенные варианты записи.

Во-первых, каждый из 4-х октетов можно записать в восьмеричной или шестнадцатеричной системах счисления:
77.88.21.8 = 0x4d.0x58.0x15.0x8 = 0115.0130.025.010, или даже можно смешивать 77.88.0×15.010.

Во-вторых, адрес можно записывать в виде числа:
77 * 2563 + 88 * 2562 + 21 * 2561 + 8 * 256О = 1297618184.
Аналогично п.1 это число можно записывать в восьмеричной и шестнадцатеричной системах счисления: 1297618184 = 011526012410 = 0x4D581508.

Честно говоря, не нашел RFC, в котором описываются эти форматы, но это работает везде: в браузере, команде ping и т.д. Попробуйте сами.

0x42.0x66.0x0d.0x63
0x42660d63
1113984355
00000102.00000146.00000015.00000143

Щёлкаете по любому из вариантов — и попадаете на google.com.

Эта техника была известна давно, но сейчас про неё как будто забыли. Хуже всего, что про неё забыли некоторые производители антивирусного ПО, который фильтрует почтовый трафик на предмет опасных ссылок. Они блокируют ссылку в нормальном виде, но пропускают 8-, 16- или 32-ричный IP-адрес.

Результат налицо: уже замечен банковский троян, в котором реанимированы эти старые математические трюки.

Кстати, чем не идея для киберсквоттеров. Можно найти кучу красивых м свободных адресов в 32-битном разряде, например.

(источник habrahabr.ru )

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *