-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Небольшая доработка батника для генерации фейкового числа #663
Comments
Что это даёт? Почему именно такой подход? Почему 116? |
Хо-хо! Этого я не знаю. Я лишь скачал последний релиз и в пакете там есть файл 1_russia_blacklist_YOUTUBE.cmd и в нем именно такие параметры и число с 116 знаками. Я сделал так, чтобы оно становилось случайным при каждом запуске и поделился. |
Универсальность теряется, на win 7-8.1 нет повершелла. Может написать маленькую программку, которая делала бы то же самое и передавала параметры GDPI? Интересно, почему вы взяли именно 29 фейков, меньше не работает, что ли? У большинства отлично работают с 12 и по 15 |
Это минимальный ClientHello, и нужен он потому, что иначе на части провайдеров не открывается, например, linkedin.com. |
@ValdikSS Это какой-то гений тут же предложил этот хекс через сайт генерить, с такой длиной и пошло-поехало. Многие даже не понимают, что это за хекс |
Можете дописать и сделать случайным число от 12 до 29 тоже Чем больше случайных параметров - тем лучше. |
Конкретно, у меня без этого мусора перестает работать. Сайт загружается, но поток видео не идет. |
Ну так уберите fake-from-hex вообще, эффект будет такой же. Это сломает доступ на части провайдеров. |
На ростелекоме (краснодарский край) AS12389, если просто убираешь fake-from-hex, видеопоток перестаёт работать как и с и дефолтным содержимом батника. Решение из 1-го комментария помогает. |
@meatlayer нужно не убрать fake-from-hex, а увеличить количество отправляемых пакетов: либо увеличить число у fake-gen, либо использовать fake-resend 2 и более. Решение в первом сообщении делает точно то же самое, что и fake-gen, только зачем-то отдельным скриптом. |
хочу подметить то что если не делать по новой hex число через день у меня все отрубает и интернет тупит сильно |
Для несчастных пользователей на win 7-8.1 у которых нет powershell можно попробовать такой скрипт: setlocal enabledelayedexpansion
set "hex_value="
rem Цикл для генерации 116 символов
for /l %%i in (1,1,116) do (
rem Получаем случайное число от 0 до 15
set /a rand_index=!random! %% 16
rem Инициализация счетчика
set "count=0"
for %%j in (0 1 2 3 4 5 6 7 8 9 A B C D E F) do (
if !count! equ !rand_index! (
set "rand_char=%%j"
)
set /a count+=1
)
rem Добавляем найденный символ в hex_value
set "hex_value=!hex_value!!rand_char!"
)
start "" goodbyedpi.exe -9 -e1 -q --fake-gen 29 --fake-from-hex !hex_value! --blacklist ..\russia-blacklist.txt --blacklist ..\russia-youtube.txt |
Ало, гараж, какой скрипт, зачем
|
я понимаю, что оно ДОЛЖНО работать и делать то же самое, но по факту у меня не работает. А работает только со случайным числом в параметрах, поэтому я и поделился. |
Предоставьте дамп трафика без fake-from-hex и с ним. |
В таком случае, возможно, дело в относительном порядке вот этого, добавленного через |
ростелеком, Краснодарский край, помогло. магию этого рандомного куска данных сам не понял, но реально видеопоток не идет без него и если его не менять вдобавок временами. дамп попробую сделать |
Так же Ростелдеком, видеопоток отлично идет с оригинальным HEX + fake-gen 5 + fake-resend 2 |
Помогло просто |
подскажите куда данный параметр добавлять? для чайника. Ибо при добавлении его в конец файла service_install_russia_blacklist_YOUTUBE.cmd не находит goodbyedpi.exe при запуске |
нужно выделить и удалить всю строку, которая начинается на start "" goodbyedpi.exe и вместо неё вставить все из моего скрипта. |
Его в сервис инсталл и нет смысла добавлять, это работает только из 1_russia... и 2_any_country... |
Помогло как указал @krlvm - "с --fake-gen 30 и без --fake-from-hex" ps. тоже "Ростелеком", который ни в какую (с параметрами от 5, до 9) не отдавал видео-поток ... |
Ребят а у кого нибудь идет видеопоток с сайта kinobase.org? |
Он и не будет, там от 10 надо начинать (если речь о --fake-gen), либо от 5-6 с --fake-resend 2. И -9 лучше не использовать, как и -5. Лучший вариант это -6, с добавлением --set-ttl 2 или 3 Ка-то так:
У меня даже сайт не открывается |
А --fake-gen 10 или --fake-gen 5 --fake-resend 2 НЕ сработали? |
Я вообще правильно понимаю, что при наличии флага fake-gen и fake-resend посылается fake-gen*fake-resend фейковых пакетов вместо первого ClientHello с ПРОИЗВОЛЬНЫМ содержимым и разной длины (>=58 байт TCP DATA). По умолчанию fake-resend =1. А при наличии --fake-from-hex будет ЕЩЕ один фейковый пакет, который идёт последним в этой цепочке фейковых и у него в полезной нагрузке TCP будет именно эти 58 байт (116 hex цифр). Из коробки там какие-то специально подобранные байты и текст YOUR ADVERTISEMENT HERE - $10/m. Если же вообще ни одного из этих флагов нет, то будет один поддельный ClientHello пакет с подставным SNI www.w3.org ??? Ну и смысла генерации этого одного пакета тогда как бы нет, можно просто убирать fake-from-hex и увеличивать fake-gen и/или fake-resend? |
Подтверждаю, Когда добавил генерацию случайного числа из первого поста. Все заработало сразу же. ЗЫ, |
Пути DPI неисповедимы :D Добавить к мусору еще мусора и оно работает. Убрать еще мусора и не работает. |
Всё верно. Только размер данных от 8 до 200.
Да. Это минимальный ClientHello, с единственным extension = Server Name Indication (пустым), у которого вместо ключа шифрования ASCII-текст. ClientHello нужен для работы Linkedin и Twitter на части провайдеров (какой-то из провайдерских DPI обрабатывает пакеты до получения любого ClientHello, и парсит из него домен).
Да, стандартные HTTP-запрос и ClientHello.
Всё верно. За это время никто не предоставил подтверждения ни на одном провайдере, что случайные fake-from-hex определённой длины хоть как-то различаются от прост ослучайных данных fake-gen'а. Такое принципиально может быть вследствие конкретного размера пакета, но на моих провайдерах никакой разницы нет. Если кто-то предоставит какую-либо информацию, на каком из провайдеров помогает отправка последним пакетом именно то, что передаётся в fake-from-hex, напишите в этот тикет и предоставьте дампы трафика. Пока что ничего продуктивного здесь не наблюдаю. |
Уже слышали. Где-то видел конфиг с фейк-ген 12 фейк-ресенд 10 или как-то так (ужас). Причем смешит то, что зайти на лайтово заблоченный форум программы люди не могут, а идут на жестко заблоченный ютуб и там смотрят ролики, где очередной Вася Пупкин "починил" ютуб с помощью 30 фейков ( Закрадывается нехорошее ощущение, что люди настолько отупели, что уже простой текст с описанием не воспринимают и не понимают, если им картинку при этом не покажут. |
Это я вообще НЕ понимаю. Я наоборот не могу смотреть видеоинструкции по таким именно "настроечным" вещам. Гораздо эффективнее и удобнее текст с описанием ну и скрины может. |
Слушай, Вася Пупкин хотя бы его починил и поделится результатом. А чем ты помог? Сделай свой запускающий файл. И выложи сюда. Мы попробуем и посмотрим как оно работает. |
Я его не раз тут выкладывал, просто ты настолько туп, что даже не удосужился это проверить, ибо читать не умеешь или не хочешь. И скорее всего он у тебя не сработает (по разным причинам) |
Он помог тем, что пояснил про ключи это раз. Тестировал разные варианты это два. Понимает что и как работает это три.
ну так написано же какие параметры и на что в запускающем файле поменять. кстати в форумах говорят что может работать одновременно две версии программы с разными настройками для разных сайтов по спискам |
@sansergs Я так понял, его главная претензия - я не выложил готовый вариант "для всех". Потому что правильного варианта для всех не существует. Существуют только такие вот "решения"-калеки с 30-ю фейками.
Конечно будет работать, у меня работает прямо сейчас. И через службу можно сделать, только назвать вторую службу другим именем, например GoobyeDPI_Y |
Ну то есть будет как бы каскадный перехват пакетов через windivert, сначала одним экземпляром, потом другим? |
Он либо забанен, либо детектится тспу как невалидный ClientHello, по размеру, по не совпадению поля Length, либо ещё как-то, т.е. неотличимо от бана. Я провёл тест, подтверждающий это. Ниже конфиги, которые отличаются только хексом. Тестовый конфиг №1, хекс из скриптов, с текстом "Your ad ... $10/m:
Тестовый конфиг №2, хекс свой, валидный, www.google.com:
Последовательность теста: запуск gdpi с выбранным конфигом, открыть браузер, открыть гуглвидео из закладок. При использовании конфига №1 результат: вечная крутилка в чёрном окне (в F12 - таймауты и connectionreset). Скрин из wireshark №1. WS даже не определяет фейк как ClientHello, хотя он начинается с 160301. |
Именно так, сначала программа проверяет пакет и соотносит его с блэклистом, если нет - пакет соотносится с блэклистом из 2-го экземпляра проги и если соответствует - применяются изменения, прописанные в конфиге 2-го экземпляра. А если пакет совпадает с блэклистом 1-го экземпляра, то второй его не обрабатывает, ибо нет соответствия с его блэклистом. Все это, конечно, сильно примерно, но на запрете это тоже работает, с той лишь разницей, что там 2 экземпляра проги запускать не надо |
Он некорректный, да. Он не для ТСПУ, а для какого-то другого DPI на пути следования пакета к linkedin, я же написал выше. Один он точно не будет обходить блокировки.
Текущие, вроде, все работают. Если не работают, напишите название провайдера и регион, я проверю. |
но он почем-то вайршарком НЕ определяется как ClientHello. А вот если НЕ указывать флаги -fake-gen и --fake-from-hex тот стандартный единственный фейковый пакет определяется как ClientHello. И вариант предложенный [Decavoid] тоже определяется и видно то же поле SNI. |
Кстати, вот "идея для всех" - можно оставить только fake-from-hex (раз уж вам так нравится его генерить :) ) или оставить параметр --fake-gen без изменений и менять (увеличивая) в представленном тут дополнении для батника число генерируемых символов: 58 в первом варианте и 116 - во втором (для 7 и 8.1). Увеличивать пока не заработает ютуб. Но про сайты на TLS 1.2 (например картинки и видео в Х-е) можете забыть на некоторых провайдерах, ибо нужен валидный Client Hello, а не сгенерированное непонятно что. Впрочем, уважаемый Валдик уже про это написал. |
Зачем? Никто упорно не говорит, какую проблему он решает или чего пытается добиться. |
так все же еще раз для лучшего понимания логики работы. |
так вот же @Decavoid привёл пример, что с тем что из коробки fake-from-hex у него не работает, а с его работает. |
И не нужно использовать fake-from-hex так, как привёл @Decavoid, это вряд ли где-то будет работать. В cmd-файлах он используется иначе.
Да, его легко заблокировать. Ещё раз: зачем мы это всё обсуждаем? Что не работает, где не работает? |
Ничто не исключено. При этом для востановления работы некоторых сайтов придется сгенерить свой правильный Client Hello. |
так в том и дело что изначально там же все же была "сигнатура" начала ClientHello (160301). Поэтому есть вообще смысл чтобы последний фейковый паке был похож на ClientHello с подставными данными или вообще нет??? |
Да при чем тут LinkedIn? Заблоченных сайтов на TLS 1.2 навалом и какой из них понадобится вам - неизвестно. Но если уж прямо кроме ютуба ничего больше не надо, то и --fake-from-hex не нужен, достаточно --fake-gen с увеличенным значением. Но явно не до 29-30, почему - я уже объяснял |
значит я не так понял, ValdikSS просто приводил в пример именно этот ресурс. Если речь идёт о всех сайтах которые поддерживают только TLS 1.2, тогда понятно. |
В день, когда я проводил исследования и формировал релиз, TLS в сторону GGC был заблокирован. Ни с каким доменом (даже google.com) ответа не было. При этом не-TLS-мусор в достаточном количестве обходил ТСПУ (а блокирует GGC/youtube именно он и только он). Но сколько не отправляй мусора, некоторые другие сайты, заблокированные реестровым способом (в частности, Linkedin), на части операторов не открывались — системы DPI у этих провайдеров (или их апстримов) анализировали трафик до первого ClientHello, поэтому я после fake-gen (который и обходит ТСПУ, и классифицирует трафик как не-TLS) добавил минимально возможный ClientHello c "пустым" доменом, чтобы обойти эти DPI, ожидающие ClientHello — им такого не соответствующего стандартам пакета было достаточно. |
@ValdikSS Спасибо вам за это, у меня до сих пор этот хекс работает и помогает видосы на хдрезке смотреть (в смысле вообще этот сайт открыть), ну и картинки с видео на Х, про которые я уже писал. |
Теперь логика понятна и действительно полностью объяснима. |
Нет особой разницы в том, какой ClientHello отправлять, если он воспринимается DPI'ем. Лучше, конечно, более похожий на настоящий взять из дампа трафика браузера. Я добавил этот только потому, что мне показалась забавным реализация парсера у DPI, которая не смотрит на размер пакета и общей длины, указанной в ClientHello, но зато проверяет размеры extension'ов. |
плюс забавная строчка "здесь могла быть ваша реклама" :) |
Пулл реквест открыли 2 дня назад. Он делает именно это, генерит валидный ClientHello с указанным SNI хостом от браузера Firefox. |
Это вообще отличный вариант, учитывая что там еще генерятся некоторые поля случайным образом при каждом запуске. |
@Decavoid А где можно взять exe на потестить? |
Добавил в комменте к пулл реквесту. |
I've made sure there's no existing feature request / Я убедился, что такой функциональности еще никто не предлагал
Describe your feature / Опишите ваше предложение
Заметил что с параметром --fake-from-hex если не менять число перестает работать, пока не изменишь число. Поэтому написал строку для генерации этого числа случайным образом.
`
:: Генерация случайного 58-байтного hex-числа через PowerShell (116 символов)
for /f %%i in ('powershell -command "[byte[]]$bytes = (1..58 | ForEach-Object { Get-Random -Max 256 }); $randomHex = -join ($bytes | ForEach-Object { $_.ToString('x2') }); $randomHex"') do set "hex_value=%%i"
start "" goodbyedpi.exe -9 -e1 -q --fake-gen 29 --fake-from-hex %hex_value% --blacklist ..\russia-blacklist.txt --blacklist ..\russia-youtube.txt
`
Подходит для Windows (через powershell), у меня работает отлично. Возможно, кому пригодится.
The text was updated successfully, but these errors were encountered: