PDF Stream Dumper: разбор потоков, JavaScript и объектов PDF

PDF Stream Dumper — не обычный просмотрщик и не редактор документов, а специализированный Windows-инструмент Дэвида Циммера (David Zimmer, dzzie) для низкоуровневого анализа PDF, прежде всего подозрительных и потенциально вредоносных. Он разбирает файл на объекты и потоки, декодирует распространённые фильтры, помогает исследовать встроенный JavaScript, извлекать данные и сопоставлять содержимое с признаками старых PDF-эксплойтов. В 2026 году программа всё ещё размещена на сайте разработчика и доступна как установщик с исходным кодом, однако её следует считать наследуемым, давно не развиваемым инструментом: официальная страница по-прежнему предлагает сборку 0.9.624, а современная документация и актуальная матрица совместимости отсутствуют.

ПараметрСостояние
РазработчикDavid Zimmer, SandSprite
НазначениеСтатический и низкоуровневый анализ PDF, извлечение потоков, JavaScript и вложенных данных
ТипНастольная Windows-программа с GUI, автоматизацией и плагинами
Официально указанная сборка0.9.624
ПлатформаИсторически заявлено WinXP+; современная официальная сертификация Windows 10/11 не опубликована
ЦенаБесплатно; разработчик характеризует проект как open source
Аккаунт и облакоНе заявлены как условия базовой локальной работы
Ключевая зависимость.NET Framework 2.0/3.x для части фильтров; само приложение относится к экосистеме VB6/32-bit
Текущий статусДоступен у автора, но относится к legacy-инструментам без признаков активного релизного цикла

Скачать PDF Stream Dumper

Бесплатно
В реестре российского ПО
Чистая установка

Новейшая версия для Виндовс, macOS и Линукс. Удобный редактор PDF под российские реалии.

⬇ Скачать PDF Commander бесплатно

⬇ Скачать PDF Stream Dumper (Windows)

Наиболее безопасный путь получения — официальный раздел PDF Stream Dumper на сайте SandSprite. На нём разработчик публикует ссылку на PDF Stream Dumper Setup версии 0.9.624 и отдельную ссылку на архив исходного кода. Прямой файл установщика выдаётся с домена sandsprite.com по HTTPS. Сторонние каталоги могут показывать другие номера версий или собственные даты «обновления», но эти метаданные не следует трактовать как подтверждение нового релиза: контрольной точкой остаётся страница автора.

У проекта нет официального магазина, подписки, облачного кабинета или отдельной мобильной редакции. Не следует смешивать PDF Stream Dumper с утилитами, которые просто «выгружают потоки» из PDF, с одноимёнными скриптами либо с просмотрщиками PDF. Здесь речь именно о программе SandSprite/David Zimmer с характерным графическим интерфейсом, анализатором объектов, JavaScript UI и средствами работы с shellcode.

Поскольку инструмент создан для исследования недоверенных документов, к цепочке загрузки стоит относиться строже, чем к обычному просмотрщику. Загружайте установщик только с сайта автора, сохраняйте локальный хэш полученного файла для собственной фиксации и проверяйте его средствами защиты в вашей лабораторной среде. На официальной странице не опубликован современный подписанный каталог контрольных сумм для сборки 0.9.624, поэтому старые хэши из сторонних инструкций могут не совпадать с текущим файлом и не должны использоваться как единственный критерий подлинности.

Что такое PDF Stream Dumper

PDF Stream Dumper появился как бесплатный исследовательский инструмент для анализа вредоносных PDF. Автор — David Zimmer, известный под ником dzzie; проект размещён на SandSprite. В отличие от Acrobat-подобных программ, он не строит рабочий процесс вокруг страницы как визуального листа. Его единица анализа — PDF-объект, поток, словарь, заголовок и связанный с ними код или бинарные данные.

Главная задача программы — сделать внутреннее устройство PDF обозримым. Пользователь может просмотреть объекты, декодированные потоки, смещения и заголовки, найти строки, увидеть поток в hex-представлении, сохранить исходные и распакованные данные, а также исследовать JavaScript. Для вредоносных документов это важно: скрытые от обычного просмотра действия и скрипты остаются частью структуры файла.

Статус проекта важно отделять от доступности загрузки. Официальная страница и файлы сохраняются, но регулярного современного changelog нет, а Lenny Zeltser характеризует PDF Stream Dumper как не поддерживаемый инструмент. Поэтому в 2026 году это legacy-программа, а не активно развиваемая линия.

Основные функции PDF Stream Dumper

Разбор объектов и потоков

Базовый режим показывает перечень PDF-объектов и позволяет переходить к их содержимому. Для потока доступны служебные сведения вроде смещения в файле, заголовка и параметров. Разработчик указывает просмотр всех PDF-объектов, deflated-потоков и hex dump, поиск строк, сохранение raw-данных и декодированного содержимого. Это превращает программу в интерактивный структурный браузер, а не в рендерер страниц.

Поддерживаются FlateDecode, RunLengthDecode, ASCIIHexDecode, ASCII85Decode, LZWDecode, JBIG2, CCITTFaxDecode и DecodePredictors. Существенная особенность — цепочки фильтров: если один поток проходит через несколько последовательных кодировок или упаковок, PDF Stream Dumper умеет применять несколько фильтров. Для анализа обфускации это полезнее простого извлечения байтов «как есть».

Главное окно PDF Stream Dumper со списком объектов и меню работы с потоками
Главное окно: слева перечислены объекты, в центральной области виден декодированный поток, меню содержит операции поиска, распаковки и сохранения.

Исследование JavaScript

Встроенный JavaScript UI объединяет форматирование кода через JS Beautifier, базовую деобфускацию, рефакторинг имён, поиск и работу с частями встроенного скрипта. В наборе вспомогательных средств заявлены упрощение фрагментированных строк, Unicode-safe unescape, hex dump и некоторые эмуляции распространённых Adobe API. Исторически это позволяло исследовать PDF-эксплойты, в которых полезная нагрузка собиралась из строк и выполнялась через JavaScript.

Здесь есть принципиальное ограничение безопасности: интерфейс умеет запускать части сценария, а на официальном скриншоте прямо предупреждается, что выполнение идёт «live» и без sandbox. Поэтому для недоверенного файла разумный режим — форматирование, статический просмотр, поиск, ручное упрощение строк и экспорт кода, но не кнопка запуска на рабочем компьютере. Любое динамическое исполнение следует переносить в одноразовую изолированную виртуальную машину без доступа к рабочим данным и, по возможности, без исходящего сетевого соединения.

Интерфейс PDF Stream Dumper для анализа JavaScript
JavaScript UI показывает редактор скрипта, список сохранённых фрагментов и инструменты анализа; предупреждение в окне указывает на выполнение без песочницы.

Рефакторинг и деобфускация

Отдельный механизм рефакторинга предназначен для скриптов с бессмысленными случайными именами функций и переменных. Он может заменить их на более последовательные обозначения, сохраняя исходный текст для сопоставления. Это не «детектор вредоносности», а средство повышения читаемости: аналитик всё равно должен проследить ссылки между объектами, понять условия выполнения и проверить, не меняется ли смысл кода при автоматическом упрощении.

Окно рефакторинга JavaScript в PDF Stream Dumper
Модуль рефакторинга сопоставляет исходный и переименованный код, упрощая чтение обфусцированных сценариев.

Поиск признаков эксплуатации и работа с shellcode

В программе есть Exploit Scan — сигнатурный поиск функций и конструкций, которые разработчик связал с известными PDF-эксплойтами. Исторические учебные материалы показывают, как он отмечал, например, эксплуатацию старых уязвимостей Adobe Reader и указывал номер потока. Этот результат следует трактовать как подсказку для анализа, а не как антивирусный вердикт. База создавалась под угрозы своего времени, поэтому отсутствие совпадения ничего не доказывает о безопасности современного документа.

Для shellcode предусмотрены интерфейсы к sclog, scdbg/libemu, преобразование shellcode в исполняемый файл и экспорт unescaped-байтов. Такие функции объясняют, почему PDF Stream Dumper долго использовался в лабораториях malware analysis: исследователь мог пройти путь от PDF-объекта до подозрительного бинарного фрагмента в одном окружении. Однако именно эта часть наиболее чувствительна к возрасту зависимостей и не должна рассматриваться как современная песочница.

Автоматизация и плагины

Официальная страница описывает скриптовый интерфейс для обработки наборов файлов и генерации отчётов. В комплекте или рядом с проектом приводятся VBS-сценарии для CSV-статистики, поиска строки по декодированным потокам, обнаружения неподдерживаемых фильтров, цепочек фильтров и обфусцированных заголовков. Также перечислены плагины Build_DB.dll для работы с коллекцией образцов и obj_browser.dll для представления структуры PDF в виде дерева.

Есть и документированный параметр командной строки для извлечения: программа принимает PDF, ключ /extract и каталог назначения, после чего пытается сохранить извлекаемые потоки в отдельные файлы. Это полезно в конвейере анализа, но интерфейс при таком запуске исторически всё равно может быть видимым; PDF Stream Dumper не позиционировался как headless-сервис для серверной обработки.

Плагин Object Browser в PDF Stream Dumper с деревом структуры PDF
Object Browser представляет страницы, служебные объекты и содержимое выбранного элемента в древовидной форме.

Интерфейс и удобство использования

Интерфейс типичен для технических Windows-утилит эпохи VB6: много команд в верхнем меню, список объектов слева, крупная область данных по центру и строка состояния с параметрами документа. Меню и подписи на скриншотах англоязычные; русская локализация не заявлена. Плюс — высокая плотность информации: после выбора объекта сразу видны его данные и доступны операции над конкретным потоком.

Навигация строится от структуры файла. Аналитик сначала выбирает объект, затем смотрит заголовок или распакованный поток, при необходимости переходит к связанному номеру объекта, запускает поиск по строкам или открывает JavaScript UI. Отдельный Object Browser добавляет более привычное дерево. Логика хорошо соответствует PDF-форензике, но предполагает понимание терминов obj, stream, filter, dictionary, xref, OpenAction, JavaScript и EmbeddedFile.

Порог освоения поэтому выше, чем у обычного редактора. Пользователь без знания внутренней модели PDF легко примет цветовую маркировку или сигнатуру эксплойта за окончательный диагноз. Лучше сначала разобрать несколько безопасных PDF, сопоставляя объекты с выводом pdf-parser или qpdf, и лишь затем переходить к подозрительным образцам.

Поддерживаемые форматы и совместимость

Основной входной формат — PDF. Программа работает именно с внутренней структурой PDF-файла и не является универсальным анализатором DOCX, EPUB или изображений. При перетаскивании на приложение .js и .vbs могут трактоваться как сценарии автоматизации, .sc — как shellcode, а прочие файлы программа исторически пытается загрузить как PDF. Это служебное поведение не следует понимать как полноценную поддержку дополнительных документных форматов.

Экспорт ориентирован не на конвертацию документа целиком, а на материалы анализа: raw- и декодированные потоки, извлечённые объекты, байты, отчёты и результаты скриптов. Расширение извлечённого файла программа может выбирать по предполагаемому типу данных. Отдельные automation scripts используют PDFBox для извлечения изображений или текста, но это интеграционный сценарий, а не доказательство того, что PDF Stream Dumper сам является OCR-системой или универсальным конвертером.

Разработчик исторически указывает «WinXP+». Это формулировка старой страницы, а не обещание сертифицированной поддержки каждой последующей версии Windows. Программа основана на 32-битной экосистеме Visual Basic 6 и COM. Microsoft по-прежнему поддерживает основные VB6 runtime-файлы в Windows 10 и 11, причём на 64-битных системах такие приложения работают через WOW. Это делает запуск старого ПО технически возможным, но не заменяет тестирование конкретной сборки PDF Stream Dumper и его сторонних компонентов.

Нативных версий для macOS, Linux, Android и iOS у этого продукта нет. Для кроссплатформенного анализа логичнее использовать Python-инструменты, qpdf или готовое специализированное окружение вроде REMnux. Для обычного чтения PDF на Windows гораздо уместнее Sumatra PDF, а не попытка использовать анализатор потоков как просмотрщик.

Производительность и стабильность

Публичных современных бенчмарков у PDF Stream Dumper нет, поэтому корректно оценивать его не по вымышленным «секундам запуска», а по архитектурным ограничениям. Это 32-битное настольное приложение со старым набором компонентов, рассчитанное на интерактивное исследование отдельных подозрительных файлов и небольших коллекций. Для массовой серверной обработки миллионов документов или для очень крупных PDF с сотнями мегабайт потоков лучше выбирать инструменты, которые активно развиваются, имеют 64-битные сборки и документированные интерфейсы автоматизации.

Сильная сторона — возможность декодировать поток и сразу переключиться к поиску, hex-представлению или JavaScript-инструментам без цепочки внешних утилит. Слабая — зависимость от конкретных фильтров и внешних библиотек. В официальном наборе есть сценарий, специально ищущий PDF с неподдерживаемыми фильтрами, что само по себе показывает: универсального декодирования любого PDF-потока не обещается.

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

Лицензирование и версии

Разработчик называет PDF Stream Dumper бесплатным open-source-инструментом и предоставляет рядом с установщиком архив исходного кода. Платной редакции Pro, тарифа по подписке, лимита на количество документов, регистрации аккаунта или пробного периода на официальной странице нет. Для основной работы не нужен лицензионный сервер.

При этом проект собирает множество сторонних компонентов: в credits перечислены Scintilla, JS Beautifier, zlib, iTextSharp, код CRC32, olly.dll, MuPDF, CCITTFaxDecoder, libemu, GraphViz и другие элементы. У них разные лицензии и условия. Официальная страница продукта не сводит всё это к одной современной краткой лицензии для корпоративного перераспространения. Поэтому «бесплатно и open source» достаточно для понимания пользовательской модели, но организациям, которые собираются модифицировать или повторно распространять пакет, следует отдельно проверить файлы лицензий и notices в исходниках конкретной сборки.

Системные требования

Windows и разрядность

Единственное короткое требование на странице автора — Windows XP и новее. Поскольку оно было сформулировано много лет назад, его нельзя читать как официальную сертификацию Windows 11 26H1. Само приложение относится к 32-битной VB6-экосистеме. Microsoft продолжает поддерживать VB6 runtime-файлы на актуальных Windows, а 32-битные приложения на 64-битной Windows работают через слой совместимости WOW.

.NET Framework для части функций

Автор отдельно указывает, что .NET Framework 2/3 нужен для некоторых фильтров; PdfDecryptor на базе iTextSharp исторически требует .NET Framework 2.0. На современных Windows практическая зависимость закрывается веткой .NET Framework 3.5, которая включает компоненты 2.0/3.0. Для Windows 10 и Windows 11 до 25H2 Microsoft описывает включение .NET 3.5 как компонента системы. Начиная с Windows 11 26H1 (build 28000) .NET Framework 3.5 распространяется отдельным установщиком и больше не является обычным optional component.

Официальных требований по объёму ОЗУ, свободному месту, GPU или разрешению экрана автор не публикует. Придумывать их не следует. На практике лабораторная виртуальная машина должна иметь запас места не только под программу, но и под копии образцов, распакованные потоки, отчёты и снимки VM.

Карта критических зависимостей

ЗависимостьНужна для чегоПрактический риск
WindowsЗапуск GUI и COM/VB6-компонентовНет нативной версии для других ОС; современная совместимость не сертифицирована автором
VB6 runtime/COMРабота основной программы и части компонентов32-битная legacy-архитектура, возможны проблемы регистрации старых OCX/DLL
.NET Framework 2/3.xЧасть фильтров и исторический PdfDecryptorНа новых Windows способ установки зависит от версии ОС
ИнтернетНужен для загрузки программы и зависимостейДля анализа подозрительных PDF лучше отключать сеть, если она не требуется сценарию
Аккаунт или сервер SandSpriteНе указаны как зависимость локального разбораОфициальное описание строится вокруг настольного приложения
Сторонние декодеры и утилитыРасширенные фильтры, shellcode и дополнительные операцииИменно они чаще всего становятся источником совместимости и устаревания

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

Паспорт обратимости операций

ОперацияМеняет исходный PDFКак сохранить обратимость
Просмотр объектов, поиск, hex dumpНетРаботать с копией и фиксировать хэш оригинала
Save Raw / Save DecompressedНетСохранять результат в отдельный каталог с номером объекта
Извлечение через /extractНетНе запускать извлечённые файлы; хранить их как производные артефакты
Beautify и рефакторинг JavaScriptОбычно работа идёт в аналитическом представленииНе выполнять Update Current Stream без необходимости; сохранять исходный скрипт отдельно
Replace/Update PDF StreamДа, создаёт изменённое содержимоеНикогда не работать над единственным экземпляром; сравнивать хэши и структуры до/после
Live-запуск JavaScript или shellcode-инструментовФайл может не меняться, но состояние ОС может изменитьсяТолько одноразовая изолированная VM; после опыта откат к снапшоту

Это особенно важно в форензике. «Undo» внутри программы не заменяет неизменяемый оригинал: доказательный файл должен оставаться отдельным, а все преобразования — выполняться над копиями с понятной цепочкой происхождения.

Преимущества и недостатки PDF Stream Dumper

Плюсы и минусы

Плюсы ✔️
  • Специализация на внутренней структуре PDF, а не на визуальном рендеринге страниц.
  • Просмотр объектов, потоков, смещений, hex-данных и декодированного содержимого в одном GUI.
  • Поддержка нескольких распространённых PDF-фильтров и цепочек фильтров.
  • Инструменты форматирования, рефакторинга и базовой деобфускации JavaScript.
  • Сохранение raw/decoded данных, извлечение объектов и скриптовая автоматизация.
  • Бесплатное распространение и доступность исходного кода у автора.
  • Низкий порог входа именно для аналитика, который предпочитает GUI командной строке.
Минусы ❌
  • Legacy-статус: официальный релизный цикл и современная поддержка не прослеживаются.
  • Только Windows; архитектура опирается на старые 32-битные VB6/COM-компоненты.
  • Часть функций зависит от .NET Framework 2/3.x и сторонних библиотек.
  • Exploit Scan нельзя считать актуальным детектором современных угроз.
  • Live-выполнение JavaScript идёт без встроенной песочницы и требует отдельной изоляции.
  • Нет гарантий обработки всех фильтров и намеренно повреждённых PDF; критические выводы надо перепроверять.
  • Интерфейс и терминология рассчитаны на исследователя PDF, а не на обычного пользователя.

Сравнение с аналогами

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

ИнструментИнтерфейсНизкоуровневые объектыJavaScript/подозрительные признакиПлатформыЛучший сценарий
PDF Stream DumperGUIДа, объекты и потокиСильная историческая специализация, но устаревшая базаWindowsИнтерактивный разбор старых и учебных вредоносных PDF
pdf-parser.py + PDFiDCLIДаPDFiD быстро считает подозрительные ключевые слова, pdf-parser детализирует объектыГде доступен PythonВоспроизводимый триаж и скриптуемый анализ
peepdfCLI/консольДаОриентирован на анализ PDF и JavaScriptPython-средаИнтерактивный консольный анализ, если устраивают его зависимости
qpdfCLI/APIДа, включая JSON-представлениеНе malware-сканер; даёт точную структуру для дальнейшего анализаКроссплатформенноСовременная автоматизация, нормализация и машинный разбор структуры
Sumatra PDFGUIНет как forensic-функцииНе предназначен для malware analysisWindowsБыстрое чтение и рендеринг PDF и других документов

У pdf-parser и PDFiD Дидье Стивенса сильная сторона — прозрачная командная строка. PDFiD специально ищет такие элементы, как /JS, /JavaScript, /AA, /OpenAction, /JBIG2Decode и /ObjStm, после чего pdf-parser позволяет перейти к объектам и потокам. Для автоматизированного triage это зачастую удобнее старого GUI. qpdf, в свою очередь, умеет выдавать структуру PDF в JSON и включать данные потоков; это делает его хорошей основой для собственных современных пайплайнов, хотя он не заменяет специализированный анализ JavaScript.

Для повседневного просмотра выбор обратный. Sumatra PDF предназначен для чтения PDF, EPUB, MOBI, DjVu, XPS и других форматов, имеет актуальные сборки Windows и portable-вариант. Если нужно просто открыть документ, использовать PDF Stream Dumper вместо Sumatra PDF бессмысленно. Если нужен полноценный редактор страниц, аннотаций и форм, уместнее смотреть на PDF-XChange Editor или Adobe Acrobat Pro. Для другого лёгкого просмотрщика можно сравнить возможности с Foxit Reader. Эти продукты не заменяют forensic-анализатор, а закрывают пользовательские задачи, которых у PDF Stream Dumper нет.

Инструкция по установке

Подготовка лаборатории

  1. Создайте отдельную Windows-VM для анализа недоверенных документов. Не используйте рабочую станцию, на которой есть корпоративные токены, браузерные профили или личные файлы.
  2. Сделайте чистый snapshot виртуальной машины до установки. Если планируется динамический анализ, заранее решите, нужен ли сети доступ; для статического разбора его лучше не давать.
  3. Проверьте версию Windows и наличие требуемого .NET Framework. Для функций, зависящих от .NET 2/3, на современных системах ориентируйтесь на официальную схему установки .NET Framework 3.5 именно для вашей версии Windows.

Установка PDF Stream Dumper

  1. Откройте официальную страницу PDF Stream Dumper на SandSprite и скачайте PDF Stream Dumper Setup 0.9.624 по HTTPS. Не подменяйте этот путь случайным зеркалом.
  2. Сохраните хэш загруженного установщика в журнале лаборатории и проверьте файл средствами защиты. Отсутствие совпадений у антивируса не является доказательством безопасности, но даёт дополнительную контрольную точку.
  3. Запустите установщик внутри подготовленной VM. Программа активно использует COM-компоненты, поэтому именно штатная установка предпочтительнее попытки просто скопировать один EXE.
  4. Если конкретный фильтр или PdfDecryptor сообщает об отсутствующем .NET, установите поддерживаемый Microsoft пакет .NET Framework 3.5 для своей версии Windows и перезапустите приложение. Не скачивайте случайные старые runtimes со сторонних сайтов.
  5. Первый запуск выполните на заведомо безопасном небольшом PDF. Убедитесь, что список объектов строится, выбранный поток можно просмотреть и сохранить, а затем создайте новый snapshot рабочей лаборатории.

У разработчика нет актуальной отдельной инструкции по удалению для современных Windows, поэтому при публикации обзора некорректно придумывать специальные команды очистки. Если приложение зарегистрировано штатным установщиком в списке установленных программ, удаление следует выполнять стандартным механизмом Windows. Перед этим сохраните собственные automation scripts, плагины, отчёты и экспортированные артефакты; shared COM-библиотеки не стоит вручную удалять из System32/SysWOW64 без понимания зависимостей других программ.

Практические кейсы

Статический триаж подозрительного PDF без рендеринга страниц

Цель. Быстро понять, какие объекты требуют внимания, не открывая документ в полноценном Reader. Подготовка. Работайте с копией файла в изолированной VM, сохраните SHA-256 оригинала и отключите live-запуск JavaScript. Шаги. Загрузите PDF, просмотрите цветовую и объектную карту, найдите /OpenAction, /AA, /JavaScript, /JS, /EmbeddedFile, /Launch и связанные ссылки; откройте подозрительные потоки в декодированном виде; используйте Exploit Scan только как дополнительную подсказку. Проверка результата. Сопоставьте номер объекта и ссылку на него с выводом второго парсера, например pdf-parser или qpdf. Ограничение. Отсутствие старой exploit-сигнатуры не означает, что файл безопасен.

Извлечение вложенного потока для отдельного исследования

Цель. Получить бинарный или текстовый артефакт, не выполняя его. Подготовка. Создайте каталог evidence-derived и договоритесь об имени, включающем номер PDF-объекта. Шаги. Выберите поток, сначала сохраните Raw Stream, затем при необходимости Decompressed Stream. Если тип понятен, присвойте расширение только копии; оригинальные байты оставьте без изменений. Проверка результата. Посчитайте хэш обоих файлов, сравните размеры и проверьте сигнатуру формата отдельным инструментом. Ограничение. Декодированный поток может быть лишь частью составного объекта, а расширение не доказывает его семантику.

Разбор обфусцированного JavaScript без кнопки Run

Цель. Повысить читаемость скрипта и извлечь индикаторы без исполнения. Подготовка. Зафиксируйте исходный текст JavaScript, отключите сеть VM и не используйте live execution. Шаги. Передайте код в JavaScript UI, примените beautify, затем аккуратно используйте функции упрощения строк и рефакторинга имён. Ищите URL, имена файлов, строки API и данные, собираемые через unescape. Проверка результата. Каждый автоматически упрощённый участок сопоставляйте с исходным и сохраняйте обе версии. Ограничение. Эмуляция Acrobat API неполная, а автоматическое переименование помогает чтению, но не доказывает поведение кода.

Пакетное извлечение потоков

Цель. Получить из набора PDF отдельные потоки для последующей классификации. Подготовка. Используйте копии файлов и отдельный каталог на каждый образец. Шаги. Документированный режим командной строки имеет вид: PDFStreamDumper с путём к PDF, ключом /extract и каталогом назначения. Программа пытается обработать доступные потоки и называет файлы stream_x с расширением, если тип удалось определить. Проверка результата. Сверьте количество извлечённых элементов с объектами в GUI и отдельно отметьте ошибки декодирования. Ограничение. Это не современный headless API, и неподдерживаемые фильтры или повреждённая структура могут привести к пропускам.

Навигатор по сбоям

СимптомЧто проверитьБезопасное действиеКонтроль
Поток не декодируетсяСписок /Filter и цепочку фильтровСохранить raw stream и разобрать вторым инструментомСравнить длину и хэш raw-копии
Функция требует .NETВерсию Windows и состояние .NET 3.5Установить поддерживаемый Microsoft компонент для этой ОСПовторить операцию на безопасном PDF
Программа не видит объектЦелостность xref и наличие object streamsПроверить qpdf/pdf-parser, не «чинить» оригиналСопоставить номера объектов
Exploit Scan ничего не нашёлЕсть ли подозрительные действия, JS и вложения вручнуюПродолжить структурный анализСверить с независимым триажем
После обновления потока PDF сломанРаботали ли над копиейВернуться к неизменённому экземпляру и повторить на новой копииСравнить структурный diff и хэши

Контроль перед сохранением и передачей

  • Оригинальный PDF хранится отдельно и его хэш записан до анализа.
  • Raw- и decoded-потоки имеют разные имена и не перезаписывают друг друга.
  • В отчёте указан номер объекта, из которого получен каждый артефакт.
  • Рефакторированный JavaScript не подменяет исходный текст.
  • Любой вывод Exploit Scan помечен как сигнатурная подсказка, а не окончательный вердикт.
  • Извлечённые EXE, SWF, скрипты и shellcode не запускались на основной машине.
  • Критические структурные наблюдения подтверждены вторым парсером.
  • Перед передачей коллегам удалены случайно сохранённые сетевые пути, личные каталоги и другие лишние данные лаборатории.

Часто задаваемые вопросы

PDF Stream Dumper — это PDF-ридер?

Нет. Он не предназначен для комфортного визуального чтения страниц. Для чтения на Windows рациональнее использовать Sumatra PDF или другой обычный просмотрщик. PDF Stream Dumper нужен, когда важны внутренние объекты, потоки, скрипты и признаки эксплуатации.

Можно ли считать Exploit Scan антивирусной проверкой?

Нет. Функция ищет известные программе признаки старых PDF-эксплойтов и полезна как указатель на интересный поток. База не является современной службой threat intelligence, поэтому и положительный, и отрицательный результат требуют ручной проверки.

Отправляет ли программа PDF в облако?

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

Работает ли PDF Stream Dumper в Windows 11?

Автор публикует только историческое требование WinXP+, а не современную сертификацию Windows 11. Базовые VB6 runtime-файлы поддерживаются Microsoft и в Windows 11, но старые COM-компоненты и .NET-зависимости требуют практической проверки. Для Windows 11 26H1 установка .NET Framework 3.5 уже выполняется отдельным пакетом Microsoft.

Есть ли версия для Linux или macOS?

Нативной версии нет. На этих платформах практичнее использовать pdf-parser/PDFiD, qpdf и другие кроссплатформенные инструменты либо специализированную Linux-лабораторию.

Можно ли редактировать обычный текст на странице?

PDF Stream Dumper умеет заменять или обновлять отдельные потоки, но это низкоуровневая операция, а не визуальное редактирование текста. Для обычной правки содержимого лучше выбрать редактор вроде Master PDF Editor.

Подходит ли программа для расшифровки любых защищённых PDF?

Нет. На официальной странице упоминается исторический PdfDecryptor на iTextSharp и .NET 2.0, причём сам автор позже выражал неудовлетворённость встроенным дешифратором. Современную поддержку всех алгоритмов PDF-шифрования считать подтверждённой нельзя.

Что использовать вместо него для автоматизации?

Для командной строки удобны PDFiD и pdf-parser, а для структурного преобразования и машинной обработки — qpdf с JSON-представлением. Если нужен не анализ угроз, а обычная обработка PDF, стоит выбирать другой класс программ, например PDF24 Creator.

Вывод

PDF Stream Dumper остаётся интересным специализированным инструментом для тех, кому нужно видеть PDF «изнутри»: объекты, потоки, фильтры, JavaScript и извлекаемые данные. Его главное достоинство — объединение большого числа исследовательских операций в одном Windows GUI. Для учебного анализа старых вредоносных PDF, разбора CTF-образцов и ручной форензики он по-прежнему может быть удобен.

В 2026 году выбирать его следует с учётом возраста проекта: активная поддержка не прослеживается, архитектура опирается на VB6/COM и старые .NET-компоненты, а Exploit Scan не является современным детектором. Для автоматизированного triage чаще разумнее PDFiD/pdf-parser или qpdf; для чтения — Sumatra PDF; для визуального редактирования — полноценный PDF-редактор. PDF Stream Dumper уместен именно как узкий инструмент разбора структуры подозрительного PDF.


Ваш адрес email не будет опубликован. Обязательные поля помечены *