nmap
┌──(root㉿kali)-[~/lab]
└─# nmap -p- -A 192.168.192.182
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-12-02 04:50 UTC
Nmap scan report for 192.168.192.182
Host is up (0.071s latency).
Not shown: 65533 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 3072 c1:99:4b:95:22:25:ed:0f:85:20:d3:63:b4:48:bb:cf (RSA)
| 256 0f:44:8b:ad:ad:95:b8:22:6a:f0:36:ac:19:d0:0e:f3 (ECDSA)
|_ 256 32:e1:2a:6c:cc:7c:e6:3e:23:f4:80:8d:33:ce:9b:3a (ED25519)
80/tcp open http nginx
| http-title: Sign in \xC2\xB7 GitLab
|_Requested resource was http://192.168.192.182/users/sign_in
| http-robots.txt: 54 disallowed entries (15 shown)
| / /autocomplete/users /autocomplete/projects /search
| /admin /profile /dashboard /users /help /s/ /-/profile /-/ide/
|_/*/new /*/edit /*/raw
|_http-trane-info: Problem with XML parsing of /evox/about
No exact OS matches for host (If you know what OS is running on it, see https://nmap.org/submit/ ).
TCP/IP fingerprint:
OS:SCAN(V=7.94SVN%E=4%D=12/2%OT=22%CT=1%CU=39614%PV=Y%DS=4%DC=T%G=Y%TM=674D
OS:3CD0%P=x86_64-pc-linux-gnu)SEQ(SP=FB%GCD=1%ISR=10C%TI=Z%CI=Z%II=I%TS=A)O
OS:PS(O1=M578ST11NW7%O2=M578ST11NW7%O3=M578NNT11NW7%O4=M578ST11NW7%O5=M578S
OS:T11NW7%O6=M578ST11)WIN(W1=FE88%W2=FE88%W3=FE88%W4=FE88%W5=FE88%W6=FE88)E
OS:CN(R=Y%DF=Y%T=40%W=FAF0%O=M578NNSNW7%CC=Y%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+%F
OS:=AS%RD=0%Q=)T2(R=N)T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0%Q=)T5
OS:(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S=A%A=Z
OS:%F=R%O=%RD=0%Q=)T7(R=N)U1(R=Y%DF=N%T=40%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=
OS:G%RUCK=G%RUD=G)IE(R=Y%DFI=N%T=40%CD=S)Network Distance: 4 hops
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernelTRACEROUTE (using port 3389/tcp)
HOP RTT ADDRESS
1 69.92 ms 192.168.45.1
2 69.90 ms 192.168.45.254
3 70.81 ms 192.168.251.1
4 71.48 ms 192.168.192.182OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 55.67 seconds
访问发现是git站点
尝试注册一个用户登陆 发现也不能登录上去
卡了有点久
找版本找了半天最后发现了版本
试用一下这个exp
发现成功
直接反弹shell
然后不太会做了
直接看wp
他说我们其实是在docker容器里面
这我也是第一次遇到
发现backup里面有个秘钥 估计是ssh的私钥
由于是docker容器 我们看不到真正的用户名 非常糟糕
我试试之前爆破出来的用户名
很不幸登录不上去
这可咋整 我是两眼一黑
继续看wp
wp说gitlab 的这个uri能看到平台上的所有用户 /api/v4/users?access_token=
这我上哪说理去不熟悉这个平台的话就完全不知道有这个接口 真难
首先我们得先获取一下我们自己的access_token
我上网搜了一下咋获取
应该是这个 我把内容都勾选了 然后生成了一个token
试试
试试这个用户Coaran
用户名首字母改成小写试试
ssh -i id_rsa coaran@192.168.192.182
登录成功
在pspy64下发现了一个定时任务
看看这个任务在干啥
发现他是个用统配符 和zip打包/srv/gitlab/logs/ 下的所有文件
但是很不幸的是我们没有/srv/gitlab/logs/的写入权限 就不能形参通配符提权
然后找了半天也没啥可提权的点
地狱难度啊........................
看看万能的wp
wp说
在之前docker容器里面的git用户执行mount发现了几个奇怪的挂载目录
/dev/sda2 on /etc/gitlab type ext4 (rw,relatime)
/dev/sda2 on /etc/resolv.conf type ext4 (rw,relatime)
/dev/sda2 on /etc/hostname type ext4 (rw,relatime)
然后就发现了主机的/srv/gitlab/logs 实际上是挂载在docker的/var/log/gitlab/ 上的
同时我们发现我们的docker git用户对/var/log/gitlab/puma具有写权限
然后
ln -s /root/.ssh/id_rsa root_key
执行这个命令将root的id_rsa和root_key 链接起来
这样定时任务就会zip压缩到root 的id_rsa
然后解压改zip文件就能看到root的私钥
unzip log_backup.zip -d /tmp/
ssh 私钥登录提权成功
做了5个多小时 人麻了