mirror of
https://github.com/bol-van/zapret2.git
synced 2026-03-14 06:13:09 +00:00
update docs
This commit is contained in:
@@ -266,6 +266,7 @@
|
||||
- [Особенности Windows](#особенности-windows)
|
||||
- [Windows 7](#windows-7)
|
||||
- [Windows Server](#windows-server)
|
||||
- [Windows ARM64](#windows-arm64)
|
||||
|
||||
# Введение
|
||||
|
||||
@@ -4022,9 +4023,8 @@ function oob(ctx, desync)
|
||||
- Для протоколов, в которых в самом начале сервер ждет запроса от клиента, требуется разрешение входящих в пределах `--in-range=-s1`. В Windows `--wf-tcp-in` не нужен. Достаточно автоматически перехватываемых SYN. К таким протоколам относятся http и tls.
|
||||
- Для протоколов, где сервер что-то шлет до первого сообщения от клиента, требуется разрешить все входящие пакеты до отсылки первого исходящего пакета с данными. В Windows `--wf-tcp-in` обязателен.
|
||||
- Не может быть отфильтровано по пейлоаду, поскольку после начала модификации tcp handshake соскок уже невозможен, иначе поедут sequence.
|
||||
- Фильтрация по хостлистам невозможна ни в каком виде, даже при `--ipcache-hostname`. Если начал - закончи или не начинай. Это главное правило oob. Никаких решений по отмене ни по каким условиям.
|
||||
- oob - длящаяся десинхронизация. Если возможно переключение профилей до момента окончания работы oob, oob должен быть дублирован в другой профиль, иначе TCP будет сломан из-за десинхронизации sequence.
|
||||
- Функция помечает специальный флаг, что была вызвана с самого начала соединения. Если управление получено после перескока профиля, происходит немедленный cutoff.
|
||||
- Фильтрация по хостлистам возможна только при `--ipcache-hostname`. Если в кэше хоста еще нет, и профиль получает управление не с начала соединения, срабатывает предыдущий пункт.
|
||||
- Не может работать с функциями, предполагающими отправку текущего пейлоада - multisplit, multidisorder, fakedsplit, fakeddisorder и тд. Они будут работать, но будут слать дубль без OOB. Ожидаемый результат "разбить на сегменты и всунуть OOB" как в tpws получить таким образом невозможно.
|
||||
- Если пейлоад [многопакетный](#особенности-приема-многопакетных-пейлоадов) - отсылается весь [reasm](#особенности-приема-многопакетных-пейлоадов). OOB вставляется в тот сегмент, куда попал urp.
|
||||
В этом сегменте th_urp нормализуется по смещению сегмента, выставляется флаг TH_URG. Остальные части шлются как есть. Функция дропает весь replay, затем уходит в [cutoff](#instance_cutoff) по обоим направлениям.
|
||||
@@ -5395,3 +5395,16 @@ windivert 2.2.2-A, который идет в поставке zapret.
|
||||
winws2 слинкован с wlanapi.dll, который по умолчанию не установлен в Windows Server.
|
||||
Для решения этой проблемы запустите power shell под администратором и выполните команду `Install-WindowsFeature -Name Wireless-Networking`.
|
||||
После чего перезагрузите систему.
|
||||
|
||||
## Windows ARM64
|
||||
|
||||
Главная проблема - отсутствие подписанного windivert драйвера. Поэтому требуется включение режима тестовой подписи : `bcdedit /set {current} testsigning on`.
|
||||
Неподписанный драйвер WinDivert64.sys есть в комплекте [zapret-win-bundle](https://github.com/bol-van/zapret-win-bundle).
|
||||
Там же есть и батник для наката драйвера на Win11 arm64.
|
||||
|
||||
Другая проблема - отсутствие cygwin для платформ, отличных от x86. Однако, win11 содержит эмуляцию x64, поэтому можно использовать билд для x64, но с замененным драйвером WinDivert64.sys.
|
||||
DLL при этом менять не нужно - только sys.
|
||||
|
||||
На win10 arm64 нет эмуляции x64, но есть эмуляция x86 32 бит.
|
||||
Теоретически можно использовать вариант win32 и положить рядом драйвер WinDivert64.sys для arm64. Этот вариант не проверялся.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user