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:
@@ -1927,6 +1927,20 @@ function posdebug(ctx, desync)
|
||||
|
||||
Вывести в debug log информацию о текущих conntrack позициях по прямому и обратному направлению.
|
||||
|
||||
### detect_payload_str
|
||||
|
||||
```
|
||||
function detect_payload_str(ctx, desync)
|
||||
```
|
||||
|
||||
-- arg: pattern - подстрока для поиска в desync.dis.payload
|
||||
-- arg: payload - присвоить это значение desync.l7payload в случае наличия подстроки
|
||||
-- arg: undetected - если присутствует, присвоить это значение desync.l7payload в случае отсутствия подстроки
|
||||
|
||||
Пример простейшего протокольного детектора. Ищется подстрока pattern в пейлоаде, в случае нахождения присваивает desync.l7payload = desync.arg.payload , иначе если есть desync.arg.undetected, присваивает desync.l7payload = desync.arg.undetected.
|
||||
|
||||
Подобного рода протокольные детекторы не имеют никакой силы для C кода. Он ничего не знает о вашем протоколе и вашем типе пейлоада. Ваше значение нельзя указать в параметре `--payload`. Но можно использовать [payload фильтры](#standard-payload) многих [desync функций](#библиотека-программ-атаки-на-dpi).
|
||||
|
||||
### desync_orchestrator_example
|
||||
|
||||
```
|
||||
@@ -2623,6 +2637,8 @@ function replay_execution_plan(desync)
|
||||
|
||||
Дополнительные фильтры по направлению и пейлоаду внутри функций anti-dpi сделаны в основном на случай не слишком грамотного написания опций командной строки как дополнительный предохранитель и защита от дурака, чтобы сделать флуд как это было в winws1 с `--dpi-desync-any-protocol` непреднамеренно было непросто.
|
||||
|
||||
Другая цель - дать возможность фильтрации по протоколам, о которых C код не знает и которые обнаруживаются LUA детекторами, такими как [detect_payload_str](#detect_payload_str).
|
||||
|
||||
В nfqws2 по умолчанию стоит запрет на передачу входящих (`--in-range=x`), неограниченная передача исходящих (`--out-range=a` ) и пропуск любых пейлоадов (`--payload=all`), что соответствуют поведению nfqws1 с опцией `--dpi-desync-any-protocol`. В nfqws1 все атаки были зашиты в C код, поэтому было известно какие техники работают с какими пейлоадами. Каким-то нужны были любые пакеты, в том числе пустые, а другим - только tls hello или http request.
|
||||
|
||||
nfqws2 ничего не знает о том, что нужно `--lua-desync` функциям. Поэтому фильтрация направления и типа пейлоадов ложится целиком на вас. По умолчанию стоит запрет только на входящие, потому что они используются редко, а пользователь может не написать ограничение, и все это пойдет на LUA функции и будет напрасно грузить процессор гигабайтами скачиваемого трафика.
|
||||
|
||||
Reference in New Issue
Block a user