Dziury w PDF

David Kierznowski odkrył w programach Adobe dziury pozwalające na zdalne wykonywanie kodu przy pomocy odpowiednio skonstruowanych plików PDF.

Pliki PDF - pomimo kilku wcześniejszych dziur - uchodziły do tej pory za raczej bezpieczne z punktu widzenia ochrony przed wirusami i końmi trojańskimi. Odkryte przez Kierznowskiego dziury wykorzystują różne formy linków zewnętrznych wbudowanych w format PDF. Według odkrywcy problem dotyczy zarówno Adobe Readera jak i Adobe Professional.

Pierwsza dziura wykorzystuje wbudowane w PDF linki do zewnętrznych dokumentów, dla których Acrobat bez ostrzeżenia uruchamia zewnętrzną przeglądarkę, co według Kierznowskiego może służyć do wykonania dowolnego złośliwego kodu.

Druga dziura wykorzystuje interfejs bazodanowy (ADBC) w PDF i pozwala na wykonywanie niektórych funkcji ODBC w lokalnym systemie. W zademonstrowanych przez autora kodzie proof-of-concept pokazano na przykład enumerację lokalnych baz danych (jeśli takie istnieją) i przesłanie wyników na zewnątrz przy pomocy programu netcat.

Kierznowski twierdzi, że poza tymi dwoma dziurami opisanymi szczegółowo na jego blogu istnieje jeszcze przynajmniej siedem podobnych podatności.

Odpowiedź Adobe

Adobe opublikowało w ostatnich dniach jedno ostrzeżenie na temat potencjalnych dziur w swoich programach w dokumencie 321644, jednak dotyczy on przepełnienia bufora a nie opisanych wyżej błędów. Należy oczekiwać, że na odpowiedź i poprawki Adobe do opisanych przez Kierznowskiego błędów przyjdzie jeszcze poczekać.

Do tego czasu należy być ostrożnym w otwieraniu pobieranych z sieci plików PDF. Kierznowski na swojej stronie opublikował dwa przykładowe pliki PDF, które demonstrują jakie mogą być konsekwencje: pierwszy przenosi od razu po załadowaniu na zewnętrzną stronę WWW, drugi pod Windows powinien uruchomić enumerację ODBC i przesłać wyniki na port 80 na localhost.