#javascript #cookies #google-chrome-devtools #reverse-engineering #obfuscation
#javascript #файлы cookie #google-chrome-devtools #обратная разработка #запутывание
Вопрос:
Есть несколько сообщений с похожим вопросом, как у меня, но ни одно, похоже, не отвечает на мою проблему. В настоящее время я работаю над обратным проектированием сайта, на который загружается файл JavaScript под sources
. Для примера я буду называть это foo.js
. Этот скрипт генерирует файл cookie, который мне нужен. Я буду ссылаться на это как bar
. foo.js
активно генерирует новый bar
файл cookie каждый раз, когда я обновляю вкладку cookies в Application
в Chrome dev tools, что означает, что он генерируется по крайней мере каждую секунду с помощью foo.js
.
Загвоздка в том, что foo.js
он сильно запутан с корпоративной безопасностью, где я не могу сделать простой CTRL F
и искать document.cookie
. Но в любом случае это не имеет особого значения. Что мне интересно, так это то, что для генерации этого запускается функция surley, поскольку она не жестко запрограммирована, так как я могу увидеть, какие функции выполняются?
Я пытался установить точки останова в коде, но там более 15 000 строк кода, так что это немного неэффективно. Я также попытался приостановить выполнение скрипта и посмотреть на стек вызовов, и там есть функции, выполняемые из foo.js
, но очень расплывчато, что возвращают эти функции. Кроме того, я не думаю, что функции, которые я вижу, являются правильными, потому что они отображаются только при посещении определенных страниц, тогда как bar
cookie генерируется постоянно, независимо от того, на какой странице я нахожусь.
Есть ли какой-либо четкий способ просто посмотреть, какие функции выполняются в фоновом режиме и что они возвращают? В частности, с использованием файлов cookie. Я чувствую, что это должна быть простая функция, но, кажется, я могу с этим разобраться.
Комментарии:
1. Вы можете установить точку останова при запуске страницы и запустить debug(Object.getOwnPropertyDescriptor(Document.prototype, ‘cookie’).set)
2. Приношу свои извинения за столь поздний ответ, но у меня как раз есть время попробовать это сейчас. Когда я помещаю это в консоль, я просто получаю
undefined
. Что бы это значило? Заранее спасибо. @wOxxOm3. Эта команда ничего не возвращает, поэтому
undefined
это правильный результат. Дело в том, что это вызовет отладчик, если есть какой-либо код, который устанавливает document.cookie. Важно делать это при запуске страницы, а не после ее загрузки.4. Большое вам спасибо, у меня получилось 🙂 @wOxxOm