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

Антиотладочные приёмы для JS?

Одной обфускации мало. Можно ли завязаться на какие-то более хитрые вещи, которые помогают отличить запущен твой скрипт браузером "оригинально", прикручено к нему какое-то дополнение, исходник изменён или он в какой-то другой среде?

В принципе, можно провязать всю логику скрипта какими-то непонятными юзеру вычислениями с перестановками ссылок в длинных массивах, чтобы эти вычисления 90% работы делали для пыли в глаза, но побочно инициализировали некие ключевые связи в обфусцированном коде. При несовпадении какой-нибудь фигни весь этот объём вычислений проходит как обычно, но оставляет конструкцию в нерабочем виде.

Ну можно радикально - взять LLVM, написать всё на C++ и поставлять машинный код, исполняющийся в asm.js и там ещё навернуть пирогов в 10 слоёв с дополнительными подгрузками кусков с главного сервера. Но всё это будет слишком жестоко, дорого и тормозно.
  • Вопрос задан
  • 604 просмотра
Подписаться 4 Сложный 3 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 4
IvanTheCrazy
@IvanTheCrazy
Радикальный метод - не выкладывать в сеть. Нужно будет - разберут и разложат все по полочкам. Не хотите этого - не выкладывайте
Ответ написан
Комментировать
profesor08
@profesor08 Куратор тега JavaScript
Твой код js никому ненужен. Есть более крутые и красивые вещи, уже, и в бесплатном доступе, демонстрирующие превосходное исполнение. Ты спросишь, с чего я это взял? Да с того, что если бы твой код имел хоть какую-то ценнось, значимость и интерес, ты бы сам его продемонстрировал. Мол смотрите как я умею и как круто получается. Ну, а пока что, ты просто хочешь спрятать свой говнокод.
Ответ написан
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
Усложнит на самую каплю, но все равно полезно хотя бы ради предотвращения подмены скрипта без ведома пользователя
https://developer.mozilla.org/en-US/docs/Web/Secur...
https://developer.mozilla.org/en-US/docs/Web/HTML/...
Ответ написан
Комментировать
edli007
@edli007
full stack, team lead
После компиляции вебпаком код перевернут покруче обфускации на порядок, вам достаточно использовать нестандартные конфиги вебпака и отключить соурс мапы для продакшена
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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