From 561e5e27180ad0f9b68adf41d4647a55c2c5d07a Mon Sep 17 00:00:00 2001 From: bol-van Date: Tue, 16 Dec 2025 18:15:55 +0300 Subject: [PATCH] update docs --- docs/manual.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/manual.md b/docs/manual.md index 1ee458c..06c9e07 100644 --- a/docs/manual.md +++ b/docs/manual.md @@ -2264,7 +2264,7 @@ function apply_fooling(desync, dis, fooling_options) ``` function rawsend_dissect_ipfrag(dis, options) ``` -Отправить диссект dis с фрагментацией, заданной в `options.ipfrag`. Если отсутствует - отправить без фрагментации. +Отправить диссект dis с IP фрагментацией, заданной в `options.ipfrag`. Если отсутствует - отправить без фрагментации. Использует кастомную функцию фрагментатор, если указано `options.ipfrag.ipfrag`. Отсылает фрагменты в обратном порядке, если указано `options.ipfrag.ipfrag_disorder`. @@ -2272,8 +2272,8 @@ function rawsend_dissect_ipfrag(dis, options) function rawsend_dissect_segmented(desync, dis, mss, options) ``` -Отправить диссект dis с автоматической сегментацией на базе mss с применением `options.fooling` и `options.ipid`. -ipid применяется к каждому фрагменту. +Отправить диссект dis с автоматической tcp сегментацией на базе mss с применением `options.fooling` и `options.ipid`. +ipid применяется к каждому фрагменту. Для udp сегментация невозможна и не выполняется. ``` function rawsend_payload_segmented(desync, payload, seq, options) @@ -2298,7 +2298,7 @@ function ipfrag2(dis, ipfrag_options) Отдельно вызывать эту функцию вряд ли понадобится. Если вам нужно резать IP пакет как-то иначе, вы можете по аналогии создать свой фрагментатор и указать его в ipfrag_options. -В случае ipv6 fragment headers вставляется после всех hopbyhop, routing и первого destopt. Это unfragmentable part. +В случае ipv6 fragment header вставляется после всех hopbyhop, routing и первого destopt. Это unfragmentable part. Дальше идет fragment header, а все остальное после него является fragmentable part. Unfragmentable part передается в каждом фрагменте с измененными полями fragment header, остальное режется поверх всего блока данных за fragment header согласно смещению фрагмента. @@ -2306,3 +2306,5 @@ Unfragmentable part передается в каждом фрагменте с По стандарту в случае ipv6 фрагментации next протокол берется только из первого фрагмента с offset=0. В остальных фрагментах он не обязан совпадать и игнорируется. Это известная и описанная в статьях penetration атака, позволяющая пробить некоторые фаерволы. ipfrag2 реализует эту возможность на двух фрагментах через указание параметра ipfrag_next. +Некоторые фаерволы пробиваются только большим количество фрагментов - для этого потребуется своя функция фрагментатор. +