mirror of
https://github.com/bol-van/zapret.git
synced 2025-12-18 13:14:38 +03:00
update docs
This commit is contained in:
@@ -25,6 +25,7 @@ zapret является свободным и open source.
|
|||||||
- [МОДИФИКАЦИЯ ФЕЙКОВ](#модификация-фейков)
|
- [МОДИФИКАЦИЯ ФЕЙКОВ](#модификация-фейков)
|
||||||
- [TCP СЕГМЕНТАЦИЯ](#tcp-сегментация)
|
- [TCP СЕГМЕНТАЦИЯ](#tcp-сегментация)
|
||||||
- [ПЕРЕКРЫТИЕ SEQUENCE NUMBERS](#перекрытие-sequence-numbers)
|
- [ПЕРЕКРЫТИЕ SEQUENCE NUMBERS](#перекрытие-sequence-numbers)
|
||||||
|
- [НАЗНАЧЕНИЕ IP_ID](#назначение_ip_id)
|
||||||
- [СПЕЦИФИЧЕСКИЕ РЕЖИМЫ IPV6](#специфические-режимы-ipv6)
|
- [СПЕЦИФИЧЕСКИЕ РЕЖИМЫ IPV6](#специфические-режимы-ipv6)
|
||||||
- [МОДИФИКАЦИЯ ОРИГИНАЛА](#модификация-оригинала)
|
- [МОДИФИКАЦИЯ ОРИГИНАЛА](#модификация-оригинала)
|
||||||
- [ДУБЛИКАТЫ](#дубликаты)
|
- [ДУБЛИКАТЫ](#дубликаты)
|
||||||
@@ -207,6 +208,7 @@ dvtws, собираемый из тех же исходников (см. [док
|
|||||||
--methodeol ; добавить перевод строки в unix стиле ('\n') перед методом и убрать пробел из Host: : "GET / ... Host: domain.com" => "\nGET / ... Host:domain.com"
|
--methodeol ; добавить перевод строки в unix стиле ('\n') перед методом и убрать пробел из Host: : "GET / ... Host: domain.com" => "\nGET / ... Host:domain.com"
|
||||||
--hostspell=HoST ; точное написание заголовка Host (можно "HOST" или "HoSt"). автоматом включает --hostcase
|
--hostspell=HoST ; точное написание заголовка Host (можно "HOST" или "HoSt"). автоматом включает --hostcase
|
||||||
--domcase ; домен после Host: сделать таким : TeSt.cOm
|
--domcase ; домен после Host: сделать таким : TeSt.cOm
|
||||||
|
--ip_id=seq|seqgroup|rnd|zero ; режим назначения ip_id для генерированных пакетов
|
||||||
--dpi-desync=[<mode0>,]<mode>[,<mode2] ; атака по десинхронизации DPI. mode : synack syndata fake fakeknown rst rstack hopbyhop destopt ipfrag1 multisplit multidisorder fakedsplit hostfakesplit fakeddisorder ipfrag2 udplen tamper
|
--dpi-desync=[<mode0>,]<mode>[,<mode2] ; атака по десинхронизации DPI. mode : synack syndata fake fakeknown rst rstack hopbyhop destopt ipfrag1 multisplit multidisorder fakedsplit hostfakesplit fakeddisorder ipfrag2 udplen tamper
|
||||||
--dpi-desync-fwmark=<int|0xHEX> ; бит fwmark для пометки десинхронизирующих пакетов, чтобы они повторно не падали в очередь. default = 0x40000000
|
--dpi-desync-fwmark=<int|0xHEX> ; бит fwmark для пометки десинхронизирующих пакетов, чтобы они повторно не падали в очередь. default = 0x40000000
|
||||||
--dpi-desync-ttl=<int> ; установить ttl для десинхронизирующих пакетов
|
--dpi-desync-ttl=<int> ; установить ttl для десинхронизирующих пакетов
|
||||||
@@ -537,6 +539,25 @@ Windows оставляет старые данные, поэтому disorder с
|
|||||||
В варианте `disorder` допустимо применение всех вариантов маркеров.
|
В варианте `disorder` допустимо применение всех вариантов маркеров.
|
||||||
Они автоматически нормализуются к текущему пакету в серии. Можно сплитать на `midsld` и делать seqovl на `midsld-1`.
|
Они автоматически нормализуются к текущему пакету в серии. Можно сплитать на `midsld` и делать seqovl на `midsld-1`.
|
||||||
|
|
||||||
|
### НАЗНАЧЕНИЕ IP_ID
|
||||||
|
|
||||||
|
Некоторые DPI секут поле ipv4 заголовка ip_id. Защита заключается в распознавании нехарактерного для разных ОС порядка назначения ip_id,
|
||||||
|
но характерного для некоторого anti-DPI софта. Обычно ОС инкрементируют ip_id для каждого следующего пакета.
|
||||||
|
Например, на ТСПУ повторение ip_id фейка и не фейка вызывает триггер блока на диапазонах IP googlevideo.com.
|
||||||
|
|
||||||
|
Если отсылаются фейки или дополнительные tcp сегменты, то в любом случае последовательность будет нарушена, поскольку ОС ничего не будет знать о всунутых фейках
|
||||||
|
и не увеличит свой счетчик ip_id на количество фейков или дополнительных tcp сегментов.
|
||||||
|
Чтобы сохранить последовательность, потребовалось бы перехватывать все соединение до конца, что очень затратно по ресурсам.
|
||||||
|
Поэтому после отработки серии генерированных пакетов ip_id возвращается к тому значению, о котором знает ОС.
|
||||||
|
|
||||||
|
Параметр `ip_id` относится к профилю и задает режим назначения ip_id при отсылке генерированных в nfqws пакетов.
|
||||||
|
|
||||||
|
* `seq` (по умолчанию) : взять последний ip_id реального пакета. последующие генерированыне пакеты получают увеличенные на 1 ip_id, кроме случая `multidisorder`.
|
||||||
|
для `multidisorder` в пределах сегментов, где есть сплит-позиции, значение ip_id увеличивается на количество частей, затем уменьшается на 1 с каждой отосланной частью.
|
||||||
|
* `seqgroup` : то же, что и `seq`, но фейки того же размера, что и оригинальные сегменты, и максирующиеся под оригинал получают те же ip_id.
|
||||||
|
* `rnd` : всем генерированным пакетам назначать случайный ip_id
|
||||||
|
* `zero` : всем генерированным пакетам назначать ip_id=0 . в этом случае Linux и BSD отошлют 0, Windows назначит последовательные ip_id всем пакетам.
|
||||||
|
|
||||||
### СПЕЦИФИЧЕСКИЕ РЕЖИМЫ IPV6
|
### СПЕЦИФИЧЕСКИЕ РЕЖИМЫ IPV6
|
||||||
|
|
||||||
Режимы десинхронизации `hopbyhop`, `destopt` и `ipfrag1` (не путать с fooling !) относятся только к ipv6 и заключается
|
Режимы десинхронизации `hopbyhop`, `destopt` и `ipfrag1` (не путать с fooling !) относятся только к ipv6 и заключается
|
||||||
|
|||||||
Reference in New Issue
Block a user