Наборы конфигураций (Sets)
Наборы конфигураций (Sets) — ключевая функция B4, позволяющая применять разные стратегии обхода DPI для разных доменов и IP-адресов.

Концепция
Вместо единой глобальной конфигурации B4 позволяет создавать несколько независимых наборов настроек. Каждый набор содержит:
- Targets — список доменов и IP, к которым применяется набор
- TCP — параметры обработки TCP-соединений, разделения пакетов и фейковых пакетов (3 подвкладки: General, Splitting, Faking)
- UDP & QUIC — параметры обработки UDP/QUIC
- DNS — настройки DNS-обхода
- Import/Export — импорт и экспорт конфигурации
Зачем нужны разные наборы
Разные сервисы могут требовать разных стратегий обхода:
| Сервис | Рекомендуемая стратегия |
|---|---|
| YouTube | TCP фрагментация + drop QUIC |
| Discord | Минимальная фрагментация |
| Telegram | GeoIP категории + faking |
| Торренты | UDP fake mode |
Подробнее о том, почему DPI применяется по-разному от сайта к сайту, от провайдера к провайдеру, можно почитать в отдельной статье.
Порядок обработки (Matching)
B4 перебирает и сопоставляет наборы сверху вниз по списку:
- Для каждого соединения B4 извлекает домен (из SNI) и/или IP назначения
- Проверяет каждый набор по порядку
- Первый набор, чьи цели (
targets) совпадают — применяется - Если ни один не совпал — используется Main Set
Соединение: youtube.com
↓
[Set #1: Discord] → targets: discord.com → НЕ совпадает
↓
[Set #2: YouTube] → targets: youtube, googlevideo → СОВПАДАЕТ ✓
↓
Применяются настройки Set #2
Размещайте более специфичные наборы выше в списке. Общие наборы (например, ru-blocked) — ниже.
Пользуйтесь кнопками перемещения сетов вниз-вверх
Менеджер наборов
Доступ: Settings → Sets
Интерфейс списка
Каждый набор в списке отображает:
| Элемент | Описание |
|---|---|
| Переключатель | Включение/отключение набора |
| Номер/MAIN | Позиция в порядке обработки |
| Название | Имя набора |
| Счётчик | Количество доменов/IP в targets |
| SNI badge | Индикатор включённого SNI faking |
| Карточки | Краткая сводка TCP/UDP настроек |
Действия с наборами
| Действие | Описание |
|---|---|
| Переместить вверх/вниз | Изменить приоритет обработки |
| Дублировать | Создать копию набора |
| Редактировать | Открыть редактор |
| Удалить | Удалить набор (кроме Main) |
Main Set
Main Set — особый набор, который:
- Нельзя удалить
- Используется как fallback для трафика без совпадений
- Рекомендуется оставлять с минимальными настройками
Создание набора
- Нажмите Create New Set
- Введите название (например, "YouTube Bypass")
- Настройте параметры во вкладках
- Нажмите Save Changes
Новый набор создаётся с настройками по умолчанию, оптимизированными для большинства случаев.
Сет, добавленный в список еще не находится в конфигурации сервиса. Не забудьте применить сохранение вверху страницы после добавления сета!
Редактор набора
Редактор содержит пять вкладок: Targets, TCP (с подвкладками General, Splitting, Faking), UDP & QUIC, DNS и Import/Export.
Targets — Цели
Определяет, к какому трафику применяется набор.
Bypass Domains (Домены)
Manual Domains — ручной ввод доменов:
youtube.com
googlevideo.com
Поддомены будут автоматически покрыты, если вы добавите общий домен. То есть совпадение пройдет для поддомена sub2.sub1.example.com если в сет вы добавите example.com.
GeoSite Categories — категории из geosite.dat:
- Выберите категорию из выпадающего списка
- Клик по чипу категории показывает превью доменов
- Отображается количество доменов в категории
Bypass IPs (IP-адреса)
Manual IPs — ручной ввод IP/CIDR:
142.250.0.0/16
208.65.153.238
Поддерживается:
- Одиночный IP:
1.2.3.4 - CIDR-диапазон:
10.0.0.0/8 - Несколько через запятую или пробел
GeoIP Categories — категории из geoip.dat:
- Двухбуквенные коды стран:
ru-blocked,ru - Специальные:
cloudflare,google,facebook
Скорее всего у вас не настроены файлы geodata. Настройте их в настройках сервиса в соотвествующем разделе.
TCP — Настройки TCP
TCP-вкладка объединяет все параметры обработки TCP-соединений и техники обхода DPI. Вкладка разделена на три подвкладки:
| Подвкладка | Содержание |
|---|---|
| General | Основные параметры: лимиты соединения, задержки, удаление SACK, дупликация пакетов |
| Splitting | Стратегии разделения пакетов (TCP, IP, TLS, OOB фрагментация) |
| Faking | Все техники обмана DPI: фейковые пакеты, SYN fake, desync, манипуляция окном, мутация |

Как работает TCP-обработка в B4
Когда B4 перехватывает TCP-пакет, направленный на целевой домен/IP, он может:
- Разделить пакет — фрагментация на уровне TCP, IP или TLS (подвкладка Splitting)
- Отправить фейковые пакеты — поддельные пакеты перед настоящими (подвкладка Faking)
- Манипулировать TCP Window — фейковые ACK с разными размерами окна (подвкладка Faking)
- Применить Desync-атаку — инжекция фейковых TCP control-пакетов (подвкладка Faking)
Все эти техники применяются только к первым N байтам соединения (параметр Connection Bytes Limit), после чего трафик идёт без вмешательства.
General — Основные параметры
| Параметр | Что делает | Типичные значения |
|---|---|---|
| Connection Bytes Limit | Сколько первых байт соединения обрабатывать | 19 / 32 |
| Segment 2 Delay | Задержка между 1-м и 2-м сегментами (мс) | 0–100 ms |
| Drop SACK Options | Удаляет TCP SACK-опции из заголовка | off |
| Packet Duplication | Отправка нескольких копий каждого исходящего TCP-пакета | off |

Connection Bytes Limit
B4 применяет фрагментацию, desync и фейкинг только к первым N байтам потока. Остальная часть соединения идёт «как есть», без вмешательства. Это:
- снижает нагрузку на CPU
- уменьшает риск странных багов на длинных соединениях
Рекомендуемые значения:
19— минимально агрессивный вариант, достаточен для большинства случаев32–64— когда нужно обработать больше данных в начале соединения
- Значение
Connection Bytes Limitв сете не может быть больше, чем в MAIN Set.MAINзадаёт глобальный верхний предел для всех сетов. - Изменения параметра в
MAINтребует обязательного рестарта B4.
Segment 2 Delay
Искусственная задержка перед отправкой второго TCP-сегмента:
- Может повысить эффективность обхода DPI
- Слишком большие значения увеличивают задержку соединения
- агрессивный обход:
20–80 ms; - чувствительные к задержкам сервисы (игры, голос, Discord):
0–10 msили вообще0.
Drop SACK Options
Selective ACK помогает TCP восстанавливать потерянные пакеты. Удаление SACK-опций может помочь при обходе некоторых DPI.
- Может немного снизить производительность на линиях с потерями
Packet Duplication
При включении B4 отправляет несколько копий каждого исходящего TCP-пакета. Это помогает обойти провайдеров, которые случайным образом дропают пакеты к определённым IP-адресам (например, Telegram).
- Создайте отдельный сет с целевыми IP
- Включите Packet Duplication и задайте количество копий (
2–5обычно достаточно) - Используется вместо остальных техник обхода DPI для этого сета
- Расходует дополнительный трафик пропорционально количеству копий
UDP — Настройки UDP и QUIC
UDP-вкладка управляет обработкой UDP-трафика, включая QUIC-протокол (HTTP/3). Основная задача — либо заблокировать QUIC для принудительного fallback на TCP, либо применить DPI bypass техники к UDP-пакетам.
Как работает UDP-обработка в B4
UDP-обработка состоит из двух этапов:
- Matching — определение, какой UDP-трафик обрабатывать (QUIC, конкретные порты)
- Action — что делать с matched трафиком (drop или fake)
Этап 1: Какой трафик обрабатывать
| Параметр | Описание | По умолчанию |
|---|---|---|
| QUIC Filter | Режим фильтрации QUIC-пакетов | disabled |
| Port Filter | Фильтр по destination портам | пусто |
| Filter STUN | Игнорировать STUN-пакеты | true |
QUIC Filter
QUIC — это сетевой протокол на базе UDP, используемый YouTube, Google, Cloudflare и другими. Многие DPI не умеют анализировать QUIC, поэтому его блокируют целиком.
| Режим | Описание |
|---|---|
| Disabled | QUIC не обрабатывается, проходит как есть |
| All | Все QUIC Initial пакеты (слепое сопоставление по структуре, все подряд) |
| Parse | Только QUIC с SNI из списка доменов сета (умное сопоставление) |
- Disabled — используйте, если QUIC не блокируется провайдером
- All — агрессивный режим, ловит весь QUIC
- Parse — точечный режим, требует настроенных доменов в Targets
В режиме Parse без настроенных доменов в Targets ничего не будет обработано. B4 парсит SNI из QUIC ClientHello и сверяет с вашим списком.
Port Filter
Фильтрация UDP по destination портам. Формат:
5000-6000,8000,9000-9100
Используйте для:
- VoIP (discord и тп)
- Онлайн-игры (зависит от игры)
- Кастомных UDP-сервисов
Если пусто — фильтрация по портам не производится.
Filter STUN
STUN используется для NAT traversal в VoIP и видеозвонках.
Рекомендуется оставить включённым — обработка STUN может сломать голосовую связь.
Этап 2: Что делать с выявленым трафиком
Эти настройки появляются только если QUIC Filter ≠ Disabled или задан Port Filter.
| Параметр | Описание | По умолчанию |
|---|---|---|
| Action Mode | Режим обработки | fake |
| Connection Packets Limit | Сколько первых пакетов соединения обрабатывать | 8 |
Action Mode
| Режим | Что происходит |
|---|---|
| Drop | Пакеты дропаются, приложение делает fallback на TCP |
| Fake | Перед реальным пакетом отправляются фейки + фрагментация |
Drop — простой и надёжный способ. YouTube, Discord, браузеры автоматически переключаются на HTTPS (TCP) если QUIC недоступен. Минус: теряется преимущество QUIC в скорости.
Fake — пытается обойти DPI для UDP. Сложнее, но сохраняет QUIC. Требует настройки фейковых пакетов.
Connection Packets Limit
Аналог TCP Connection Bytes Limit, но для UDP считается в пакетах, не байтах. B4 обрабатывает только первые N пакетов соединения.
5–8— рекомендуемое значение1–3— минимальная нагрузка, но может не хватить для пробития
- Значение
Connection Bytes Limitв сете не может быть больше, чем в MAIN Set.
MAINзадаёт глобальный верхний предел для всех сетов. - Изменения параметра в
MAINтребует обязательного рестарта B4.
Настройки Fake Mode
Появляются только при Action Mode = Fake.
| Параметр | Описание | По умолчанию |
|---|---|---|
| Faking Strategy | Как сделать фейковые пакеты невалидными | none |
| Fake Packet Count | Количество фейков перед реальным пакетом | 6 |
| Fake Packet Size | Размер payload фейкового пакета | 64 |
| Segment 2 Delay | Задержка между сегментами (мс) | 0 |
Faking Strategy
| Стратегия | Описание |
|---|---|
| None | Без стратегии (фейки могут дойти до сервера) |
| TTL | Низкий TTL — пакеты не дойдут до сервера |
| Checksum | Битый UDP checksum — сервер отбросит |
- TTL — безопаснее, работает в большинстве сетей
- Checksum — альтернативный вариант, но может фильтроваться на пути
Начните с TTL. Если не помогает — попробуйте Checksum.
Fake Packet Count
Количество фейковых пакетов, отправляемых перед каждым реальным пакетом.
3–6— базовый уровень10–20— агрессивный режим (больше нагрузки)
Fake Packet Size
Размер payload фейкового UDP-пакета в байтах.
64— небольшие пакеты, меньше нагрузки256–512— имитация реального трафика1200–1400— близко к MTU, максимальная имитация
UDP: Segment 2 Delay
Задержка между фрагментами/сегментами в миллисекундах.
0— без задержки10–50 ms— лёгкий desync100+ ms— заметно влияет на latency
Типичные сценарии
| Сценарий | Рекомендуемые настройки |
|---|---|
| YouTube блокируется через QUIC | QUIC Filter: All, Mode: Drop |
| YouTube + сохранить QUIC | QUIC Filter: Parse, Mode: Fake, Strategy: TTL |
| Discord голос лагает | Filter STUN: On, низкий Seg2 Delay |
| Gaming UDP заблокирован | Port Filter: порты игры, Mode: Fake |
| Ничего не блокируется | QUIC Filter: Disabled |
UDP bypass сложнее TCP — нет handshake, нет retransmit. Если Fake не работает стабильно, Drop + fallback на TCP — надёжнее.
Splitting — Стратегия разделения пакетов
Эти настройки находятся во вкладке TCP → Splitting. Ранее они были в отдельной вкладке «Fragmentation».
Разделение пакетов — одна из ключевых техник обхода DPI. B4 поддерживает несколько стратегий разделения на разных уровнях сетевого стека.
Выбор стратегии
| Стратегия | Уровень разреза | Совместимость | Эффективность |
|---|---|---|---|
| TCP Segmentation | TCP | Высокая | Высокая |
| IP Fragmentation | IP | Средняя | Высокая |
| TLS Record Split | TLS | Высокая | Очень высокая |
| OOB (Out-of-Band) | TCP + URG | Средняя | Высокая |
| None | — | — | Только faking |
TCP Segmentation
Разбивает данные на уровне TCP. Один TCP-пакет превращается в 2–3 TCP-сегмента с разными порядковыми номерами.
Плюсы:
- Работает через NAT и файрволы
- Не требует особой поддержки от сети
- Сервер гарантированно соберёт данные
Минусы:
- Может не помогать против продвинутых DPI
IP Fragmentation
Разбивает пакет на уровне IP-протокола.
Плюсы:
- Эффективен против многих DPI
- Работает на более низком уровне, чем TCP
Минусы:
- Некоторые сети/NAT дропают фрагментированные пакеты
- Строгие MTU-лимиты могут вызвать проблемы
TLS Record Splitting
Разбивает один TLS record на два отдельных TLS record. Это происходит внутри TLS-протокола, не затрагивая TCP/IP.
Плюсы:
- Очень эффективен
- Полностью валидный TLS — сервер обязан поддерживать
- Не зависит от сетевой инфраструктуры
Минусы:
- Работает только для TLS handshake
- Некоторые broken middleboxes могут не понять
OOB (Out-of-Band)
Использует TCP URG (Urgent) механизм для инжекции дополнительного байта в поток данных.
Плюсы:
- Эффективен против многих DPI
- Работает на уровне TCP-протокола
Минусы:
- Старые middleboxes могут некорректно обрабатывать URG
- Некоторые серверы неправильно реализуют OOB
None
Фрагментация отключена. Пакеты отправляются как есть. Используйте, если полагаетесь только на Faking (фейковые пакеты).
Общие параметры
| Параметр | Описание | Применимость |
|---|---|---|
| Reverse Fragment Order | Отправить фрагменты в обратном порядке | TCP, IP, TLS, OOB |
Reverse Fragment Order
По умолчанию фрагменты отправляются в прямом порядке: сначала начало, потом конец. При включении Reverse Fragment Order:
Прямой порядок: Сегмент 1 → Сегмент 2 → Сегмент 3
Обратный порядок: Сегмент 2 → Сегмент 1 → Сегмент 3
Зачем:
- Изменяет порядок прибытия фрагментов
- TCP гарантирует сборку в правильном порядке по sequence number — на работу сервера не влияет
Включите Reverse Fragment Order по умолчанию. Это увеличивает шансы обхода без побочных эффектов.
Параметры TCP/IP стратегий
Эти параметры появляются при выборе TCP Segmentation или IP Fragmentation.
| Параметр | Описание | По умолчанию |
|---|---|---|
| SNI Split Position | Позиция разреза относительно начала SNI | 1 |
| Middle SNI | Резать посередине SNI автоматически | true |
SNI Split Position
Определяет, на какой позиции от начала SNI делать разрез.
SNI: youtube.com (11 символов)
^
позиция 0
SNI Position = 1: y|outube.com → "y" + "outube.com"
SNI Position = 3: you|tube.com → "you" + "tube.com"
SNI Position = 6: youtub|e.com → "youtub" + "e.com"
0— резать перед первым символом SNI1–3— резать в начале SNI- Большие значения — резать ближе к концу
Middle SNI
Если включено, B4 автоматически находит SNI в ClientHello и режет посередине, игнорируя SNI Split Position.
Когда использовать:
- Middle SNI = On — универсальный вариант, работает для любых доменов
- Middle SNI = Off — если нужен точный контроль через
SNI Split Position
Если Middle SNI включён, SNI Split Position используется как fallback, если SNI не найден в пакете.
Параметры OOB стратегии
Появляются при выборе OOB (Out-of-Band).
| Параметр | Описание | По умолчанию |
|---|---|---|
| OOB Position | Позиция инжекции OOB-байта (в байтах) | 1 |
| OOB Character | Символ для OOB-данных | x |
OOB Position
Определяет, после скольких байт payload вставить OOB-байт.
Payload: [ClientHello...youtube.com...]
^
позиция 0
OOB Position = 1: [C][OOB][lientHello...youtube.com...]
OOB Position = 50: [ClientHello...yout][OOB][ube.com...]
OOB Character
Байт, который будет отправлен с URG-флагом. Сервер его отбросит, но DPI увидит.
- По умолчанию:
x(0x78) - Можно использовать любой символ
- Не влияет на эффективность bypass — важен сам факт URG-флага
Параметры TLS стратегии
Появляются при выборе TLS Record Splitting.
| Параметр | Описание | По умолчанию |
|---|---|---|
| TLS Record Split Position | Позиция разреза внутри TLS record (байты) | 1 |
TLS Record Split Position
Определяет, после скольких байт данных handshake разрезать TLS record.
TLS Record: [Header 5 байт][Handshake data N байт]
^
позиция 0
Split Position = 1:
Record 1: [Header][1 байт]
Record 2: [Header][остальные N-1 байт]
Split Position = 50:
Record 1: [Header][50 байт — начало ClientHello]
Record 2: [Header][остальное — включая SNI]
Рекомендации:
1–10— агрессивный split в начале handshake50–100— split ближе к SNI (зависит от размера ClientHello)- Слишком большое значение автоматически корректируется до
recordLen / 2
Рекомендации по выбору
| Ситуация | Рекомендуемая стратегия |
|---|---|
| Не знаю, что выбрать | TCP + Middle SNI + Reverse |
| TCP не помогает | TLS Record Split |
| Нужна максимальная совместимость | TCP Segmentation |
| TCP и TLS не помогают | OOB или TLS + Desync (подвкладка Faking) |
| Полагаюсь только на faking | None |
Splitting эффективнее в связке с Faking (подвкладка TCP → Faking).
Faking — Фейковые пакеты и обход DPI
Эти настройки находятся во вкладке TCP → Faking. Ранее часть из них была в отдельной вкладке «Faking», а часть — в основной вкладке TCP.
Faking — это техника отправки поддельных пакетов перед настоящими. DPI видит фейк, пытается его обработать, сбивается с толку — а настоящий пакет проходит незамеченным.
Подвкладка Faking содержит шесть сворачиваемых секций. Каждая секция показывает свой текущий статус (включена/выключена) без необходимости её раскрывать:
- Fake SNI Packets — отправка фейковых пакетов с поддельным
ClientHello - SYN Fake Packets — фейковые SYN-пакеты при TCP-рукопожатии
- TCP Desync Attack — инжекция фейковых RST/FIN/ACK для сбоя state-tracking DPI
- Window Manipulation — фейковые ACK с манипулированным размером TCP-окна
- Incoming Response Bypass — обработка ответов сервера для обхода блокировки загрузок
- ClientHello Mutation — модификация структуры настоящего
ClientHello
Концепция фейковых пакетов
B4 отправляет поддельные пакеты перед настоящими. Фейковые пакеты специально делаются невалидными (низкий TTL, битый checksum, неправильный sequence number), чтобы сервер их отбросил, а настоящий пакет прошёл без проблем.
Fake SNI Packets
Управляет отправкой фейковых пакетов с поддельным TLS ClientHello.
| Параметр | Описание | По умолчанию |
|---|---|---|
| Enable Fake SNI | Включить отправку фейковых SNI-пакетов | true |
| Fake Strategy | Как сделать фейк невалидным для сервера | pastseq |
| Fake Payload Type | Содержимое фейкового пакета | Default |
| Fake TTL | Time-To-Live для фейковых пакетов | 8 |
| Sequence Offset | Смещение TCP sequence number | 10000 |
| Fake Packet Count | Количество фейков перед настоящим пакетом | 1 |
Enable Fake SNI
Главный переключатель. При включении B4 отправляет фейковые пакеты перед каждым настоящим ClientHello.
- Включено — фейки отправляются согласно настройкам ниже
- Выключено — только фрагментация (если настроена), без фейков
Fake Strategy
Определяет, как сделать фейковый пакет невалидным. Сервер должен его отбросить, а DPI — обработать.
| Стратегия | Как работает | Надёжность |
|---|---|---|
| TTL | Низкий TTL — пакет «умирает» не дойдя до сервера | Высокая |
| Past Sequence | Sequence number в прошлом — сервер игнорирует | Высокая |
| Random Sequence | Случайный sequence — сервер не может собрать поток | Средняя |
| TCP Checksum | Битый TCP checksum — сервер отбрасывает | Средняя |
| MD5 Sum | Неверная MD5 подпись (для TCP-MD5) | Низкая |
TTL (Time-To-Live)
Каждый IP-пакет имеет счётчик TTL. При прохождении через каждый роутер TTL уменьшается на 1. Когда TTL = 0, пакет уничтожается. Фейковый пакет с низким TTL не дойдёт до сервера.
8–12— универсальное значение для большинства сетей- Подбирайте экспериментально, если значение по умолчанию не работает
Past Sequence
Отправляет фейк с TCP sequence number в прошлом. Сервер игнорирует такие пакеты как устаревшие.
Random Sequence
Отправляет фейк со случайным sequence number далеко в будущем. Сервер не сможет вставить его в поток данных.
TCP Checksum
Намеренно портит TCP checksum. Сервер проверяет checksum и отбрасывает такой пакет.
MD5 Sum
Для соединений с TCP-MD5 (редко используется). Неверная MD5 подпись приводит к отбрасыванию пакета.
Fake Payload Type
Определяет содержимое фейкового пакета — что именно увидит DPI.
| Тип | Содержимое |
|---|---|
| Default | Предзаготовленный ClientHello с фейковым SNI (внутрненний payload B4) |
| Random | Случайные байты (мусор) |
| Custom | Ваш payload в hex-формате |
Default
B4 отправляет валидно выглядящий TLS ClientHello с фейковым доменом. DPI думает, что это реальное соединение к безобидному сайту.
Random
Случайные байты. Некоторые DPI при виде мусора сбрасывают состояние соединения.
Custom
Позволяет задать свой payload в hex-формате. Используйте функцию Capture для захвата реальных ClientHello.
Пример hex: 160301020001000...
Если Default и Random не работают, попробуйте захватить реальный ClientHello к любому доступному сайту через Capture, и использовать как Custom payload.
Fake TTL
Time-To-Live для фейковых пакетов. Используется только при Strategy = TTL.
5–10— стандартный диапазон, подходит для большинства сетей- Подбирайте экспериментально — слишком высокий TTL может вызвать ошибку соединения
Sequence Offset
Смещение TCP sequence number для стратегий Past Sequence и Random Sequence.
Для Past Sequence:
Реальный seq: 50000
Offset: 10000
Фейковый seq: 50000 - 10000 = 40000 (в прошлом)
Для Random Sequence:
Реальный seq: 50000
Offset: 10000
Фейковый seq: 50000 + 10000 + random = далеко в будущем
10000— стандартное значение50000–100000— если DPI отслеживает близкие sequence numbers
Faking Packet Count
Сколько фейковых пакетов отправить перед каждым настоящим пакетом.
Count = 1: [Фейк] → [Настоящий]
Count = 3: [Фейк1] → [Фейк2] → [Фейк3] → [Настоящий]
1— минимальная нагрузка, достаточно для большинства DPI3–5— если один фейк не помогает10–20— агрессивный режим (больше трафика)
Каждый фейк — это дополнительный пакет. Count = 10 означает 10x больше пакетов на handshake. Используйте минимально необходимое значение, по возможности
SYN Fake Packets
При включении B4 отправляет фейковые SYN-пакеты рядом с реальным TCP-рукопожатием. Фейки используют низкий TTL (не дойдут до сервера) и битый checksum или смещённый sequence number.
| Параметр | Что делает |
|---|---|
| SYN Fake Packets | Включает отправку фейковых SYN-пакетов во время TCP-рукопожатия |
| SYN Fake Payload Length | Длина payload в фейковом SYN (0 = только заголовок, >0 = псевдо-TLS) |
| SYN Fake TTL | TTL для фейковых SYN-пакетов |
| TCP MD5 Signature | Добавляет невалидную MD5-подпись в фейковые пакеты |
SYN Fake Payload Length:
0— только TCP-заголовок>0— добавляется payload, имитирующий начало TLS ClientHello
Если сервис начинает работать нестабильно (reset, таймауты) — отключите SYN Fake первым делом.
TCP Desync Attack
Desync-атака инжектирует фейковые TCP control-пакеты (RST/FIN/ACK) с битым checksum и низким TTL. Пакеты отбрасываются реальным сервером, но влияют на промежуточные системы анализа трафика.
| Параметр | Описание | По умолчанию |
|---|---|---|
| Desync Mode | Тип атаки | off |
| Desync TTL | TTL для фейковых пакетов | 3 |
| Desync Count | Количество фейковых пакетов за атаку | 3 |
| Post-ClientHello RST | Фейковый RST после ClientHello | off |
Режимы Desync:
| Режим | Что отправляется |
|---|---|
| off | Desync отключён |
| rst | Фейковые RST с разными sequence number |
| fin | Фейковые FIN+ACK с прошлыми sequence |
| ack | Фейковые ACK с рандомными future seq/ack |
| combo | RST + FIN + ACK последовательно |
| full | Полная атака: fake SYN, overlapping RST, PSH, URG |
Desync TTL: Низкий TTL гарантирует, что пакеты не дойдут до сервера. 3–8 — рекомендуемый диапазон.
Начните с combo и TTL 3–5. Если не помогает — попробуйте full.
Window Manipulation
B4 отправляет фейковые ACK-пакеты с изменённым размером TCP-окна перед реальным пакетом.
| Режим | Описание |
|---|---|
| Disabled | Без манипуляции окном |
| Zero | Сначала ACK с window=0, затем с window=65535 |
| Random | Случайные значения из списка |
| Oscillate | Перебор значений по порядку |
| Escalate | Рост: 0 → 100 → 500 → 1460 → 8192 → 32768 → 65535 |
Все фейковые пакеты отправляются с низким TTL — они не доходят до сервера.
Для режимов Random и Oscillate используется кастомный список значений окна. По умолчанию: 0, 1460, 8192, 65535.
Incoming Response Bypass
Обработка входящих пакетов от сервера. Эта техника помогает в случаях, когда соединение устанавливается нормально, но загрузка данных обрывается.
| Параметр | Описание | По умолчанию |
|---|---|---|
| Incoming Mode | Режим обработки входящих пакетов | disabled |
| Strategy | Стратегия для фейковых пакетов (TTL, checksum) | ttl |
| Fake TTL | TTL для фейковых пакетов к серверу | 8 |
| Fake Count | Количество фейковых пакетов | 3 |
| Threshold Min | Минимум байт до начала обработки | 0 |
| Threshold Max | Максимум байт, после которых обработка прекращается | 0 |
Режимы:
| Режим | Описание |
|---|---|
| Disabled | Входящие пакеты не обрабатываются |
| Fake | Инжекция фейковых пакетов в направлении сервера |
| Corrupt | Модификация входящих пакетов для сбоя анализа DPI |
Если загрузки обрываются вскоре после начала скачивания, включите Incoming Mode = Fake со стратегией TTL.
ClientHello Mutation
Мутация изменяет структуру настоящего ClientHello, делая его непохожим на стандартный, но оставляя валидным для сервера.
Да что вообще такое этот ваш ClientHello
При установке TLS-соединения клиент отправляет ClientHello — сообщение со списком поддерживаемых шифров, расширений и SNI (имя сервера). Мутация добавляет/изменяет расширения, оставляя ClientHello валидным для сервера.
Mutation Mode
| Режим | Что делает |
|---|---|
| Disabled | Без мутации |
| Random | Перемешивает порядок расширений + добавляет шум |
| GREASE | Вставляет GREASE-расширения |
| Padding | Добавляет padding для изменения размера |
| Fake Extensions | Вставляет неизвестные TLS-расширения |
| Fake SNIs | Добавляет дополнительные фейковые SNI |
| Advanced | Комбинирует все техники |
Mutation: Disabled
Мутация отключена. ClientHello отправляется как есть (но может быть фрагментирован).
Mutation: Random
Перемешивает порядок TLS-расширений в случайном порядке. Сервер обрабатывает расширения независимо от порядка.
Mutation: GREASE (Generate Random Extensions And Sustain Extensibility)
GREASE — это специальные значения, зарезервированные в TLS для тестирования совместимости. Сервер обязан их игнорировать.
GREASE Extension Count — сколько GREASE-расширений добавить:
1–3— минимальное воздействие5–10— агрессивный режим
Padding
Добавляет TLS Padding Extension для увеличения размера ClientHello.
Без padding: ClientHello = 300 байт
С padding (2048): ClientHello = 2048 байт
Padding Size — целевой размер в байтах:
256–512— небольшое увеличение1024–2048— значительное изменение размера4096–16384— максимальный padding
Fake Extensions
Вставляет несуществующие или редко используемые TLS-расширения со случайными данными. Сервер игнорирует неизвестные расширения (по спецификации TLS).
Fake Extension Count — количество фейковых расширений:
3–5— стандартное значение10–15— агрессивный режим
Fake SNIs
Добавляет дополнительные SNI-записи в ClientHello. По стандарту SNI должен быть один, но B4 добавляет несколько. Сервер использует первый (настоящий) SNI.
Добавление Fake SNI:
- Введите домен в поле "Add Fake SNI"
- Нажмите Enter или кнопку +
- Домен появится в списке чипов
Рекомендуемые фейковые домены:
- Популярные незаблокированные сайты:
ya.ru,vk.com,mail.ru - Государственные сайты:
gosuslugi.ru,kremlin.ru - Сайты самого провайдера
Advanced (All)
Комбинирует все техники мутации:
- Добавляет Fake SNIs
- Добавляет стандартные TLS-расширения (supported_groups, signature_algorithms, supported_versions)
- Добавляет TLS 1.3 расширения (psk_key_exchange_modes, key_share, status_request)
- Добавляет GREASE
- Добавляет Fake ALPN с множеством протоколов
- Добавляет Fake Extensions
- Перемешивает всё
- Добавляет Padding
Используйте Advanced, если отдельные режимы не помогают. Это максимально агрессивная мутация.
Advanced-мутация значительно увеличивает размер ClientHello. Если пакет превышает MTU (~1460 байт), B4 автоматически урезает мутации.