Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Управляйте маятником, чтобы построить самую высокую (и устойчивую) башню из падающих сверху постов. Следите за временем на каждый бросок по полоске справа: если она закончится, пост упадет мимо башни.

Башня

Аркады, Строительство, На ловкость

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Python + Знаменитости

С этим тегом используют

Программирование IT Программист Обучение IT юмор Разработка YouTube Актеры и актрисы Фотография Фильмы Голливуд Девушки Мэрилин Монро Юмор Все
1 пост сначала свежее
43
razumist123
2 года назад
Лига программистов

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом⁠⁠

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

Наткнулся на просторах интернета на рекламу подобного расширения для браузеров на базе движка Chromium. Мне стало дико интересно, как оно работает. Но для этого нужно было изучить код расширения, который хранился в zip-архиве с расширением CRX.


Сказано-сделано. За несколько секунд был нагуглен сайт, который скачивал любое расширение для хрома.

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

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

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

Скрипты меня интересовали в первую очередь. Я начал изучение с файла background.js и обнаружил в нём любопытное содержимое.

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

Как мы видим, расширение использует черный список ключевых слов (мopгeнштepн, mоrgеnstеrn, mоrgеnshtеrn, aлишep тaгиpoвич, aлишep вaлeeв), которые предназначены для поиска и скрытия любого контента на сайте, связанного со знаменитостью.


Кроме того, используется сторонний сервис для идентификации пользователя и загрузки черного списка мемов (согласно файлу injected.js).

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

Также в файле injected.js описана функция blockThemALL, которая просматривает тело страницы, сверяется с черным списком ключевых слов и мемов и блокирует запрещенные элементы. Стандартный алгоритм, ничего нового.


Меня позабавило наличие Pro-функционала (в файле js.js), я наивно подумал, что это возможность добавлять свои ключевые слова, но нет, просто незначительное увеличение черного списка.

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

Pro-версия добавляет три ключевых слова: бyзoвa, бyзoвoй, бyзoвy. Ну это просто смехота. Зачем мне разблокировать Pro-версию, если можно самому добавить ключевые слова, любые, какие я захочу? Браузеры на базе движка Chromium поддерживают режим разработчика, что позволяет добавлять любые расширения, даже самописные.

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

Именно на этом моменте я не сдержался и решил опубликовать пост. Я, конечно, все понимаю, но зачем держать конечных пользователей за дебилов? Если бы они сделали возможность добавлять любое ключевое слово для Pro-версии, то никаких вопросов бы не было. Но разводить пользователя на пиар своего детища, добавляя капельку изменений, это уже глупо, потому что любой может скачать код расширения, распаковать архив и переписать его под себя. Единственно возможная защита - это хранить черный список или логику работы на сервере, но зачем мне нужен ваш список, если я могу создать свой. И вообще, существуют блокировщики рекламы.

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

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

Заблокируй Mopгeнштepнa: волшебная кнопочка для ленивых с урезанным функционалом Программирование, Python, Javascript, Web-программирование, Знаменитости, Длиннопост

Я особо не заморачивался, просто нагуглил код на Stack Overflow, который решал аналогичную задачу и чуть-чуть переписал под себя. Символы кириллицы заменяются на визуально похожие символы латиницы и наоборот. Конечно, можно обнаруживать и блокировать подобную подмену, но я сомневаюсь, что разработчики расширения настолько заморочились. Поправьте меня, если я неправ.


На выходе получаем забавную ситуацию: расширение ориентировано на поверхностную аудиторию, но это ещё полбеды, её сделали на коленке (это тоже можно простить). Оно изначально урезано по функционалу, даже Pro-версия является обрубком (однако ничего не мешало сделать добавление любых ключевых слов) и существуют бесплатные аналоги, которые превосходят её по возможностям.


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

Показать полностью 8
Программирование Python Javascript Web-программирование Знаменитости Длиннопост
10
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии