nfqws: synack desync mode

This commit is contained in:
bol-van
2021-04-07 12:13:46 +03:00
parent 8229bcc98b
commit fe8cada8ae
14 changed files with 99 additions and 23 deletions

View File

@@ -187,7 +187,7 @@ nfqws
--hostnospace ; убрать пробел после "Host:" и переместить его в конец значения "User-Agent:" для сохранения длины пакета
--hostspell=HoST ; точное написание заголовка Host (можно "HOST" или "HoSt"). автоматом включает --hostcase
--domcase ; домен после Host: сделать таким : TeSt.cOm
--dpi-desync=<mode>[,<mode2] ; атака по десинхронизации DPI. mode : fake rst rstack disorder disorder2 split split2
--dpi-desync=[<mode0>,]<mode>[,<mode2] ; атака по десинхронизации DPI. mode : synack fake rst rstack disorder disorder2 split split2
--dpi-desync-fwmark=<int|0xHEX> ; бит fwmark для пометки десинхронизирующих пакетов, чтобы они повторно не падали в очередь. default = 0x40000000
--dpi-desync-ttl=<int> ; установить ttl для десинхронизирующих пакетов
--dpi-desync-fooling=none|md5sig|ts|badseq|badsum ; дополнительные методики как сделать, чтобы фейковый пакет не дошел до сервера
@@ -297,16 +297,33 @@ mark нужен, чтобы сгенерированный поддельный
Но лучше его все же оставить для увеличения скорости.
Почему --connbytes 1:4 :
1 - для работы параметра wssize. scaling factor обычно устанавливается инициатором соединения в SYN пакете
1 - для работы методов десинхронизации 0-й фазы и wssize
2 - иногда данные идут в 3-м пакете 3-way handshake
3 - стандартная ситуация
4 - для надежности. на случай, если выполнялась одна ретрансмиссия
КОМБИНИРОВАНИЕ МЕТОДОВ ДЕСИНХРОНИЗАЦИИ
В параметре dpi-desync можно указать 2 режима через запятую.
В параметре dpi-desync можно указать до 3 режимов через запятую.
0 фаза предполагает работу на этапе установления соединения. Может быть synack.
На 0 фазу не действует фильтр по hostlist.
Последующие режимы отрабатывают на пакетах с данными.
Режим 1-й фазы может быть fake,rst,rstack. Режим 2-й фазы может быть disorder,disorder2,split,split2.
Может быть полезно, когда у провайдера стоит не один DPI.
РЕЖИМ SYNACK
В документации по geneva это называется "TCB turnaround". Попытка ввести DPI в заблуждение относительно
ролей клиента и сервера.
!!! Поскольку режим нарушает работу NAT, техника может сработать только с устройства с внешним IP адресом.
Для реализации атаки в linux обязательно требуется отключить стандартное правило firewall,
дропающие инвалидные пакеты. Например : -A FORWARD -m state --state INVALID -j DROP
В openwrt это делается через опцию в /etc/config/firewall :
config zone
option name 'wan'
.........
option masq_allow_invalid '1'
В противном случае попытка отослать SYN,ACK сегмент вызовет ошибку и операция будет прервана.
Остальные режимы тоже не сработают. Если поймете, что вам synack не нужен, обязательно верните правило дропа INVALID.
ВИРТУАЛЬНЫЕ МАШИНЫ
Изнутри VM от virtualbox и vmware в режиме NAT не работают многие техники пакетной магии nfqws.
Принудительно заменяется ttl, не проходят фейк пакеты. Необходимо настроить сеть в режиме bridge.