0%

.DS_Store泄漏

泄漏起因

起因在于我把博客的图床的back cup由win迁移至了macos,重新上传时图方便采用了add .命令,而后在github中发现了.DS_Store文件

.DS_Store文件是什么

DS_Store 全称 Desktop Service Store,即桌面服务存储,是一种由macOS系统创建的隐藏文件,用于保存文件夹自定义的属性如图标位置或背景色等,类比于win下的desktop.ini。

DS文件存储了文件相关的信息,这使得它有可能因此造成文件目录结构泄漏或是源代码或其他敏感信息的泄漏,这些泄漏可以被当作攻击手段,如基于DS_Store的安全问题

如何防治

目前来看,ds文件主要会因为两个途径泄漏

  • 与别人互换文件时

    可以通过禁止全局的ds文件生成来源头性的避免ds文件的泄漏

    1
    defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE
  • 利用git等工具进行开发时

    采用全局性的.gitignore

    1
    2
    echo .DS_Store >> ~/.gitignore_global
    git config --global core.excludesfile ~/.gitignore_global