文章预览
gitlab数据恢复与后渗透 前言 平常渗透实战中,经常遇到 gitlab 或者 gitea 之类的私有仓库,需要对其进行数据恢复,进而后续审计代码,或者搜集开发的IP等个人信息,故有了此文章。 查资料阶段 根据官网文档可知 https://docs.gitlab.cn/jh/administration/repository_storage_types.html 它采用hash存储方式,存储在@hashed中,根据项目ID顶级文件夹名前两个字符hash和子文件夹的接下来两个字符hash生成。 文档中的默认路径:/var/opt/gitlab/git-data/repositories/@hashed/ 所以我们只需要打包它即可。 再接着看文档,根据 哈希路径到项目名称 这段的描述 我们可以从控制台获取hashed对应的projectid和项目名。或者直接从.git目录中的config文件中获取。 打开config文件,找到 [gitlab] 下的 fullpath= 键。 另一种方法,直接从Rails控制台恢复。官方提供的语句如下 ProjectRepository.find_by(disk_path:
………………………………