Gitlab渗透的深入利用及知识点总结

一、版本探测

http://url/assets/webpack/manifest.json 
将该json与GitHub某个数据库比对
https://github.com/righel/gitlab-version-nse/blob/main/gitlab_hashes.json
获取对应的版本信息

二、常见漏洞

给一个大佬总结的很全的清单:
https://www.moonsec.com/7495.html
这里只列出2020年以后的CVE号和对应的影响版本:
CVE-2020-10977任意文件读取
8.5 <= GitLab GitLab CE/EE <=12.9

CVE-2021-2884远程命令执行
11.3.4 <= GitLab CE/EE < 15.1.5
15.2 <= GitLab CE/EE < 15.2.3
15.3 <= GitLab CE/EE < 15.3.1

CVE-2021-22205远程命令执行
11.9 <= Gitlab CE/EE < 13.8.8
13.9 <= Gitlab CE/EE < 13.9.6
13.10 <= Gitlab CE/EE < 13.10.3

CVE-2021-22214Gitlab API未授权SSRF
10.5<=Gitlab CE/EE<13.10.5
13.11<=Gitlab CE/EE<13.11.5 
13.12<=Gitlab CE/EE<13.12.2

CVE-2022-2992 import api 远程命令执行
11.10 <= GitLab CE/EE < 15.1.6
15.2 <= GitLab CE/EE < 15.2.4
15.3 <= GitLab CE/EE < 15.3.2

CVE-2023-7028
16.1 <=GitLab CE<16.1.6
16.2 <=GitLab CE<16.2.8
16.3 <=GitLab CE<16.3.6
16.4 <=GitLab CE<16.4.4

好的,我可以为您提供一份 GitLab 自动备份脚本及增量备份的方案。 1. 自动备份脚本 首先,您需要创建一个脚本文件,例如 `gitlab_backup.sh`,并将其放置在 GitLab 服务器上。以下是一个简单的备份脚本示例: ```bash #!/bin/bash # 设置备份目录 BACKUP_DIR="/mnt/backups/gitlab" # 创建备份目录 mkdir -p $BACKUP_DIR # 执行备份命令 gitlab-rake gitlab:backup:create BACKUP=timestamp # 将备份文件移动到备份目录 mv /var/opt/gitlab/backups/* $BACKUP_DIR/ ``` 该脚本将会执行 GitLab 的备份命令,将备份文件移动到指定目录中。 2. 增量备份方案 要执行增量备份,您需要使用 GitLab 的 `gitlab-backup` 命令的 `SKIP` 参数。该参数将跳过已备份的数据,只备份最新的更改。 以下是一个示例脚本,可以在每天执行一次增量备份: ```bash #!/bin/bash # 设置备份目录 BACKUP_DIR="/mnt/backups/gitlab" # 创建备份目录 mkdir -p $BACKUP_DIR # 获取最近备份的时间戳 LAST_BACKUP=$(ls -Art $BACKUP_DIR | tail -n 1 | cut -d'_' -f2) # 执行备份命令 gitlab-rake gitlab:backup:create BACKUP=timestamp SKIP=$LAST_BACKUP # 将备份文件移动到备份目录 mv /var/opt/gitlab/backups/* $BACKUP_DIR/ ``` 该脚本将检查备份目录中最新的备份文件的时间戳,并将其传递给 `gitlab-backup` 命令的 `SKIP` 参数。这将导致 GitLab 仅备份自上次备份以来更改的数据。 希望这些信息能对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值