Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   PDF + EXE (https://forum.antichat.xyz/showthread.php?t=209804)

d_x 07.06.2010 17:53

PDF + EXE
 
В начале года несколькими людьми была найдена "уязвимость" в формате PDF, позволяющая запускать произвольный код при открытии файла, которая на самом деле является документированной возможностью формата. Всего было опубликовано два типа уязвимостей: с использованием и без использования JavaScript.
После беглого изучения формата и специфики этой проблемы была реализована программа для внедрения exe файлов в тело pdf и последующего запуска exe при открытии. Конечно, при открытии pdf выдается предупреждение:

http://kaimi.ru/wp-content/uploads/2...ple-launch.png

Однако, существует возможность вывести произвольный текст в окне предупреждения (актуально для Acrobat Reader 9.*, в 8.* весь внедренный код вываливается целиком, и пользователь, скорее всего, что-нибудь заподозрит).

Программа обладает следующими возможностями:
  • Задание произвольного текста сообщение (лучше не делать текст длинным)
  • Задание имени временного vbs файла (используется для создания exe файла из тела pdf)
  • Задание имени временного exe
  • Возможность удаления exe через заданный интервал времени

Интерфейс программы предельно прост и выглядит следующим образом:

http://kaimi.ru/wp-content/uploads/2010/06/exe2pdf.png

Скачать: здесь


===== Как это работает? =====

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

Было много проблем плана "а как же спрятать exe?". Алгоритм таков: если пользователь разрешает запуск объекта, открывается cmd.exe, создающая небольшой vbscript-сценарий.

Этот сценарий запускается и начинает искать в текущей директории pdf-документ с самой последней датой изменения (очевидно, это будет наш коварный pdf). Сценарий открывает этот файл и считывает из него заданный диапазон байтов (это второй vbs-файл, спрятанный в конец pdf-документа) и записывает его в виде нового vbscript-сценария, после чего запускает. На этом работа первого сценария завершена.

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

Окно командной строки при всех этих манипуляциях появляется всего на пару секунд.

Такой подход позволяет спрятать в pdf-документе exe-файл любого размера и за несколько секунд запустить его.

Berman 07.06.2010 17:57

Отлично, спасибо. Т.е. теперь можно exe запустить прям с сайта?
Цитата:

http://site.com/test.pdf
и откроется exeшник?

Kaimi 07.06.2010 18:08

Нет, pdf создается в временной директория браузера, а vbs скрипт создается в директории с запускаемым файлом браузера.
Хотя, наверное можно адаптировать.

Ноль 07.06.2010 18:16

теперь школьнеки будут спамить пдфками

d_x 07.06.2010 18:18

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

Jingo Bo 07.06.2010 23:53

Мне недавно через pdf залепили в hosts переадресацию на свежинькие фейки для контакта + порно банер, причём не слабый. Открыл сайт(не порно), тут же в браузере(FF) открылся pdf документ, там каким то раком какой то код умудрился выполнить через "Выполнить" открытие через блокнот файл hosts, отредактировать и закрыть, а потом скачать порно банер. Благо секундное открытие блонота с файлом hosts заметил. Но было дикое удивление.

d_x 08.06.2010 00:39

Цитата:

Мне недавно через pdf залепили в hosts переадресацию на свежинькие фейки для контакта + порно банер, причём не слабый. Открыл сайт(не порно), тут же в браузере(FF) открылся pdf документ, там каким то раком какой то код умудрился выполнить через "Выполнить" открытие через блокнот файл hosts, отредактировать и закрыть, а потом скачать порно банер. Благо секундное открытие блонота с файлом hosts заметил. Но было дикое удивление.
Командной строке через pdf можно передать vbscript, и она его выполнит. Проблема в том, что если прятать большой exe внутри pdf - приходится разбивать всю структуру запуска на несколько vbscript'ов, потому что командной строке нельзя передавать чересчур длинный аргумент.

Jingo Bo 08.06.2010 02:17

Хех) Придётся вырубать плагин для pdf от греха подальше. А вообще круто сделали, обычный юзер даже не поймет что отредактировали в блокноте открыв обычный pdf, единственно в "Выполнить" палево остаётся:)

shell_c0de 08.06.2010 02:30

Почти у всех связках этот сплойт юзается щас ....
например свеженкая стата и пробив каждого..
Цитата:

Sploit: Loads:
Opera_telnet 1
MS09-002 13
javad 110
pdf_exp 267
mdac 691


Время: 09:48