Обход Cloudflare в экшенах запросов

ukrainec2014

Client
Регистрация
12.05.2017
Сообщения
348
Благодарностей
51
Баллы
28
В одной из тем подымался этот вопрос, но помечен как не баг, почему?

Окей, многие пытались на примере форума показать, хорошо, допустим форум мегазащищен, берем самый простой обычный сайт, настраиваем самый простой GET запрос и получаем 403 ошибку, ну и конкретно в ответе <title>Access denied | -url- used Cloudflare to restrict access</title>

На скрине работа без прокси, чисто белый айпи, не состоит ни в каких блек листах и сайт взят из самых примитивных...

Тут важно понимать, что никто не заинтересован палить сайты, на которых зарабатывают, поэтому давайте рассмотрим конкретный случай, с самым простым сайтом, если уж его зенно не пробивает - значит клауд похоронил полностью работу с запросами.

Потому что с каждым днем, все больше сайтов накидывают его в качестве защиты и мы получаем пшик, а не работу.

Если надо шаблон - прикрепляю...

п.с.
• Предлагать работу через браузер - это смешно, имея такой функционал
• Работа через браузер много где хоронит прибыльность

п.с.с.
Хотелось бы услышать мнение как с этим бороться?
Будут ли реализации в стандартном экшине?
Сколько времени ждать решение?
 

Вложения

Последнее редактирование:

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 369
Благодарностей
3 294
Баллы
113
  • Спасибо
Реакции: ukrainec2014

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
  • Спасибо
Реакции: ukrainec2014 и Phoenix78

ukrainec2014

Client
Регистрация
12.05.2017
Сообщения
348
Благодарностей
51
Баллы
28

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 369
Благодарностей
3 294
Баллы
113
по таске пока без ответа?
Ваша тема даже не набрала заметного кол-ва голосов из-за непонятного заголовка.
Ну прошлую тему пометили же как не баг, значит делать не будут. ясно же.
Это не тот случай, когда что-то сломалось, а когда требуется расширение функционала.

Изменил заголовок и перенёс в предложения.
 

ukrainec2014

Client
Регистрация
12.05.2017
Сообщения
348
Благодарностей
51
Баллы
28
Это не тот случай, когда что-то сломалось, а когда требуется расширение функционала.
Раньше работало, теперь перестало значит сломалось.
Если сломалось из за нововведений Cloudflare - значит идет отставание от прогресса, в таком случае это надо в приоритет ставить.

Переносить тему можно куда угодно, главное результат, которого пока нет, на сайте в примере работать невозможно из за этого, а сайт примитивный...
 

rastvl

Client
Команда форума
Регистрация
16.01.2019
Сообщения
656
Благодарностей
1 053
Баллы
93
<title>Access denied | -url- used Cloudflare to restrict access</title>
Я лично с клаудом на запросах не воевал, но стало немного интересно, поэтому вопрос: а что должно быть вместо этого?
Вот, кстати, как выглядит GET на zennolab.com:
85930
Там в title типичный Please Wait.....
Теперь смотрю в обычном браузере сайт с клаудом:
85931
Получаю первым запросом тоже 403, но с другим title
Делают гет на этот же сайт через постер:
85933
Получают тот же title.
А на каких сайтах сразу обрубается? Как я понимаю, 403 норма, а если в ответе и _cf_chl_opt прислали, то и подавно всё гуд. Где заблуждаюсь?
 
  • Спасибо
Реакции: ukrainec2014

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 369
Благодарностей
3 294
Баллы
113
сайт примитивный
Не важно на сколько примитивный сайт, хоть пустая html страница, обращение идёт через другой сайт (сервер), куда более не примитивный.
Разумеется, обычным гет запросом такое не решить, необходимо заранее готовить данные (как на странице Please Wait), возможно потребуется несколько разных запросов.
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
а что должно быть вместо этого?
Проверил на двух rest клиентах в браузере. Вот ответы, которые они возвращают.

RESTED Client — Mozilla Firefox 2021-11-26 10.16.14.png

RESTClient — Mozilla Firefox 2021-11-26 10.18.50.png

Может кто-то объяснить, как это работает на запросах в этих случаях, и не работает в случае ZP...
 

Ilshakin

Client
Регистрация
14.02.2017
Сообщения
631
Благодарностей
542
Баллы
93
наверное, вот так это работает:
https://github.com/JBou/CloudProxySharp
 
  • Спасибо
Реакции: Dorian_Gray

rastvl

Client
Команда форума
Регистрация
16.01.2019
Сообщения
656
Благодарностей
1 053
Баллы
93
А эта штука похоже работает через эту штуку - https://github.com/NoahCardoza/CloudProxy , а та в свою очередь работает через "it uses puppeteer to create a headless browser (Chrome)", то есть тоже через браузер. Не легче ли тогда просто работать через браузер?)
(А может я опять ничего не понял)
 

Ilshakin

Client
Регистрация
14.02.2017
Сообщения
631
Благодарностей
542
Баллы
93
поднимается локаль (CloudProxy) и все отправляемые нами запросы идут через него
в рабочей программе(к примеру, зеннопостер) - браузер не фигуриет, работаешь как обычно с post/get
я вчера отписывал в саппорт зеннолаба этот момент, с ссылками на гитхаб и скриншотами -
сказали нужно тут голосовать :bc:
 

ukrainec2014

Client
Регистрация
12.05.2017
Сообщения
348
Благодарностей
51
Баллы
28
Там в title типичный Please Wait.....
да, если бы такое, то все ок, согласен...
а у меня на том сайте в примере пишет так:
<title>Access denied | -url- used Cloudflare to restrict access</title>

поискал, решения не нашел пока, по крайней мере такого которое на моем уровне познаний можно решить...

п.с.
в зеннолабе сейчас тоже так
<title>Please Wait... | Cloudflare</title>

а вот в том сайте нет...
видимо в зенно ослабили клауд пока, потому что раньше тоже был денайд
 

ShikoFess

Client
Регистрация
21.12.2017
Сообщения
131
Благодарностей
106
Баллы
43
Ваша тема даже не набрала заметного кол-ва голосов из-за непонятного заголовка.

Это не тот случай, когда что-то сломалось, а когда требуется расширение функционала.

Изменил заголовок и перенёс в предложения.
Например такое встречается вот здесь https://all-access.wax.io как это обходить на запросах?
 

Ilshakin

Client
Регистрация
14.02.2017
Сообщения
631
Благодарностей
542
Баллы
93
  • Спасибо
Реакции: ShikoFess

RusAdvert

Client
Регистрация
22.08.2016
Сообщения
18
Благодарностей
7
Баллы
3
Вот у меня подобная проблема с другим сайтом, но внесу свои дополнения.

Как выше заметили при подключении альтернативного способа передачи http запросов это полечилось НО, почему то этот метод у меня сработал только на моем личном ноуте и не сработал на сервере.

Еще момент, через браузер все ок, нет этой страницы please wait. Но хотелось бы вернуться на запросы с этого временного решения через браузер. На самом деле то что работает у меня на ноуте, меня обнадеживает, так как дело может вообще в аппаратной части, руки разве что не дошли проверить на других своих ноутах
 
Последнее редактирование:

Bas

Client
Регистрация
15.12.2013
Сообщения
607
Благодарностей
251
Баллы
63
Проголосовал. Есть библиотеки, с которых первый же GET к сайту возвращает 200 ОК + куку, которую если подставить в ЗП - получаем полностью работающее решение на запросах, т.е. кука валидная. Подключаем библиотеку к ЗП, получаем в 99.99% ответов ответ 403 + куку. Если эту куку пытаться использовать дальше - будет 403 бесконечно, т.е. кука не валидная. НО в каком-то 1-м случае на 10000 мы все же получаем ответ 200 + куку. Чаще всего дальнейшая работа с этой кукой все равно вернет 403, но бывают исключительные случаи когда все же и с этой кукой дальше можно работать. Но такой подход точно не рабочий, ждать хз сколько десятков тысяч запросов чтобы получить валидную куку. Выход - отдельное приложение, которое посылает запрос с нужными параметрами, складывает все в БД, оттуда берем все, подстраиваем зенно и о чудо, работает на запросах. Но это костыли костыльные, а если нужно пост запрос выполнить, или сменить IP не меняя ЛК на сайте - вообще вешалка. Перечитал многие ветки обсуждений данной проблемы, обсуждали в личках с несколькими людьми сию проблему... Меня лично сначала склонили в сторону того что Cloud пропустит без проблем запрос HTTP/2 и выдаст 403 на HTTP/1.1. После определенных шаманских танцев с бубном удалось отправить запрос к своему целевому сайту, на что я в ответ получил ошибку "505 Not Supported":
87831


Следующим вариантом стало TLS 1.3... Данный момент пока проверить не смог.
 

Bas

Client
Регистрация
15.12.2013
Сообщения
607
Благодарностей
251
Баллы
63
Результат еще одного теста, слева нормальный браузер и в нем вообще нет ни намека на hcaptcha от cloud, справа то что отправляет ЗП и в свою очередь в ответ бесконечно получает 403 с hcaptcha в коде ответа:

87837

Как минимум вопрос, почему при установлении коннекта даже банальный User-Agent не отправляется, тогда как браузер его отправляет всегда? Да и по остальным параметрам данных явно маловато будет... @Zymlex Вы нас направили в эту тему обсуждение вести, так как она более узконаправленная чем та, в которой данный баг изначально описывался. Прокоментируйте плиз данный скрин, возможно я чего-то просто недопонимаю.
 
Последнее редактирование:

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93
@Bas, чем было сделано сравнение на скриншоте, не видел, подобной опции в fiddler...
 

Bas

Client
Регистрация
15.12.2013
Сообщения
607
Благодарностей
251
Баллы
63
  • Спасибо
Реакции: RoyalBank

selectel56

Client
Регистрация
11.12.2016
Сообщения
98
Благодарностей
48
Баллы
18
Результат еще одного теста, слева нормальный браузер и в нем вообще нет ни намека на hcaptcha от cloud, справа то что отправляет ЗП и в свою очередь в ответ бесконечно получает 403 с hcaptcha в коде ответа:


Как минимум вопрос, почему при установлении коннекта даже банальный User-Agent не отправляется, тогда как браузер его отправляет всегда? Да и по остальным параметрам данных явно маловато будет... @Zymlex Вы нас направили в эту тему обсуждение вести, так как она более узконаправленная чем та, в которой данный баг изначально описывался. Прокоментируйте плиз данный скрин, возможно я чего-то просто недопонимаю.
типа tls fingerprint свой у зенки))) разрабам думаю пора уделить внимание на это т.к. при таком коннекте, который отличается от оригинала браузера сильное палево стало в последнее время.
 
  • Спасибо
Реакции: druzhanja

druzhanja

Client
Регистрация
25.05.2017
Сообщения
23
Благодарностей
1
Баллы
3
Я тоже не могу обойти

фаерфоксом могу сделать ресенд запроса и он проходит нормально с нормальным ответом, а копирую все в постмен и уже не проходит, хотя все параметры есть и кукисы и юзерагент

сейчас буду пробовать еще через burpsuite отследить запрос и сделать resend
 

selectel56

Client
Регистрация
11.12.2016
Сообщения
98
Благодарностей
48
Баллы
18
Я тоже не могу обойти

фаерфоксом могу сделать ресенд запроса и он проходит нормально с нормальным ответом, а копирую все в постмен и уже не проходит, хотя все параметры есть и кукисы и юзерагент

сейчас буду пробовать еще через burpsuite отследить запрос и сделать resend
юзай костыль curl :D я уже его начал дрюкать, стандартные постгет - не справляются там много искажений.
 
  • Спасибо
Реакции: druzhanja

druzhanja

Client
Регистрация
25.05.2017
Сообщения
23
Благодарностей
1
Баллы
3
юзай костыль curl :D я уже его начал дрюкать, стандартные постгет - не справляются там много искажений.
Подскажи где про это почитать можно + может быть есть пример?
мне нужен курл для пост и гет запросов
 
Последнее редактирование:

selectel56

Client
Регистрация
11.12.2016
Сообщения
98
Благодарностей
48
Баллы
18
Подскажи где про это почитать можно + может быть есть пример?
мне нужен курл для пост и гет запросов
В винде10 к примеру уже есть курл, через командную строку можно с ним общаться, мануалы есть в интернете на любой цвет и вкус, также тут на форуме есть немного инфы про него. Я сейчас все быдаюсь с тем, как передать текст в середине которого будут бинарные данные файла ну то есть загрузка файла на сервер (прикрепить файл к письму в данном случае), вот не знаю как на c# до файла записать текст и как после него т.е. в бинарном виде до и после воткнуть то что надо а потом передать все в пост запросе с помощью --data-binary :bm: вот в одном время забил на сишарп, а зря, теперь придется его изучать...
 
  • Спасибо
Реакции: druzhanja

druzhanja

Client
Регистрация
25.05.2017
Сообщения
23
Благодарностей
1
Баллы
3
В винде10 к примеру уже есть курл, через командную строку можно с ним общаться, мануалы есть в интернете на любой цвет и вкус, также тут на форуме есть немного инфы про него. Я сейчас все быдаюсь с тем, как передать текст в середине которого будут бинарные данные файла ну то есть загрузка файла на сервер (прикрепить файл к письму в данном случае), вот не знаю как на c# до файла записать текст и как после него т.е. в бинарном виде до и после воткнуть то что надо а потом передать все в пост запросе с помощью --data-binary :bm: вот в одном время забил на сишарп, а зря, теперь придется его изучать...
Читал форум, но здесь старые решения (( решил топорным методом через браузер. Если нужно будет запускать много потоков, то тогда решу вопрос арендой сервака или покупкой нового железа

"пилить нужно, пока есть возможность" время нельзя терять
 

selectel56

Client
Регистрация
11.12.2016
Сообщения
98
Благодарностей
48
Баллы
18
Читал форум, но здесь старые решения (( решил топорным методом через браузер. Если нужно будет запускать много потоков, то тогда решу вопрос арендой сервака или покупкой нового железа

"пилить нужно, пока есть возможность" время нельзя терять
Да там нет ничего сложного в этом курле, можно средствами стандартными зенки создавать баник и в нем прописать команды. Далее запускать батник и ответ возвращать в переменную тоже все стандартными средствами зенки.

C#:
curl -v -k --proxy "127.0.0.1:8888" -X POST "https://reqbin.com/echo/post/json" -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" -H "Content-Type1: www-application-dat" -H "Content-Type2: www-application-dat" -d "tutdanniepostzaprosa"
Это как пример пост запроса в батник запихать можно. -h - это хедер запроса, -d данные запроса, -a юзер агент, -k игнорит ошибки сертификатов, -v выдает в ответ сам запрос и ответ на сервер, ну прокся тут и так понятно как написана. Все до безобразия просто. Файлы отправлять, гет запросы делать - все аналогично, есть мануалы на оф сайте у них там подробно все расписано ну или --help пишет для каждого параметра он все выдаст что с ним можно делать. Браузером делать фигня полная, там нет стабильности, то инстанс зависнет, то кнопк ане нажмется то что то всплывет всегда непредсказуемое трындец полный.

Если же надо несолько строк с переносами отправить в пост запросе то юзай --data-binary @c:/file.bin вместо -d, в file.bin пишешь текст ну строки что надо с переносами, там же можно и бинарку от картинки передать. --tlsv1.2 и --tlsv1.3 задает как законнектиться хочешь ну это если принудительно без автоматизма со стороны сервака.
 
Последнее редактирование:

RusAdvert

Client
Регистрация
22.08.2016
Сообщения
18
Благодарностей
7
Баллы
3
Я вот одного не пойму. Почему на одной машине в PM запросы работают, а на серваке нет)

С проксями или без


Так же у меня есть один софт заказанный не зенка, тоже для работы с моим целевым сайтом, так вот на нем запросы тоже проходят, а на другом ноуте у коллеги нет.
 

RoyalBank

Client
Регистрация
07.09.2015
Сообщения
557
Благодарностей
547
Баллы
93

RusAdvert

Client
Регистрация
22.08.2016
Сообщения
18
Благодарностей
7
Баллы
3
проверяли. Один и тот же запрос. На одном ноуте выдавал ответ 200
на другом ноуте выдавал 403
на сервере 403
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)