From e3e7449d745e0bc37431f61514ce2dad2db2f113 Mon Sep 17 00:00:00 2001 From: bol-van Date: Thu, 21 Nov 2024 10:44:52 +0300 Subject: [PATCH] doc works --- docs/readme.md | 27 ++++----------------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/docs/readme.md b/docs/readme.md index a47b862..94d437c 100644 --- a/docs/readme.md +++ b/docs/readme.md @@ -424,29 +424,10 @@ DPI может отстать от потока, если ClientHello его у В документации по geneva это называется "TCB turnaround". Попытка ввести DPI в заблуждение относительно ролей клиента и сервера. -!!! Поскольку режим нарушает работу NAT, техника может сработать только если между атакующим устройством + +Поскольку режим нарушает работу NAT, техника может сработать только если между атакующим устройством и DPI нет NAT. Атака не сработает через NAT роутер, но может сработать с него. -Для реализации атаки в linux обязательно требуется отключить стандартное правило firewall, -дропающее инвалидные пакеты в цепочке OUTPUT. Например : `-A OUTPUT -m state --state INVALID -j DROP` -В openwrt можно отключить drop INVALID в OUTPUT и FORWARD через опцию в /etc/config/firewall: - -``` -config zone -option name 'wan' -......... -option masq_allow_invalid '1' -``` - -К сожалению, отключить только в OUTPUT таким образом нельзя. Но можно сделать иначе. Вписать в `/etc/firewall.user`: - -``` -iptables -D zone_wan_output -m comment --comment '!fw3' -j zone_wan_dest_ACCEPT -ip6tables -D zone_wan_output -m comment --comment '!fw3' -j zone_wan_dest_ACCEPT -``` - -Лучше делать так, потому что отсутствие дропа INVALID в FORWARD может привести к нежелательным утечкам пакетов из LAN. -Если не принять эти меры, отсылка SYN,ACK сегмента вызовет ошибку и операция будет прервана. -Остальные режимы тоже не сработают. Если поймете, что вам synack не нужен, обязательно верните правило дропа INVALID. +Для реализации атаки на проходящий трафик требуются nftables и схема [POSTNAT](#nftables-для-nfqws). ### РЕЖИМ SYNDATA @@ -480,7 +461,7 @@ conntrack - простенький, он не писался с учетом в `--wssize` позволяет изменить с клиента размер tcp window для сервера, чтобы он послал следующие ответы разбитыми на части. Чтобы это подействовало на все серверные ОС, необходимо менять window size в каждом исходящем с клиента пакете до отсылки сообщения, -ответ на который должен быть разбит (например, TLS ClientHello). Именно поэтому и необходим conntrack, чтобы +ответ на которое должен быть разбит (например, TLS ClientHello). Именно поэтому и необходим conntrack, чтобы знать когда надо остановиться. Если не остановиться и все время устанавливать низкий wssize, скорость упадет катастрофически. В linux это может быть купировано через connbytes, но в BSD системах такой возможности нет. В случае http(s) останавливаемся сразу после отсылки первого http запроса или TLS ClientHello.