Files
NeoTachyon/docs/knowledge-base/16_BYEDPI_CIADPI_REFERENCE.md
T

3.7 KiB
Raw Blame History

16. Справочник по ByeDPI (ciadpi): SOCKS5/TProxy десинхронизация

1. Архитектура и принцип работы ByeDPI (ciadpi)

ciadpi (ByeDPI) — это легковесный локальный прокси-сервер (SOCKS5 / Transparent TCP), который принимает исходящий трафик и выполняет фрагментацию и манипуляцию пакетами на сокетовом уровне (L7/L4).

Ключевое отличие от Zapret:

  • Zapret работает через перехват NFQUEUE (L3/L4 фильтрация ядра).
  • ByeDPI работает как SOCKS5 прокси (по умолчанию порт 4539 в Tachyon) или прозрачный прокси, модифицируя TCP payload непосредственно перед системным вызовом send()/write().

2. Основные параметры командной строки ByeDPI

2.1. Фрагментация (--split / -s)

  • --split <позиция> или -s <позиция>
  • Значения позиции:
    • 1 — сплит на 1-м байте payload.
    • 2 — сплит на 2-м байте.
    • 1+sniext — сплит в начале блока TLS SNI расширений.
    • midsld — сплит посередине SLD домена.

2.2. Изменение порядка сегментов (--disorder / -d)

  • --disorder <позиция> или -d <позиция>
  • Отправляет первый сегмент с задержкой или после второго сегмента (out-of-order delivery).

2.3. Инжекция фейковых пакетов (--fake / -f и --ttl / -t)

  • --fake <смещение> или -f <смещение> — смещение вставки фейкового пакета (-1 = перед началом реального запроса).
  • --ttl <N> или -t <N> — Time-To-Live для фейковых пакетов (обычно 4..8 в зависимости от провайдера).

2.4. Out-of-Band данные (--oob / -o)

  • --oob <смещение> или -o <смещение> — отправка одного срочного байта TCP OOB (Urgent Pointer) на указанном смещении. Ломает разбор буфера в DPI, заставляя его пропустить пакет.

2.5. Автоматический режим (--auto / -a)

  • --auto=t,r,a,s
  • Адаптивный режим подбора: ByeDPI автоматически пробует комбинации флагов при обнаружении сброса соединения или таймаута:
    • t — TLS Record splitting
    • r — Reverse disorder
    • a — Auto-ttl
    • s — Simple split

2.6. Дополнительные опции

  • --tlsrec <N> / -r <N> — деление одного ClientHello на несколько независимых TLS Records.
  • --ip-frag — включение фрагментации на уровне IP.
  • --mod-http / -M — модификация HTTP заголовков (манипуляция Host/символами переноса строки).

3. Рецепты ByeDPI

1. Универсальный адаптивный авто-режим

-o 2 --auto=t,r,a,s -d 2

2. Disorder + Fake с контролем TTL

--split 1 --disorder 1 --fake -1 --ttl 8

3. SNI Extension Split + Fake

-s 1+sniext -f -1 -t 6

4. Агрессивный низко-TTL фейк

--fake -1 --ttl 4 --disorder 1 --split 1