Чи можна відключити перевірку вмісту розширення Chrome?


15

За короткий час розширення Google Chrome мають "перевірку вмісту", тобто інші програми не можуть "зламати" їх. Сорт хороша річ, але неймовірно дратує, бо я їх весь час лаю, щоб підлаштувати та покращити.

Майже одразу після збереження файлу розширення розширення вимикається і на сторінці локальних розширень з’являється повідомлення:

Це розширення, можливо, було пошкоджено

Чи є спосіб я відключити цю функцію "безпеки" і продовжувати хакнути? Я хотів би бути босом свого браузера, а не навпаки.

Є хромований прапор ( extension-content-verification), але, як видно з опису:

Це можна використовувати для ввімкнення цієї функції, якщо вона не була б увімкнена, але не може бути використана для її вимкнення (оскільки це налаштування може бути підроблене шкідливим програмним забезпеченням).


Google не дозволяє вам відключати її, тому, схоже, ваш єдиний варіант - використовувати канарне видання Google Chrome, призначене для таких розробників, як ви.
Томер

Я не хочу розробляти Chrome, але деякі розширення. Я не використовую Canary для денного хромування. Дивно, що це не відключається. Це нове. Чомусь не було проблеми останні 4 роки?
Rudie

Це нова функція, яка повинна запобігти зловмисному програмному забезпеченню додавати власні розширення в Chrome без знань користувача.
Томер

Що ви можете спробувати, це заблокувати певні URL-адреси, які хром використовує для отримання посилань розширень. (за допомогою проксі-сервера HTTPS)
Томер,

Додавання chrome.google.comдо мого hostsне робить цього = (У них, мабуть, є своя система DNS або щось подібне. Є прапор, але "[..] не можна використовувати для його вимкнення (тому що цей параметр може бути підроблений шкідливим програмним забезпеченням)" - Damnit.
Rudie

Відповіді:


11

Існує четвертий спосіб управління цією проблемою і повністю уникнути системи виявлення. Оскільки ви згадуєте, що хочете зламати розширення, це означає, що ви маєте певні знання щодо розширення. Також слід розуміти, що розширення за своєю суттю є вихідним кодом. Це означає, що у вас є все джерело, з яким ви зможете поспілкуватися. Це сумно...

Четвертий метод порівняно простий:

  1. Знайдіть розширення в папці "Розширення" в розділі Дані програми Chrome
  2. Скопіюйте всю папку Extension та вставте її десь в іншому місці
  3. Вимкніть оригінальне розширення в Chrome
  4. Перейменуйте нещодавно скопійовану папку розширення abcsoupname у MyNewExtension
  5. Перейдіть до папки MyNewExtension
  6. Видалити _metaдані
  7. Відредагуйте manifest.json та видаліть розділи key та update_url . Змініть розділи імені та короткого імені, щоб уникнути плутанини з іншим вимкненим розширенням.
  8. Підтвердьте та виправте свій manifest.json на сайті jsonlint.com
  9. Перейдіть у Налаштування => Розширення
  10. Увімкніть режим розробника, а потім "Завантажте розпаковане розширення" у новій створеній вами папці.
  11. Вуаля. Нова версія цього розширення не знаходиться під контролем вмісту.

Тепер ви можете редагувати, маніпулювати та керувати цим розширенням за своїм бажанням. Кожен раз, коли ви внесете зміни, вам потрібно буде натиснути Перезавантажити з області розширень. Крім того, ви не отримаєте оновлення від оригінального розробника. Отже, вам потрібно буде періодично оновлюватись і придумувати спосіб об’єднання оновлених змін у ваш окремий код розширення. Можливо, ви зможете залишити update_url недоторканим, але це, ймовірно, видалить будь-які зміни, внесені під час наступного оновлення. Ось чому я пропоную її зняти. Хоча, сміливо експериментуйте.

Залишаючи вихідне розширення вимкненим, це дозволить вам включити його та періодично отримувати оновлення для авторської версії. Потім можна порівняти відмінності між власною власною версією та авторською версією та об'єднати будь-які необхідні зміни. Я настійно рекомендую цей підхід до оновлення до вашого нового розширення. Якщо ви вирішите залишити оновлення update_url активним, воно, ймовірно, знищить ваші зміни під час наступного оновлення (якщо припустити, що це навіть правильно працює на зміненому розширенні). Оскільки деякі розширення не оновлюються дуже часто, це може призвести до того, щоб визначити, що ви змінили через кілька місяців після виходу наступного оновлення.

Також вам потрібно буде виконати ці дії на будь-якому розширенні, де ви хочете його змінити. Ефективно ви створюєте абсолютно нове розширення, використовуючи кодову базу наявного розширення, а потім переводите це розширення в режим розробника.

Зауважте, не використовуйте TextEdit Mac для редагування файлів json, інакше це замінить "на" або "і не виконає перевірку синтаксису json.


Про це йшлося раніше. Це гідне рішення, але я хотів би отримати оновлення. Натомість я прийняв недоліки і відчуваю себе великими. Дякую за кроки =)
Rudie

1
Складність полягає в тому, що ви хочете редагувати розширення та мати оновлення. Це взаємовиключно. Якщо ви відредагуєте розширення, після оновлення ви потенційно втратите всі свої зміни, пам'ятаючи, що ви змінили. Це може бути складно, якщо це пройде через кілька місяців. Вимкнення оновлень та об'єднання змін вручну - єдино можливий спосіб управління цим.
спільність

Оновлення - це лише злиття моєї злому версії. Злиття можуть бути розумними. Якщо ні, то я можу вирішити конфлікт злиття. Натомість я вибрав параноїдальний підхід і не використовую жодного розширення для допису, просто скопіював і зламав, як ти кажеш. Дуже пізня відповідь, вибачте.
Rudie

Це більше не працює. Якщо ваше розширення недоступне в магазині додатків, воно буде відключено, і його не можна буде повторно ввімкнути, не видаляючи та додаючи його знову.
Вовчиця

Привіт Волфіш, це точно не правда. Розробники повинні мати можливість розробляти розширення локально у своїй системі. З цієї причини Chrome пропонує режим розробника. На кроці 10 ви помітите, що вам потрібно ввімкнути режим розробника. Це ключ. Без активованого режиму не можна завантажувати зовнішні розширення. Розробники не можуть створювати розширення, змушуючи їх завантажувати їх у магазин для тестування, що також виставляє незакінчений код для публіки (ще більш ризиковано). Однак Chrome дуже старанно просить вимкнути режим розробки при кожному перезапуску Chrome.
спільність

6

Оскільки Google не дозволяє жодним чином відключити функцію перевірки вмісту розширень, ваші можливі вирішення в основному:

  1. Скористайтеся канальним виданням Chrome, яке дозволяє редагувати розширення та додавати власні розширення без жодних попереджень
  2. Скопіюйте каталог розширень кудись інше, видаліть _metadataпапку та завантажте її в режимі розробника. Недолік цього вирішення полягає в тому, що кожного разу, коли ви відкриєте хром, ви побачите повідомлення з проханням відключити розширення. (оскільки він знаходиться в режимі розробника)
  3. Забороніть Chrome отримувати хеші розширення, щоб він не зміг перевірити його вміст. Недолік цього вирішення полягає в тому, що ви, можливо, не зможете завантажити \ оновити інші розширення.

    Зробити це:

    1. Додайте рядок 127.0.0.1 clients2.googleusercontent.comу свій hostsфайл (зазвичай під C:\Windows\System32\drivers\etc)
    2. Очистіть кеш-пам'ять DNS-хрому або зачекайте кілька хвилин
    3. Закрийте Chrome і внесіть деякі зміни в розширення
    4. Видаліть _metadataпапку з каталогу розширень (де зберігаються оригінальні хеші)
    5. Відновіть Chrome

Ви також можете використовувати проксі-сервер HTTPS для блокування лише відповідних запитів, але це було б занадто хакі.


1. Здається, щось робить =), але тепер я не можу завантажувати розширення, і він все ще заблокований. Спроба № 2. Завтра.
Rudie

Це все ще говорить, що він зіпсований? спробуйте видалити _metadataз Google папку, в якій зберігаються хеші.
Томер

Це працює, але зараз я не можу завантажити інші розширення ... Чому б не просто завантажити chrome.google.com, а перевірити інший домен? Завжди треба робити це важко. Я не думаю, що проксі HTTPS можливий. Напевно, вони охоплюють підхід MITM. (2) - це, мабуть, найкраще рішення, у мене все одно працює декілька розробників. Немає оновлень, хоча = (Спасибі!
Rudie

Гаразд, але я не думаю, що вони дійсно можуть зробити що-небудь щодо MITM, якщо ви скажете своєму комп'ютеру довіряти власному сертифікату. можливо спробуйте mitmproxy чи щось таке.
Томер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.