Задать вопрос
@andrejfomenko

Как можно перехватить функцию javascript?

Здравствуйте, я новичок в программировании js. Возникает вопрос, js код выполняется в браузере так, значит можно перехватить определенные функции и подменить ответ? То есть существует некий сайт который с помощью js берет какую-нибудь информацию о моем браузере(user agent, шрифты, список плагинов итд). Озночает ли это, что я могу создать свой скрипт и заставить мой браузер перехватывать данные запросы и подменять результаты. Например пусть перехватывают user agent , отправляют на сервер и исходя из этого дальше отправляют тех кто использует опера на один сайт, тех кто мозиллу на другой(либо уже другой js на сайте выполняет сортировку, без задействования сервера). Возможно ли реализовать перехват этой функции и подмены, чтобы с мозиллы отправился запрос с результатом что мол опера и сервер отправил меня на сайт для оперы. Если да, то ткните куда копать(писать свой плагин для этих целей или есть готовый плагин который будет внедять мой js-перехватчик на определенных сайтах)
P. S. пример грубый и извращенный, знаю что можно подменить UA плагинами итд, но интересует именно возможность решения подобных задач, перехватом и подменой js.
  • Вопрос задан
  • 1652 просмотра
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
Stalker_RED
@Stalker_RED
Да, в общем случае вы можете подменить скрипт некоего сайта своим, модифицированным скриптом. Но если авторы этого сайта всерьез опасаются таких подмен, они могут делать проверки, не подменили ли их скрипт. Ну типа md5(someFunction.toString()) и отправлять эту информацию тоже. И если каждый раз они ожидают уникальный хеш, вам будет довольно сложно сделать подмену.

В любом случае, проще делать это через настройки браузера и плагины. Если интересно, почитайте про tor browser, а заодно про всякие whonix и типа того.
Ответ написан
Комментировать
@vshvydky
Полменыть можно через прелоад скрипты. Я так работал для перехвата функции аддэвентлистенер и инжектирования в нее и в функции которые задаются на события логгеров, а так же боролся с фингерпринтом. Было бы желание.
Ответ написан
movasyl
@movasyl
semper tiro
User agent и без того каждый раз приходит на сервер вместе с объектом request-a.
Тыкаю: Node.js.
получаешь запрос с клиента > сверяешь что тебя интересует в ua > рендеринг соответствующей страницы и отправка страницы на клиент.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы