В последнее время в статьях и пентестерских отчетах все чаще упоминается Apache Tomcat. И неспроста. Он занимает шестую строчку по популярности среди веб-серверов в рейтинге W3Techs, что делает его привлекательной мишенью для злоумышленников. Настройки по умолчанию в Apache Tomcat не позволяют противостоять распространенным методам атак, поэтому предлагаю ознакомиться с основными техниками, используемыми для взлома, а также способами противодействия.

WARNING

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

 

Введение

Apache Tomcat — открытое приложение, разрабатываемое Apache Software Foundation и представляющее собой контейнер сервлетов. Написан на языке Java. Tomcat может выступать в качестве самостоятельного веб-сервера, сервера контента в сочетании с веб-сервером Apache HTTP Server, а также в качестве контейнера сервлетов в серверах приложений GlassFish и JBoss Application Server. По данным W3Techs, его используют 0,6% всех сайтов (а с учетом локальных сетей эта цифра в разы увеличивается). Так, поисковая система Shodan находит порядка 955 тысяч веб-ресурсов, работающих на данном веб-сервере. Это указывает на то, что Apache Tomcat служит местом потенциального интереса для злоумышленников.

Если говорить о конкретных применениях, то Apache Tomcat можно встретить в системе голосовой почты Cisco Unity Express, в решении Cisco для управления сетями Cisco Network Registrar, в автоматизированных библиотечных информационных системах, в системе управления множеством точек доступа из единого центра управления UniFi, в Server Backup Manager от R1Soft, в системе взаимодействия с сервисами ГИС ГМП, в НБКИ (iDБанк-СМЭВ, Credit Registry), в ДБО, в веб-тулбарах для принтеров.

Чтобы познакомиться с основными видами атак на Tomcat и методами противодействия им, возьмем версию 7.0.77, установленную с настройками по умолчанию на Windows-машине. Адрес этой машины будет 192.168.223.130, адрес атакующего — 192.168.223.144. $CATALINA_HOME — место установки Tomcat. Приступим.

 

Разведка

 

Определение версии

Начнем с обнаружения открытых портов и определения используемой версии веб-сервера. По умолчанию Apache Tomcat расположен на порту 8080, но частенько его можно обнаружить на портах 8443, 8081, 80 и 443. На всякий случай с помощью Nmap просканируем все порты:

nmap -sS -sV -p - 192.168.223.130

После того как мы узнали, на каком порте находится Apache Tomcat, определим используемую версию. В старых версиях Apache Tomcat номер версии указывался в HTTP-заголовках X-Powered-By или Server, например Server: Apache Tomcat/4.0.6. Начиная с версий 5.5.29 и 6.0.23 HTTP-заголовок Server принимает значение Apache-Coyote/1.1. В таком случае определить версию можно, вызвав страницу с ошибкой или заглянув в «лишние» файлы: на страницы со справочной информацией (/docs/), страницы с примерами (/examples/) или в файл RELEASE-NOTES.txt:

http://192.168.223.130:8080/!
http://192.168.223.130:8080/docs/
http://192.168.223.130:8080/RELEASE-NOTES.txt

 

CVE-2006-1654

Кстати, уязвимость CVE-2006-1654, найденная в веб-тулбоксах HP Color LaserJet 2500/4600 (инструмент, предоставляющий доступ к справочной информации, информации о состоянии принтера и инструментам для диагностики и решения проблем), — «заслуга» именно Apache Tomcat. Уязвимость обхода каталога позволяет злоумышленнику получить доступ к любым файлам и каталогам уязвимой системы, включая исходные коды приложений, конфигурационные и системные файлы.

 

Поиск директорий и файлов

Поищем доступные директории и файлы. В этом нам поможет OWASP ZAP (раньше для этих целей использовался OWASP DirBuster, но тулза не обновляется с 2009 года, а на странице проекта взамен рекомендуют использовать именно OWASP ZAP). Все, что от тебя требуется, — это вставить URL-адрес для атаки и нажать на кнопку «Атака». При желании можешь указать свой файл для брута директорий.

Параметры поиска директорий
Параметры поиска директорий

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.


  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии