Суп, анон. Пишу аномайзер, которому передаешь урл, и он возвращает тебе ответ с него, пряча твой реальный IP.
Сейчас пытаюсь заставить работать в нем двач со совоими аяксами-хуяксами, почти работает.
Вопрос: есть ли способ запретить внешние ресурсы на своей странице? Например заблочить полностью выполнение скриптов и показ картинок, если они не с сайт_нейм?
В чем проблема: Казалось бы все хорошо, делай замену в html как деды и все, но на современных сайтах куча всякого говна типа гугл аналитика, которое считают тебя, показывают красивые кнопочки фейсбук, показывают тебе рекламу и попутно следят за тобой. Причем это говно все динамическое и вставляется в DOM прямо из яваскрипт. т. е. простой заменой в html не отделаешься.
Может у анон есть еще какие идеи относительно аномайзера? Я бы мог реализовать. Проект будет опенсурс.
>>436976 проблема, что location нельзя переопределить. она ридонли. делать автозамену в яваскриптах winodow.location на что-то свое тоже не очень надежно
>>436672 Братюнь, не изобретай велосипед. Для полноценной анонимности уже давно изобрели Whonix, который есть набор из двух виртуалок с Тором, а твои начинания обречены, к сожалению, на провал, потому как если браузер знает реальный айпи, он его обязательно рано или поздно выдаст. Или бери сорцы какого-нибудь фаерфокса и хакай их.
>>437097 просто хотел добится, чтоб всякие шпионские счетчики не лезли яваскриптов
в доке мозилы по секьюрети полиси, что-то упоминалось, что можно блочить ембедет контент ссылающийся на внешние домены, но конкретных примеров я не нашел
>>437808 самая проблема ути не от eval, а перехватить изменения атрбутов, через такую записть document.getElementById("хуйпизда").src пока не знаю, как с этим бороться Mutation Observer срабатывает уже после того, как все произошло.
если делать автозамену яваскрита по регэкспу, то да, встает проблема eval
если заворачивать все скрипты в (function(window) {})(fake_window), то тоже пизда, все поломает. большинство скриптов писаны криворукими убенами
>>437904 > глобальные переменные Блин. Ты прав, с несколькими <script> сломается, да. Из замыкания список переменных не добыть. Разве что подумать насчет with, но там столько проблем, что, наверное, даже не стоит.
проверил this. список глобальных переменных можно достать из него, список локальных нельзя. пичалька. а то так бы я устроил скриптам макабы манямирок в замыкании.
Есть правда ебанутая техника, которая заключается в парзинге яваскрипта, но она ненадежна. ебанутый язык короче. шел 21-ый век, а у них даже нет способ получить список локальных переменных.
обращение к внешним ссылкам заблочил, через CSP хидер. в принципе можно дальше не кочевряжится, но хотелось бы, что бы капча полноценно работала и можно было логинится во всякие вконтакты, если кому-то это надо
>>438341 Есть другая ебанутая техника. Есть несколько <script>. Читаем все сразу. Обертываем первый в функцию, возвращающую функцию со вторым, возвращающую функцию с третьим и т. д. Получившуюся портянку пишем в первый <script>, результат запоминаем в переменной, вызываем его в следующем <script> и т. д. Таким образом весь код будет в замыкании, ему можно скормить любой window, но при этом он будет видеть "глобальные" var и function. Там тоже есть проблемы, но их можно решить, я думаю.
>>440104 Мутэйшн ивентами разумеется. Через DOMNodeInserted/DOMNodeRemoved т.к. изменение через innerHTML это именно не модификация, а вставление нового узла + удаление старого.
Вот эта штука: https://addons.mozilla.org/ru/firefox/addon/ghostery/ обнаруживает всякие "жучки" в сайтах и по желанию блокирует их. В том числе и виджеты соцсетей. Своеобразный адблок. Не знаю как он работает, но твоя идея уже реализована.
Сейчас пытаюсь заставить работать в нем двач со совоими аяксами-хуяксами, почти работает.
Вопрос: есть ли способ запретить внешние ресурсы на своей странице? Например заблочить полностью выполнение скриптов и показ картинок, если они не с сайт_нейм?
В чем проблема: Казалось бы все хорошо, делай замену в html как деды и все, но на современных сайтах куча всякого говна типа гугл аналитика, которое считают тебя, показывают красивые кнопочки фейсбук, показывают тебе рекламу и попутно следят за тобой. Причем это говно все динамическое и вставляется в DOM прямо из яваскрипт. т. е. простой заменой в html не отделаешься.
Может у анон есть еще какие идеи относительно аномайзера? Я бы мог реализовать. Проект будет опенсурс.