Как стать автором
Обновить

Файл .DS_Store: Подарок для исследователя и головная боль для владельца сайта

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.3K

Что такое .DS_Store?

.DS_Store (Desktop Services Store) — это скрытый файл, создаваемый операционной системой macOS для хранения метаданных о папке. Он используется Finder для записи таких параметров, как расположение значков, порядок сортировки, выбранный вид (иконки, список и т.д.), фон папки и другие настройки интерфейса.

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

Почему он появляется?

.DS_Store автоматически создаётся Finder'ом в любой папке, к которой пользователь macOS получил доступ через графический интерфейс. Это касается как локальных директорий, так и удалённых (например, через SMB, FTP или WebDAV).

Опасность .DS_Store

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

  2. Утечка конфиденциальных данных:
    Если в .DS_Store указаны пути к конфиденциальным файлам (например, admin/config.php или backup.zip), это может помочь злоумышленнику в поиске уязвимостей.

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

Почему он появляется на сайтах?

.DS_Store появление его на сайте:

  1. Ошибка при загрузке файлов:
    Разработчик использовал macOS для работы с проектом и случайно загрузил .DS_Store вместе с другими файлами на сервер.

  2. Автоматическая генерация:Если сервер поддерживает протоколы WebDAV, SMB или аналогичные, то .DS_Store может быть создан Finder'ом при доступе к папкам через macOS.

  3. Недостаточная очистка:При разработке или деплое проекта .DS_Store не был исключён из файлов для загрузки.

Чем полезен для исследования в Bug Bounty?

  1. Изучение структуры сайта:
    .DS_Store позволяет узнать о файлах и папках, которые могут быть скрыты от обычных пользователей. Например, можно обнаружить:
    Страницы администратора,
    Резервные копии,
    Временные файлы,
    Конфигурационные файлы.

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

  3. Автоматизация анализа:
    С помощью инструмента который я разработал специально для этой статьи:
    DsSScan при его помощи можно легко извлечь полезную информацию из .DS_Store и ускорить процесс анализа.

Как предотвратить появление .DS_Store?

  1. Игнорирование файла при загрузке:
    Настройте системы деплоя, чтобы .DS_Store не загружался на сервер. Например, добавьте его в .gitignore .

  2. Удаление перед загрузкой:
    Используйте команды для поиска и удаления .DS_Store перед деплоем:
    find . -name ".DS_Store" -delete

  3. Настройки в macOS:
    Вы можете отключить создание .DS_Store в сетевых директориях, выполнив следующую команду:
    defaults write com.apple.desktopservices DSDontWriteNetworkStores true

  4. Настройка сервера:
    Добавьте правило в конфигурацию веб-сервера (например, Nginx или Apache), чтобы доступ к .DS_Store блокировался:

    1. Apache:
      <Files ".DS_Store">
      Require all denied
      </Files>

    2. Nginx :
      location ~ /\.DS_Store {
      deny all;
      access_log off;
      log_not_found off;
      }

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

Спасибо, что прочитали статью. Я буду признателен, если вы оставите комментарий, подпишитесь. Удачи вам в охоте и обеспечение безопасности вашего сайта! (Возможно, я что-то упустил, вы также можете дополнить статью своим комментарием).

Теги:
Хабы:
Если эта публикация вас вдохновила и вы хотите поддержать автора — не стесняйтесь нажать на кнопку
+7
Комментарии7

Публикации

Истории

Работа

Ближайшие события

11 – 13 февраля
Epic Telegram Conference
Онлайн
27 марта
Deckhouse Conf 2025
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань