Mikrotik Port Knocking by ICMP
Вступление:
Данный вариант отличается от классического тем, что вместо определенных портов будем использовать ICMP-пакеты различного размера. Это проще сделать стандартными средствами ОС и труднее поддается анализу при перехвате трафика, так как не столь бросается в глаза.
Несмотря на стандартный размер MTU в 1500 байт, это значение может быть уменьшено при использовании VLAN, VPN и т.д., поэтому не стоит использовать пакеты размером более 1000 байт, также надо помнить размер заголовков ICMP-пакета в 28 байт.
Правила для Микротика:
%KEY1% - размер первого пакета + 28(заголовок)
%KEY2% - размер второго пакета + 28(заголовок)
Например ключем будет 20-40, тогда %KEY1% = 48, а %KEY2% = 68
#1 - First step rule
/ip firewall filter add action=add-src-to-address-list address-list=ICMPKNOCK-1 address-list-timeout=30s chain=input packet-size=%KEY1% protocol=icmp
#2 - Second step rule
/ip firewall filter add action=add-src-to-address-list address-list=ICMPKNOCK-ACCEPT address-list-timeout=1m chain=input packet-size=%KEY2% protocol=icmp src-address-list=ICMPKNOCK-1
#3 - Allow to connect
/ip firewall filter add action=accept chain=input dst-port=8291 protocol=tcp src-address-list=ICMPKNOCK-ACCEPT
Как постучать:
Windows
ping XXX.XXX.XXX.XXX -l 20 -n 1
ping XXX.XXX.XXX.XXX -l 40 -n 1
Linux
ping XXX.XXX.XXX.XXX -s 20 -c 1
ping XXX.XXX.XXX.XXX -s 40 -c 1
Вывод:
Если все правильно то в течении 1 минуты мы сможем прицепиться к WinBox’у с нашего IP.