Что такое обход каталога?

Опубликовано: 2023-05-09

Обманывая веб-сервер, заставляя его раскрывать ограниченную информацию, злоумышленники могут получить мощный инструмент для компрометации системы и нанесения значительного ущерба. Обход каталога является распространенным методом, используемым для достижения этой цели. Попытка выйти за пределы областей файловой системы, зарезервированных для конкретного веб-сайта, может привести к краже данных и выполнению произвольного кода.

Как правило, веб-серверы ограничивают доступ к файловой системе, ограничивая файлы веб-сайта внутри его корневого каталога, также известного как корневая папка документа. Однако киберпреступники могут обойти эти меры безопасности и использовать небезопасные права доступа к файлам. Таким образом, они могут получить несанкционированный доступ к важной информации, хранящейся в другом месте на сервере жертвы.

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

В этом руководстве по обходу каталогов мы рассмотрим этот распространенный метод, используемый хакерами для выхода из корневого каталога веб-сайта для доступа к данным с ограниченным доступом. Вы узнаете, как обход пути позволяет злоумышленникам успешно использовать уязвимости локального включения файлов (LFI) для нанесения ущерба, и как защитить ваш веб-сайт WordPress от атак такого типа с помощью надежных методов обеспечения безопасности.

Во-первых, давайте более подробно рассмотрим концепции безопасной работы сервера. В частности, как разные типы данных разделены в серверной среде и какое место занимают данные веб-сайта в этой экосистеме.

обход каталога

Как секционирование данных помогает защитить работу сервера

Веб-сайты и веб-приложения полагаются на серверы для хранения своих данных. Затем эти данные обрабатываются веб-серверами и серверами баз данных, а также другими специальными приложениями, прежде чем доставляться в браузеры посетителей через Интернет в виде запрошенных веб-страниц. Базовые аппаратные и программные компоненты работают вместе, чтобы создать надежную инфраструктуру, поддерживающую эту функциональность.

Однако эта клиент-серверная архитектура также требует внимательного подхода к безопасности сервера. Критические сервисы и другие компоненты операционной системы сервера должны быть полностью отделены от пользовательских файлов и данных сайта. Такое разделение данных в файловой системе широко известно как разделение данных.

Разделение данных помогает защитить наиболее уязвимые аспекты операций сервера, разделяя различные типы данных на отдельные разделы. Реализация разделения файловой системы и других механизмов безопасности помогает защитить серверы от несанкционированного доступа к конфиденциальной информации и компрометации на уровне системы. Кроме того, разделение данных обеспечивает эффективное управление ресурсами и повышает производительность сервера за счет отделения часто изменяемых данных от файлов, предназначенных преимущественно только для чтения, и изоляции системных и пользовательских данных.

Контроль доступа к веб-серверу: ограничение данных веб-сайта корневыми документами

Чтобы изолировать данные веб-сайта от системных данных, веб-серверы используют концепцию корней документов. Это включает в себя ограничение файлов веб-сайта определенным каталогом в файловой системе, известным как корневой каталог веб-сайта. Определив корень документа, веб-сервер может правильно направлять и отвечать на входящие запросы для содержимого этого веб-сайта. Этот корневой каталог является отправной точкой для обработки веб-запросов для этого веб-сайта.

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

В дополнение к корням документов веб-серверы используют другие механизмы контроля доступа для дальнейшего ограничения доступа к данным веб-сайта. Одним из наиболее примечательных механизмов являются права доступа к файлам. Разрешения на доступ к файлам помогают обеспечить соблюдение принципа наименьших привилегий, что означает, что системным пользователям или процессам предоставляется только минимальный уровень доступа, необходимый для выполнения их предполагаемых функций.

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

Что такое обход каталога?

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

Обход каталога выполняется путем манипулирования переменными, которые ссылаются на файлы, с использованием специальных символов, известных как последовательности обхода пути. Последовательности, такие как точка-точка-слэш «../», интерпретируются веб-сервером, заставляя его перемещаться на один каталог вверх в иерархии файловой системы, удаляясь от корня документа веб-сайта.

Если веб-сайт хранится в /home/user/public_html, предоставление последовательности обхода каталога «../../../etc» позволит злоумышленнику перейти в каталог /etc, в котором хранится критическая конфигурация системы в Linux. серверы.

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

Файл /etc/passwd является одной из распространенных целей атак с обходом каталога. На серверах Linux файл /etc/passwd содержит список пользователей, созданных на сервере. Это может дать хакерам хорошую отправную точку для атак методом грубой силы на учетные данные пользователей. Поскольку /etc/passwd имеет права доступа к файлу 644, это означает, что он доступен для чтения всем пользователям системы, включая пользователя, от имени которого работает веб-сервер. Таким образом, веб-сервер может отображать содержимое файла через браузер.

Как работает обход каталога?

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

Уязвимости включения файлов позволяют использовать обход каталогов. Уязвимость обхода каталога возникает, когда веб-сайт неправильно обрабатывает вводимые пользователем данные, например пути к файлам, предоставленные с помощью динамического включения файлов. Сочетание локального включения файлов (LFI) и присутствующих уязвимостей обхода каталога позволяет хакерам получать доступ к данным за пределами корня документа целевого веб-сайта, раскрывая конфиденциальную информацию о сервере.

Пример обхода каталога

Чтобы лучше понять, как можно использовать уязвимости локального включения файлов и обхода каталогов, давайте рассмотрим следующий пример. Этот пример является упрощенным представлением того, как обход каталога используется через уязвимость включения файла.

Веб-разработчик добавляет веб-страницу content.php, которая будет использоваться для того, чтобы веб-сайт мог динамически загружать различные страницы или компоненты в зависимости от запроса пользователя. Например, если посетитель веб-сайта хочет просмотреть страницу «Свяжитесь с нами», его запрос может отображаться в адресной строке браузера как «https://website.com/content.php?page=contact_us».

Страница content.php будет использовать метод включения локального файла для ссылки на файл, соответствующий параметру «contact_us», который может содержать код PHP и HTML для запрошенной страницы «Свяжитесь с нами». В этом примере веб-страница content.php действует как контроллер, который загружает соответствующий файл, динамически генерирующий содержимое на основе ввода пользователя.

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

Например, хакер может передать «../../../../../var/log/apache2/access.log» в качестве значения параметра запроса страницы — ряд последовательностей обхода каталога, за которыми следует адрес основного журнала доступа веб-сервера Apache в файловой системе. Таким образом, злоумышленник может просмотреть содержимое файла журнала, который содержит конфиденциальную информацию, такую ​​как IP-адреса, строки пользовательского агента и URL-адреса, запрашиваемые посетителями веб-сайта.

Как права доступа к файлам могут облегчить или смягчить обход каталога

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

При атаке с включением файла с использованием обхода каталога содержимое файла, запрошенного злоумышленником, будет отображаться в браузере только в том случае, если его права доступа к файлу позволяют системе, использующей веб-сервер, работать как для его чтения. В то время как некоторые файлы с ограниченным доступом, такие как /etc/password, имеют разрешения 644, что делает их доступными для чтения всем системным пользователям, другие файлы остаются доступными только для пользователя root.

Файл /etc/shadow, который содержит зашифрованные пароли для всех пользователей на сервере Linux, имеет права доступа 640, что делает его недоступным для любых пользователей, кроме root. Это делает невозможным доступ хакеров к файлу через браузер через обход каталога.

Как обнаружить уязвимости обхода каталога на вашем сайте WordPress?

Ядро WordPress поддерживает высокий уровень безопасности и полностью защищено от уязвимостей включения файлов и обхода каталогов. Однако широкие возможности настройки, предлагаемые платформой, повышают вероятность наличия этих уязвимостей на сайте WordPress. Даже самые авторитетные плагины и темы WordPress могут содержать регулярно обнаруживаемые недостатки безопасности.

Еженедельные отчеты iThemes об уязвимостях WordPress помогают быстро выявлять и исправлять недавно обнаруженные уязвимости в плагинах и темах WordPress, включая обход каталогов. Просто проверьте отчеты об уязвимостях, чтобы узнать, были ли недавно обнаружены какие-либо недостатки безопасности в плагинах, которые вы используете на своем сайте WordPress, а также в вашей активной теме, и посмотрите, было ли выпущено исправление.

iThemes Security Pro может автоматизировать процесс сканирования вашего веб-сайта WordPress на наличие уязвимостей и быстро исправить обнаруженные недостатки от вашего имени. iThemes Security Pro будет проводить расширенное сканирование уязвимостей два раза в день, отправлять вам электронное письмо, если обнаружены какие-либо уязвимости, и автоматически устанавливать обновление, если доступно исправление безопасности.

Как защититься от обхода каталога?

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

Держите все программное обеспечение обновленным

Обновление ядра WordPress, активных плагинов и выбранной темы до последней доступной версии — это первый шаг к устранению обхода каталогов и других серьезных уязвимостей на уровне приложений. Поскольку в программном обеспечении, на котором работает ваш сайт WordPress, обнаруживаются новые недостатки безопасности, крайне важно устанавливать исправления безопасности, как только они становятся доступными. Прежде чем обнаруженная уязвимость будет устранена разработчиком плагина или темы, уязвимая часть программного обеспечения может быть отключена, чтобы уменьшить поверхность атаки.

Отслеживание обновлений плагинов и тем может быть непростой задачей, но с iThemes Security Pro владельцы веб-сайтов могут получить доступ к комплексному решению, которое упрощает процесс и помогает обеспечить актуальность веб-сайтов и защиту от уязвимостей безопасности. Функция управления версиями предлагает автоматические обновления программного обеспечения для защиты вашего сайта WordPress.

Настроить безопасные права доступа к файлам

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

Хранение критической информации WordPress, такой как файл wp-config.php, может помочь эффективно предотвратить компрометацию между учетными записями с помощью символических ссылок атак включения файлов, использующих уязвимости обхода каталога. Проверка прав доступа к файлам в iThemes Security Pro помогает владельцам веб-сайтов убедиться, что этот критически важный механизм безопасности правильно реализован на их сайтах WordPress.

Внедрение брандмауэра веб-приложений

Брандмауэры работают, фильтруя вредоносные веб-запросы, которые соответствуют известным шаблонам или демонстрируют аномальные шаблоны, прежде чем они будут переданы веб-серверу. В качестве надежной первой линии защиты от широкого спектра кибератак, управляемых ботами, таких как отказ в обслуживании (Dos) и распределенный отказ в обслуживании (DDoS), а также атак путем внедрения данных, таких как межсайтовый скриптинг (XSS) и SQL. инъекции (SQLi).

Внедрение брандмауэра веб-приложений (WAF) или комбинации решения для предотвращения вторжений на основе хоста и облака может значительно снизить вероятность успешной попытки взлома. Выступая в качестве второго уровня защиты от уязвимостей включения файлов и обхода каталогов, брандмауэры веб-приложений гарантируют, что хакеры могут использовать любые уязвимости безопасности, обнаруженные в неисправленных версиях плагинов и тем.

С IThemes Security Pro защита от грубой силы и встроенные решения для управления ботами помогают остановить вредоносных ботов и отфильтровать вредоносные веб-запросы, не доходящие до вашего веб-сайта. С добавлением многофакторной аутентификации, основанной на паролях с биометрическими логинами, этот комплексный пакет безопасности предлагает многогранный подход к защите вашего веб-сайта от различных типов угроз безопасности.

Защитите свой сайт WordPress с помощью iThemes Security Pro

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

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

iThemes Security Pro может помочь вам защитить ваш веб-сайт WordPress от широкого спектра киберугроз, предлагая комплексный многогранный подход к безопасности веб-сайта. Благодаря расширенному сканированию уязвимостей, автоматическим обновлениям программного обеспечения и мощным встроенным решениям для управления ботами iThemes Security Pro действует как ваш личный советник по безопасности, обеспечивая постоянную безопасность вашего веб-сайта WordPress.