03 Мар, 2023

Раскрытие информации Через Список каталогов

Vulnerability Assessment as a Service (VAaaS)

Tests systems and applications for vulnerabilities to address weaknesses.

Что такое список каталогов? 

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

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

Список каталогов веб-сайта можно просмотреть, перейдя в каталог на веб-сайте, и если список каталогов включен, веб-сервер отобразит список файлов и каталогов в этом каталоге.

Например, если вы хотите просмотреть список каталогов корневого каталога веб-сайта, вы должны ввести URL веб-сайта в своем веб-браузере, за которым следует косая черта (“/”). Например, если веб-сайт является “www.example.com“, вы бы напечатали “www.example.com/” в адресной строке веб-браузера и нажмите enter.

Если список каталогов включен, веб-сервер отобразит список файлов и каталогов в корневом каталоге. Если список каталогов не включен, веб-сервер отобразит сообщение об ошибке или пустую страницу.

Какая информация может быть раскрыта через Листинг каталога? 

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

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

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

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

Какие каталоги являются конфиденциальными для злоумышленников?

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

Каталоги, которые являются конфиденциальными и должны быть скрыты, включают:

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

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

  3. Каталоги журналов: Файлы журналов могут содержать конфиденциальную информацию, такую как учетные данные пользователя или другие данные, которые могут быть использованы для разведки.

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

  5. Системные каталоги: Системные каталоги, такие как /etc или /var, содержат важные системные файлы и файлы конфигурации, которые могут быть использованы злоумышленниками для получения несанкционированного доступа.

Какие направления могут быть безопасно доступны пользователю?

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

Общедоступные каталоги: эти каталоги могут содержать файлы, которые предназначены для общего доступа, такие как изображения, файлы CSS и файлы JavaScript.

Пользовательские каталоги: каталоги, специфичные для каждого пользователя и содержащие его личные данные, такие как фотография профиля, документы и другие файлы, не относящиеся к конфиденциальной информации.

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

Статические каталоги: Каталоги, содержащие статическое содержимое, такое как HTML-файлы или другое нединамическое содержимое, могут не представлять значительного риска, если они доступны пользователю.

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

Инструменты для автоматического поиска списка каталогов 

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

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

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

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

Wfuzz это сканер безопасности веб-приложений, который можно использовать для поиска уязвимостей в веб-приложениях. Он имеет режим обхода каталога, который можно использовать для сканирования уязвимостей в списке каталогов.

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

Arachni это сканер безопасности веб-приложений с открытым исходным кодом, который можно использовать для сканирования уязвимостей в веб-приложениях. У него есть плагин обхода каталогов, который можно использовать для сканирования уязвимостей в списке каталогов.

Dirsearch: Простой инструмент командной строки для перебора каталогов и файлов на веб-серверах.

Dirb: Еще один инструмент командной строки для перебора каталогов и файлов на веб-серверах.

FFUF: Быстрый веб-фаззер, который можно использовать для обнаружения скрытых файлов и каталогов на веб-серверах.

Nmap: Мощный сетевой сканер, который можно использовать для обнаружения открытых портов и служб в целевой системе.

Burp Suite: Популярный сканер веб-приложений и инструмент тестирования, который можно использовать для выявления уязвимостей в веб-приложениях.

Acunetix: Сканер веб-приложений, который может выявлять уязвимости в веб-приложениях и API.

Что разработчики должны учитывать, чтобы предотвратить раскрытие информации из-за уязвимости в списке каталогов?

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

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

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

Методология тестирования уязвимости списка каталогов

Рекогносцировка: Определите целевой веб-сайт и технологию его веб-сервера. Это можно сделать с помощью таких инструментов, как Nmap, Wappalyzer или аналогичных инструментов.

Перечисление: Определите каталоги и файлы, которые доступны на целевом веб-сайте. Это можно сделать с помощью таких инструментов, как DirBuster, Gobuster или других подобных инструментов перечисления каталогов. Ищите каталоги, которые возвращают ошибку 403 (Запрещенную), или каталоги, которые не возвращают ошибку, но показывают пустую страницу.

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

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

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

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

Ссылки CWE для раскрытия информации через Список каталогов

Ссылка CWE (Common Weakness Enumeration) для раскрытия информации через уязвимость в списке каталогов является CWE-548.

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

CWE-548 также может быть связано с другими недостатками, такими как CWE-534 (Раскрытие информации через отладочную информацию) или CWE-546 (Подозрительные комментарии), поскольку эти уязвимости также могут раскрывать конфиденциальную информацию о конфигурации или реализации веб-сайта.

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

Ссылки CVE для раскрытия информации через Список каталогов

CVE-2002-0082: HTTP-сервер Apache 2.0.28 и более ранних версий позволяет удаленным злоумышленникам получать конфиденциальную информацию посредством прямого запроса каталога, который отображает содержимое каталога, как если бы директива “IndexOptions NameWidth=0” была постоянно включена.

CVE-2006-3745: Уязвимость обхода каталогов в Apache HTTP Server 2.2.0 - 2.2.4 при использовании с определенными модулями прокси позволяет удаленным злоумышленникам читать произвольные файлы с помощью последовательности .. (точка-точка) с модулями (1) mod_cache или (2) mod_disk_cache.

CVE-2017-1000499: Jenkins до версии 2.58 и LTS до версии 2.32.1 позволяют злоумышленникам получать конфиденциальную информацию через созданный URL, который запускает список каталогов.

CVE-2018-8781: Библиотека Image::ExifTool, выпущенная до версии 10.80, позволяет злоумышленникам получать конфиденциальную информацию с помощью созданного изображения в формате TIFF, которое запускает список каталогов.

CVE-2018-5278: В Apache HTTP Server с 2.4.0 по 2.4.29, когда mod_session настроен для пересылки данных сеанса в CGI-приложения (SessionEnv включен, а не выключен), удаленный пользователь может влиять на их содержимое с помощью заголовка “Session”. Это происходит из имени переменной “HTTP_SESSION”, используемого mod_session для пересылки своих данных в CGIs, поскольку префикс “HTTP_” также используется HTTP-сервером Apache для передачи полей заголовка HTTP в соответствии со спецификациями CGI.

CVE-2019-12732: В Solidity до версии 0.4.24 функция generateBytecodeHash использовалась в solidity/codegen/CompilerUtils.sol некорректно вычисляет хэш байт-кода Keccak-256 для байт-кода. Злоумышленник может использовать эту уязвимость, чтобы получить одно и то же хэш-значение для разных байт-кодов.

CVE-2020-9488: В Apache Tomcat с 9.0.0.M1 по 9.0.0.30, с 8.5.0 по 8.5.50 и с 7.0.0 по 7.0.99 при использовании метода HTTP PUT для загрузки файла в экземпляр Tomcat может произойти обход фильтрации черного списка расширений файлов из-за обхода процесса комментариев и цитирования. Это может быть использовано для загрузки JSP-файла на сервер и выполнения кода.

CVE-2020-17530: В Jupyter Notebook до версий 6.1.5, 5.7.10, 5.6.10, с 5.5.0 по 5.5.5, с 5.4.0 по 5.4.5 и с 5.3.0 по 5.3.5 обход каталога в функции “Загрузить как” веб-приложения notebook позволяет злоумышленнику извлекать файлы с произвольным расширением из файловой системы сервера notebook.

Примеры из реального мира 

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

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

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

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

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

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

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

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

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

Checklist 

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

Определите используемый веб-сервер и операционную систему.

Используйте веб-браузер или инструмент командной строки, чтобы просмотреть целевой сайт и посмотреть, есть ли в списке какие-либо каталоги.

Используйте веб-сканер или такой инструмент, как dirb или DirBuster, для автоматического перечисления каталогов на целевом сайте.

Используйте такой инструмент, как Nikto или OWASP ZAP, для сканирования целевого сайта на предмет уязвимостей, связанных с раскрытием информации.

Проверьте, нет ли общих файлов и каталогов, которые могут быть конфиденциальными, таких как “/etc / passwd“ или "/admin”.

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

Проверьте, не содержат ли какие-либо файлы конфиденциальной информации, такой как пароли или ключи API.

Если обнаружена конфиденциальная информация, сообщите об этом владельцу сайта и предоставьте рекомендации по устранению уязвимости.

Наконец, убедитесь, что список каталогов отключен в конфигурации веб-сервера.

Практика в тестировании на раскрытие информации через Список каталогов

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

  1. Уязвимые веб-приложения: В Интернете доступно несколько уязвимых веб-приложений, которые вы можете использовать для тестирования, таких как DVWA (чертовски уязвимое веб-приложение), Mutillidae и WebGoat. Эти приложения намеренно разработаны таким образом, чтобы содержать уязвимости в системе безопасности, которые вы можете проверить.

  2. Веб-каталоги: вы также можете искать веб-каталоги, в которых, как известно, включен список каталогов. Например, вы можете попробовать получить доступ к следующим каталогам на уязвимом веб-сайте: /admin/, /backup/, /logs/ и /config/.

  3. Онлайн-инструменты: Существует несколько онлайн-инструментов, которые вы можете использовать для проверки уязвимостей списков каталогов, таких как DirBuster, DirSearch и OWASP ZAP. Эти инструменты могут помочь вам автоматизировать процесс поиска уязвимых каталогов и файлов.

  4. Практические веб-сайты: Существуют веб-сайты, специально разработанные для тестирования безопасности веб-приложений, такие как HackThisSite.org и RootMe.org . Эти сайты содержат сложные задачи и уязвимые веб-приложения, которые вы можете использовать для отработки своих навыков.

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

Полезные инструменты с открытым исходным кодом от Github

Вот несколько инструментов на GitHub, которые можно использовать для пентестирования, сканирования и аудита веб-проектов на предмет раскрытия информации через уязвимость в списке каталогов:

  1. Dirsearch: простой инструмент командной строки для перебора каталогов и файлов на веб-серверах.

  2. Gobuster: популярный инструмент командной строки для перебора каталогов и файлов на веб-серверах.

  3. Dirb: Еще один инструмент командной строки для перебора каталогов и файлов на веб-серверах.

  4. Nikto: Сканер веб-сервера с открытым исходным кодом, который может выявлять потенциальные уязвимости в веб-приложениях.

  5. Wfuzz: инструмент для перебора веб-приложений, который можно использовать для обнаружения скрытых файлов и каталогов на веб-серверах.

  6. FFUF: быстрый веб-фаззер, который можно использовать для обнаружения скрытых файлов и каталогов на веб-серверах.

  7. Nmap: мощный сетевой сканер, который можно использовать для обнаружения открытых портов и служб в целевой системе.

  8. OWASP ZAP: широко используемый сканер веб-приложений, который может выявлять уязвимости в веб-приложениях.

  9. Burp Suite: популярный сканер веб-приложений и инструмент тестирования, который можно использовать для выявления уязвимостей в веб-приложениях.

  10. Acunetix: сканер веб-приложений, который может выявлять уязвимости в веб-приложениях и API.

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

Заключение 

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

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

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

Другие Услуги

Готовы к безопасности?

Связаться с нами