Как отследить пдф файл

Обновлено: 07.07.2024

Я знаю, как отслеживать клики в ссылках на pdf-файлы и загрузки pfd.

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

Может ли кто-нибудь помочь, указав учебник или пример?

Если вы уверены, что этого не может быть сделано, можете ли вы указать документацию, которая объясняет, почему?

3 ответа

Adobe имеет серверный продукт, snappily под названием «Adobe LiveCycle Rights Management EC2» который призван обеспечить аудиторский след того, кто открыл и распечатал документ, и может даже удаленно отменить права на чтение файла PDF удаленно. Он предназначен для безопасного хранения конфиденциальных документов, поэтому он может или не может применяться к вашей ситуации.

Как обсуждалось в "есть ли простой способ сделать PDF-вызов домой ? ", пользователи обычно не доверяют PDF-файлам, которые, как они подозревают, звонят домой, а технические трудности при работе с« ванильными »PDF-файлами в широком диапазоне читателей не делают его жизнеспособным:

Да, вы могли бы [позвонить домой] с помощью встроенного JavaScript внутри PDF. Однако вы не сможете автоматически запускать этот документ открыт - спецификация JavaScript Acrobat не предоставляет крюк для этого. Это позволит вам автоматически запускать эту проверку, когда документ сохраняется, закрывается или печатается, но не когда он открывается (вероятно, из соображений безопасности). В качестве альтернативы вы можете проверьте, инициируется ли пользователь, поместив ссылку /кнопку на первой странице PDF и запустить JavaScript оттуда.

«Поставить кнопку на первой странице PDF, которая запускает некоторую идею JavaScript, является приятной, но .

Все это предполагает, что вы используете Acrobat в качестве вашего читателя.

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

Если вы ищете некоторые данные для предоставления партнерам, которые размещают рекламные объявления в PDF, я бы предложил: 1. Предлагая количество загрузок за выпуск. 2. Предлагая им помеченную ссылку в любом PDF-файле объявления, которые они размещают, чтобы отслеживать клики.

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

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

Ниже приведена ссылка на короткую статью, в которой обсуждается вопрос:

Казалось бы, просто отслеживать загрузки:

Это будет звучать как ужасный шаг продаж, и для этого я приношу свои извинения. Тем не менее, у меня тоже были те же проблемы, что и отслеживание «вниз потока» и активность для PDF-файлов. Я тоже смотрел Adobe Live Cycle, но мы не могли себе это позволить. Тем не менее, в процессе исследования, мы обнаружили продукт, который лицензирует одну небольшую часть Adobe Live Cycle. Продукт называется Call-Home, и он дал нам возможность отслеживать документы PDF и документы MS Office. Эти документы теперь могут звонить домой каждый раз, когда они открываются любым компьютером или мобильным устройством, подключенным к Интернету. Я не хочу быть тем парнем, который размещает ссылки на продукты на форумах, но если вы найдете Google Call-Home и InDorse Technologies, вы найдете его. Продукт отлично подойдет для нас, и это было очень выгодно для наших нужд.


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

В случае с PDF арсенал Canarytokens предлагает лишь отправку запроса стандартным способом (FormCalc). При открытии такого документа в Adobe Reader всплывает окошко, которое сообщает, что документ пытается обратиться к сайту Canarytokens. Так дело не пойдет.

Отправка оповещения из офисных документов устроена тоже совершенно типично — через картинку с внешнего сайта. И если в старых версиях Office это работает, то начиная с Office 2010 (или даже 2007) документы, загруженные из интернета, открываются в специальном режиме Protected View. Большая часть функций, включая подгрузку внешних картинок и стилей, не работает, пока пользователь это не разрешит. Не круто.

Новый метод трекинга основан на двух фичах. Первая встроена в Office, вторая — свойство самой Windows.

Второй момент заключается в том, что сертификат проверяется стандартным виндовым CryptoAPI. В самих сертификатах масса мест, где можно указать внешний URL. В первую очередь — проверка отзыва сертификата (CRL, OCSP) и путь до Intermediate или Root CA («Поставщик центра сертификации»). Таким образом, при проверке подписи «Офису» требуется проверить сертификат, а потому ОС проверяет всю цепочку сертификатов (от конечного до корневого), проходя по всем URL.

Добыть валидный конечный сертификат с произвольными значениями CRL и OCSP почти невозможно (эти поля контролируются CA), так что мы возлагаем надежду только на местоположение сертификата Intermediate CA — при проверке валидности ОС должна сходить и скачать его. Выходит, нам нужно создать конечный сертификат и подписать им любой офисный документ.

Создать сертификат несложно: достаточно сделать специальный конфиг и пару раз выполнить команду openssl. Приводить тут команды не буду, можешь взять их с моего гитхаба. Подписать документ тоже не великая проблема — заходишь во вкладку Insert, далее — Signature Line, вводим произвольные значения, OK, двойной клик на подпись и выбираешь личный сертификат.

В определенных ситуациях метод работает и с LibreOffice, но не годится для Acrobat Reader.

Несколько месяцев назад я столкнулся с интересной задачей по анализу подозрительного pdf файла. К слову сказать, обычно я занимаюсь анализом защищенности веб приложений и не только веб, и не являюсь большим экспертом в направлении malware analysis, но случай представился довольно любопытный.

Практически все инструменты представленные в данной статье содержаться в дистрибутиве Remnux, созданном специально в целях reverse engineering malware. Вы можете сами загрузить себе образ виртуальной машины для VirtualBox или Vmware.

Первым делом я проанализировал полученный экземпляр с помощью скрипта pdfid:


Декодировал javascript код с помощью все того же pdf-parser:


Привел к удобному виду, для этого можно воспользоваться js-beautify:


Неплохо. Также проанализировал файл с помощью отличной утилиты jsunpack:


На первый взгляд им была обнаружена уязвимость CVE-2009-1492, связанная с выполнением произвольного кода или отказа в обслуживании через Adobe Reader и Adobe Acrobat версий 9.1, 8.1.4, 7.1.1 и ранних версий, с помощью pdf файла, содержащего annotaion и использующего метод getAnnots. Но если проверить мои результаты, полученные выше, с соответствующим exploit-ом, то обнаруживается, что эта уязвимость не имеет отношения к текущему случаю. В нашем варианте annotaion используется для хранения большой части скрипта в том числе в целях обфускации.

Данные из annotaion вызываются методом getAnnots и находятся в объекте 9 нашего файла(как показал pdfparser). Сохраним полученный javascript код, добавив к нему поток из объекта 9. Обычно, первым шагом для безопасного выполнения кода является замена функции eval безобидным alert или console.log и открытии файла с помощью браузера. Также в этих целях можно использовать Spidermonkey. Основные необходимые нам функции и переменные уже определены в файле pre.js, который вы также можете обнаружить в дистрибутиве Remnux.


Неплохо. После запуска Spidermonkey мы получили новый скрипт, который использует функции eval и поток данных из объекта 7:


Нет необходимости декодировать весь код, достаточно выполнить полученный скрипт с данными с помощью все того же spidermonkey или воспользоваться jsunpack.


Финальный скрипт выглядел так:


После рефакторинга получил:


Как видно во втором случае используются наши unescape("%u0c0c%u0c0c") и this.collabStore = Collab.collectEmailInfo(>);

В переменных v3, v4 просматривается shellcode из-за наличия серии NOP инструкций в начале значений переменных.

Чтобы подтвердить мои предположения я использовал эмулятор libemu из бесплатного продукта PDFStreamDumper со значением, взятым из переменной v4. Также libemu вы можете найти и в Remnux:


Бинго. Обнаружился url xxxxxx.info/cgi-bin/io/n002101801r0019Rf54cb7b8Xc0b46fb2Y8b008c85Z02f01010 который и использовался для загрузки с последующем исполнением нашего вредоноса:


3. Также параметры сравнения, обнаруженные в скрипте:


выглядят также как описано в CVE-2009-2990: Ошибка индекса в массиве Adobe Reader и Acrobat 9.x до версии 9.2, 8.x и 8.1.7, а также с версии 7.x до 7.1.4 позволяет выполнить произвольный код.
В кодируемом FlateDecode потоке объекта 11 мы также обнаруживаем код в U3D:


Теперь мы имеем URL, Shellcode, несколько CVE и этого вполне достаточно для данной статьи.

Автор статьи: Андрей Ефимюк, эксперт в области ИБ, OSCP, eCPPT, хороший друг PentestIT.
Оригинал статьи

Из этой статьи вы узнаете, как Google обрабатывает PDF-файлы, как оптимизировать их для SEO и как отслеживать просмотры PDF.

Поисковая оптимизация PDF файлов [инструкция от Ahrefs]

Google впервые начал индексировать PDF-файлы в 2001 году. Этот формат документов обычно используется в государственных, научных и деловых кругах.

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

Ниже мы с вами рассмотрим:

Как Google относится к PDF-файлам

PDF-файлы отображаются в результатах поиска Google с тегом «PDF».

PDF-файл в поисковой выдаче Google

PDF-файлы преобразуются и индексируются, как HTML. Для PDF, где есть изображения текста, Google использует технологию оптического распознавания символов (OCR) для преобразования изображения текста в текст. Картинки в PDF также отображаются в результатах поиска изображений.

Если контент из PDF продублирован на обычной веб-странице, то Google предпочтёт её. То есть в результатах поиска будет отображаться классическая страница, а не PDF.

Почему PDF не так хороши с точки зрения SEO

Несмотря на то, что Google индексирует и ранжирует PDF-файлы, формат имеет несколько недостатков, по сравнению с веб-страницами:

  1. Не дружелюбен к мобильным устройствам. PDF-файлы имеют одинаковый вид на всех устройствах. Это означает, что не существует такого понятия, как адаптивность PDF для мобильных.
  2. Отсутствие навигации. Большинство PDF-файлов не содержат элементов навигации, что затрудняет изучение материалов.
  3. Отсутствие некоторых SEO-атрибутов. PDF-файлы имеют эквивалентные версии многих SEO-элементов, но у них отсутствуют, например, атрибуты ссылок, такие как nofollow, UGC и sponsored.
  4. Часто могут не сканироваться. Поскольку PDF-файлы редко меняются, они, как правило, сканируются реже, чем классические страницы, которые обновляются чаще.
  5. Сложное отслеживание. Большинство обычных трекеров запускают JavaScript на веб-странице и не работают в PDF-файлах.

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

Как оптимизировать PDF-файлы

Большинство элементов внутренней оптимизации сайтов, которые вы привыкли применять для HTML, имеют свои эквиваленты в PDF и используются так же. Поэтому давайте обсудим несколько способов оптимизации PDF-файлов с точки зрения SEO:

1. Качественный контент

Миссия компании Google заключается в организации мировой информации. Даже если это не веб-страница, хороший контент – это хороший контент.

Существует много качественного контента в формате PDF-файлов: техническая документация, официальные отчёты и т.д. В ПДФ-формате скрыта лучшая часть информации Сети.

2. Оптимизированный заголовок

Так же как и в классических страницах, в PDF-файлах есть теги заголовков (title). Обратите внимание, что многие поисковые системы используют заголовок для описания документа в своих результатах поиска. Если у PDF нет заголовка, в поисковой выдаче будет отображаться имя файла.

Вот как можно редактировать заголовок PDF в Adobe Acrobat:

3. Оптимизированное описание

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

  • Нажмите «Файл» -> «Свойства»
  • Нажмите «Дополнительные метаданные»
  • Редактируйте описание

4. Релевантное имя файла

Имя PDF-файла будет частью URL. Это повлияет на URL, отображаемый в результатах поиска, и является небольшим фактором ранжирования.

5. Атрибуты изображений alt

Чтобы помочь поисковым системам понять содержание картинок, вы можете добавить дополнительный текст к изображениям в вашем PDF.

  • Нажмите значок «Теги» на левой боковой панели
  • Найдите изображение, для которого вы хотите добавить alt-текст в иерархию документа
  • Щёлкните правой кнопкой мыши на изображение
  • Нажмите «Свойства»
  • Добавьте соответствующий alt-текст

6. Подзаголовки

Точно так же, как и в классических веб-документах, вы можете указать, что определённый текст в PDF-файле является заголовком (H1-H6).

  • Нажмите значок «Теги» на левой боковой панели
  • Найдите текст, который вы хотите редактировать в иерархии документа
  • Щёлкните правой кнопкой мыши по тегу
  • Нажмите «Свойства»
  • Выберите соответствующий уровень заголовка из выпадающего меню

7. Ссылки

Внутренние и внешние ссылки влияют на ранжирование PDF-документов. Как и в случае с обычными страницами сайтов. Ссылки передают PageRank, а их анкорный текст добавляет контекст.

Включая ссылки на ваш PDF-файл и устанавливая ссылки из него на другие страницы интернета, вы помогаете PageRank проходить через ваш сайт. Некоторые ПДФ-файлы получают много обратных ссылок. Ларри Пейдж однажды сказал: «Оказывается, люди, получившие Нобелевскую премию, цитируются в 10,000 разных газет».

Вот пример документа с общим регламентом по защите данных (GDPR). На него стоит 119 тысяч обратных ссылок с 855 доменов. И при этом внутри – ни одной исходящей ссылки. Это упущенная возможность. Поставьте с него бэки на другие страницы сайта и гарантированно увидите рост позиций.

поисковая оптимизация pdf - 119 тысяч обратных ссылок

Другой пример из Google. На их PDF-руководство по SEO для начинающих стоит 3.5 тысячи ссылок с 772 доменов. И они прекрасно справляются с передачей веса на другие страницы.

поисковая оптимизация пдф - 3.5 тысячи ссылок
PDF-руководство Гугл по SEO для начинающих

Чтобы добавить ссылки в PDF:

Как отслеживать просмотры PDF

Как уже упоминалось ранее, PDF-файлы сложнее отслеживать, по сравнению с обычными веб-документами. Из-за этого многие маркетинговые команды стремятся закрывать PDF-файлы или делать их доступными только после того, как пользователь заполняет форму на сайте. Делая это, они смещают акцент с отслеживания трафика на генерацию лидов.

Отслеживание событий

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

Встраивание

Если вы встраиваете PDF в страницу сайта, используя JavaScript или iframe, можно просто использовать стандартную аналитику для самой страницы.

Скрипт промежуточного отслеживания

Логи сервера

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

Данные сторонних сервисов

Поскольку PDF-файлы редко отслеживаются в аналитических системах, зачастую информацию проще всего получить из сторонних сервисов, таких как Google Search Console или Ahrefs. В последнем, к слову, вы можете посмотреть, какие ПДФ ваших конкурентов получают больше всего органического трафика. Просто впишите их домены в Site Explorer, а затем перейдите к отчёту «Самые популярные страницы» и найдите URL-адреса, содержащие .pdf.

Поиск популярных PDF конкурентов

Заключительные мысли

Надеюсь, теперь вы ещё больше убеждены, что новый контент лучше размещать на обычных веб-страницах, а не в PDF. Но что на счёт старых PDF-файлов? Стоит ли их переделать в классические страницы или оптимизировать под поисковые системы?

Как и в большинстве случаев, касающихся SEO, это зависит от различных факторов. Здесь нет однозначно правильного или неправильного выбора. Делайте так, как вам проще. Главное, чтобы был позитивный результат.

Читайте также: