Перейти к основному содержимому

Faking

Вкладка Faking содержит методы отправки ложных пакетов и модификации реальных пакетов для обмана DPI. Каждая секция - отдельный аккордеон в интерфейсе.

Подробнее о типах пэйлоадов и их генерации - в разделе Пэйлоады.

Фейковые SNI-пакеты​

Отправляет пакеты с поддельным содержимым до настоящего ClientHello. DPI анализирует фейковый пакет, а настоящие данные проходят незамеченными. Фейковый пакет не доходит до сервера благодаря выбранной стратегии.

Стратегия фейка​

Определяет, как фейковый пакет станет необрабатываемым для сервера:

СтратегияМеханизм
TTLЗаниженный TTL - пакет истекает на промежуточном узле и не доходит до сервера
Random SequenceСлучайный TCP sequence number - сервер отбрасывает пакет с неожиданным seq
Past SequenceПрошедший sequence number - сервер уже обработал этот seq, повторный игнорирует
TCP CheckНеверная контрольная сумма TCP - ядро сервера отбрасывает пакет до обработки
MD5 SumTCP MD5-опция - сервер без настроенного MD5 отбрасывает пакет
TCP TimestampУстаревший TCP timestamp - сервер отбрасывает пакет с timestamp в далёком прошлом

Тип пэйлоада​

Содержимое фейкового пакета. Подробное описание всех типов - в разделе Пэйлоады.

ТипСодержимое
Случайное1200 случайных байтов
Пресет: GoogleTLS ClientHello от имени Google
Пресет: DuckDuckGoTLS ClientHello от имени DuckDuckGo
Сгенерированный payloadОптимизированный ClientHello из раздела Настройки → Пэйлоады
Все нули1200 нулевых байтов
Инвертированный оригиналПобитовая инверсия реального TLS-пакета
Сгенерированные пэйлоады

Если в списке нет доступных пэйлоадов - сначала сгенерируйте их в Настройки → Пэйлоады.

Параметры​

ПараметрОписаниеДиапазон
TTL фейкаTTL для фейковых пакетов. Должен быть достаточным, чтобы пакет дошёл до DPI, но истёк до сервера1–64
Смещение SequenceСдвиг TCP sequence number (для стратегий pastseq/randseq)-
Уменьшение TimestampВеличина уменьшения TCP timestamp (для стратегии timestamp, по умолчанию 600000)-
Количество фейковых пакетовСколько фейковых пакетов отправить перед реальными данными1–20
Подбор TTL

Правильный TTL зависит от количества сетевых узлов между вами и провайдерским DPI. Дискавери подбирает TTL автоматически. При ручной настройке начните с 3 и корректируйте.

TLS-модификации фейковых пакетов​

Если тип пэйлоада содержит TLS-структуру (не случайное и не нули), доступны дополнительные модификации фейкового ClientHello:

ПараметрОписание
Рандомизация TLS RandomЗаменяет 32-байтовое поле Random в фейковом ClientHello случайными байтами. Без этого DPI может заметить, что поле Random одинаковое в фейке и реальном пакете
Дублировать Session IDКопирует Session ID из реального ClientHello в фейковый. DPI может отслеживать Session ID для связки пакетов

Фейковые SYN-пакеты​

Отправляет фейковые SYN-пакеты во время TCP-рукопожатия - до начала реального соединения. Запутывает DPI ещё до того, как соединение установлено.

warning

Это агрессивная техника - фейковые SYN могут влиять на работу некоторых сетевых устройств.

ПараметрОписаниеДиапазон
SYN MD5 SignatureОтправить фейковый SYN с опцией TCP MD5 перед реальным рукопожатием-
Длина payloadРазмер данных в фейковом SYN. 0 = только заголовок, >0 = добавить фейковый TLS payload0–1200
TTLTTL для фейковых SYN-пакетов1–100

TCP Desync​

Десинхронизация внедряет фейковые TCP управляющие пакеты (RST/FIN/ACK) с повреждёнными контрольными суммами и низким TTL. Эти пакеты путают DPI с отслеживанием состояния, но отбрасываются реальным сервером.

Режим Desync​

РежимЧто отправляет
RSTФейковые RST-пакеты с неверными контрольными суммами - DPI считает соединение разорванным
FINФейковые FIN-пакеты с прошлыми sequence numbers - DPI считает соединение завершённым
ACKФейковые ACK-пакеты со случайными будущими sequence/ack numbers - DPI теряет состояние
ComboПоследовательность RST + FIN + ACK
FullПолная атака: фейковый SYN, перекрывающиеся RST, PSH и URG пакеты

Параметры Desync​

ПараметрОписаниеДиапазон
TTL DesyncНизкий TTL гарантирует истечение фейковых пакетов до сервера1–50
Количество пакетовКоличество фейковых пакетов на одну атаку десинхронизации1–20
Post-ClientHello RSTОтправить фейковый RST после ClientHello для удаления соединения из таблицы отслеживания DPI-

Манипуляция окном​

Отправляет фейковые ACK-пакеты с изменёнными размерами TCP-окна перед реальным пакетом. Фейки используют низкий TTL - они истекают до сервера, но путают DPI на промежуточных узлах.

РежимОписание
Нулевое окноФейковые пакеты: сначала window=0, затем window=65535
Случайное3–5 фейковых пакетов со случайными размерами окна из заданного списка
ОсцилляцияЦиклический перебор пользовательских значений окна
ЭскалацияПостепенное увеличение: 0 → 100 → 500 → 1460 → 8192 → 32768 → 65535

При режимах Случайное и Осцилляция можно задать свой список значений окна (0–65535). Если список пуст - используются значения по умолчанию.


Обход входящих ответов (Incoming)​

Манипулирует входящими ответами сервера. Используется для обхода DPI, который дросселирует (замедляет) соединения после получения определённого объёма данных (~15–20 КБ). b4 вбрасывает фейковые пакеты к серверу, которые DPI видит, но они не доходят до назначения.

Режим​

РежимОписание
Фейковые пакетыВнедрение повреждённых ACK-пакетов к серверу с низким TTL на каждый входящий пакет данных
Внедрение ResetВнедрение фейковых RST-пакетов при достижении порога входящих байтов
Внедрение FINВнедрение фейковых FIN-пакетов при достижении порога
Desync ComboВнедрение RST+FIN+ACK combo при достижении порога

Стратегия повреждения​

Определяет, как фейковый пакет станет необрабатываемым:

СтратегияОписание
Bad ChecksumПовреждение контрольной суммы TCP - пакеты отбрасываются ядром
Bad SequenceПовреждение sequence number - пакеты игнорируются TCP-стеком
Bad ACKПовреждение ACK number - пакеты игнорируются TCP-стеком
RandomСлучайный выбор метода для каждого пакета
AllВсе повреждения одновременно: bad seq + bad ack + bad checksum

Параметры Incoming​

ПараметрОписаниеДиапазон
TTL фейкаНизкий TTL гарантирует истечение фейков до сервера1–20
Количество фейковКоличество фейковых пакетов на одну инжекцию1–10
Порог мин.Минимальный объём входящих данных для срабатывания (КБ)5–50
Порог макс.Максимальный порог - рандомизируется между мин. и макс. для каждого соединения5–50
Пороги и режим Fake

В режиме Фейковые пакеты пороги не используются - фейки отправляются на каждый входящий пакет. Пороги работают только в режимах Reset, FIN и Desync Combo.


Мутация ClientHello​

Изменение структуры TLS ClientHello настоящего пакета (не фейкового). Рандомизирует порядок расширений и добавляет шум - чтобы ClientHello не совпадал с известными DPI сигнатурами.

Мутация изменяет настоящий пакет

В отличие от остальных секций на этой вкладке, мутация модифицирует реальный ClientHello, который дойдёт до сервера. Если сайт перестал работать после включения мутации - отключите её.

Режим мутации​

РежимОписание
GREASE ExtensionsВставить GREASE-расширения для обмана DPI
PaddingДобавить расширение padding до целевого размера
Fake ExtensionsВставить фейковые/неизвестные TLS-расширения
Fake SNIsДобавить дополнительные фейковые записи SNI
RandomРандомизировать порядок расширений и добавить шум
AdvancedКомбинация нескольких техник мутации с ручной настройкой

Параметры по режимам​

GREASE:

ПараметрОписаниеДиапазон
Количество GREASEСколько GREASE-расширений вставить1–10

Padding:

ПараметрОписаниеДиапазон
Размер PaddingЦелевой размер ClientHello с padding256–16384 байт

Fake Extensions:

ПараметрОписаниеДиапазон
Количество Fake ExtensionsСколько фейковых TLS-расширений вставить1–15

Fake SNIs:

Добавляет дополнительные значения SNI в ClientHello. Введите домены (например, ya.ru, vk.com) - они будут внедрены в расширение SNI наряду с реальным доменом.

Advanced включает все параметры выше для ручной комбинации.