# Где продукты оставляют следы

Виды кода, который продукт оставляет на сайтах своих клиентов, примерно от самых надёжных к наименее надёжным. Хорошая сигнатура часто объединяет два-три из них через `|`.

### Адрес, с которого загружается его скрипт

Большинство продуктов устанавливается тегом script, и скрипт приходит с собственного хоста продукта - CDN или поддомена для статики. Это первое, что стоит искать.

`"static.hotjar.com"` (https://ru.publicwww.com/websites/%22static.hotjar.com%22/)

### Настройка внутри установленного фрагмента кода

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

`"_hjSettings"` (https://ru.publicwww.com/websites/%22_hjSettings%22/)

### Идентификатор аккаунта

Во многих фрагментах кода есть идентификатор аккаунта клиента в постоянном формате. Ищите ту часть, которая никогда не меняется, а сами идентификаторы вытаскивайте с помощью [snipexp:](https://ru.publicwww.com/docs/query-syntax/regex/).

`"googletagmanager.com/gtm.js" snipexp:|(GTM-[A-Z0-9]+)|` (https://ru.publicwww.com/websites/%22googletagmanager.com%2Fgtm.js%22+snipexp%3A%7C%28GTM-%5BA-Z0-9%5D%2B%29%7C/)

### Идентификатор или класс элемента его виджета

Виджет добавляет на страницу собственный элемент - контейнер с идентификатором или именем класса продукта.

`"class=\"g-recaptcha\""` (https://ru.publicwww.com/websites/%22class%3D%5C%22g-recaptcha%5C%22%22/)

### Папка плагина или модуля

В CMS продукт, установленный как плагин, лежит в папке со своим именем, и эта папка видна в адресах его скриптов и стилей.

`"/wp-content/plugins/contact-form-7/"` (https://ru.publicwww.com/websites/%22%2Fwp-content%2Fplugins%2Fcontact-form-7%2F%22/)

### Ссылка на собственные страницы продукта

Когда продукт держит в своём домене портал, справочный центр или страницу бронирования для каждого клиента, сайт клиента ссылается на неё - часто на собственный поддомен клиента в домене продукта.

`".zendesk.com/hc/"` (https://ru.publicwww.com/websites/%22.zendesk.com%2Fhc%2F%22/)

### Файлы из хранилища продукта

Изображения и документы, которые продукт хранит для своих клиентов, загружаются с адреса его хранилища.

`"images.ctfassets.net"` (https://ru.publicwww.com/websites/%22images.ctfassets.net%22/)

### Тег generator

Конструкторы сайтов и CMS часто называют себя - иногда вместе с версией - в метатеге.

`"content=\"Joomla!"` (https://ru.publicwww.com/websites/%22content%3D%5C%22Joomla%21%22/)

### HTTP-заголовки и cookie

Заголовки ответа индексируются вместе с каждой страницей, поэтому искать можно и сервер, фреймворк или хостинг-компанию, которые ставят собственный заголовок или cookie.

`"x-powered-by: express"` (https://ru.publicwww.com/websites/%22x-powered-by%3A+express%22/) `"set-cookie: PHPSESSID"` (https://ru.publicwww.com/websites/%22set-cookie%3A+PHPSESSID%22/)

Как понять, действительно ли след принадлежит клиентам продукта, и как сочетать несколько следов, рассказано на странице [Проверка сигнатуры](https://ru.publicwww.com/docs/signatures/checking/).

Source: https://ru.publicwww.com/docs/signatures/traces/
