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_kernel TRACEROUTE (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.182 OS 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站点



尝试注册一个用户登陆 发现也不能登录上去



卡了有点久

找版本找了半天最后发现了版本

搜索exo发现了一个用户枚举的工具

https://www.exploit-db.com/exploits/49821

枚举出用户

michelle

然后发现密码也是michelle 登录成功

然后又试了试这几个需要登录的rce rep

试用一下这个exp https://www.exploit-db.com/exploits/49951



发现成功

直接反弹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个多小时 人麻了

Breakout pg walkthrough Intermediate的更多相关文章

  1. 简析服务端通过GT导入SHP至PG的方法

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 项目中需要在浏览器端直接上传SHP后服务端进行数据的自动入PG ...

  2. Bootstap datetimepicker报错TypeError: intermediate value

    Bootstrap datetimepicker有多个版本,官方的链接中,只是datepicker,没有时间的选择,原版的datetimepicker也不再更新,不能用新版的jquery.现在http ...

  3. PG 中 JSON 字段的应用

    13 年发现 pg 有了 json 类型,便从 oracle 转 pg,几年下来也算比较熟稔了,总结几个有益的实践. 用途一:存储设计时无法预料的文档性的数据.比如,通常可以在人员表准备一个 json ...

  4. pg gem 安装(postgresql94)

    使用下面命令安装报错 gem install pg 错误: [root@AS-test middle_database]# gem install pgBuilding native extensio ...

  5. #pg学习#postgresql的安装

    1.按照官网给的步骤编译安装(Mac安装是比较容易的,相比Liunx) cd /Users/renlipeng/Desktop/postgresql-9.5.1 ./configure --prefi ...

  6. PG 函数的易变性(Function Volatility Categories)

    此概念的接触是在做分区表的时候碰到的,分区表按时间字段分区,在查询时当where条件中时间为now()或者current_time()等时是无法查询的,即使进行格式转换也不行,只有是时间格式如‘201 ...

  7. c++错误——intermediate.manifest : general error c1010070很傻的错

    .\Debug\sadf.exe.intermediate.manifest : general error c1010070: Failed to load and parse the manife ...

  8. mysql 序列与pg序列的比较

    mysql序列(这里只谈innodb引擎): 在使用mysql的AUTO_INCREMENT时,使用AUTO_INCREMENT的字段必须建有索引,也可以为索引的一部分.当没有索引时会报错:      ...

  9. 使用zfs进行pg的pitr恢复测试

    前段时间做了一下zfs做pg的增量恢复测试,mark一下. 服务器信息: 主机:192.168.173.43 备机:192.168.173.41 主备使用流复制搭建,在备机上面进行了zfs快照备份. ...

  10. PG CREATEINDEX CONCURRENTLY

    PG CREATEINDEX CONCURRENTLY [TOC] 官方说法 根据9.1的文档 Creating an index can interfere with regular operati ...

随机推荐

  1. sprintboot-aop切面编程demo

    AOP(面向切面编程)的核心概念是"切面". 切面是一个跨越多个对象的类,它封装了横切关注点的具体实现.通过定义切面,开发人员可以将通用功能从业务逻辑中分离出来,形成独立的模块.在 ...

  2. vue3:computed

    扫码或者点击文字后台提问 原文: https://mp.weixin.qq.com/s/36dd--oj6jmkZblfJRh4iw computed 支持选项式写法 和 函数式写法 1.选项式写法 ...

  3. 【原创】PREEMPT-RT 系统cpu使用率周期CPU飙高问题

    PREEMPT-RT 系统cpu使用率周期CPU飙高问题 目录 PREEMPT-RT 系统cpu使用率周期CPU飙高问题 背景 现象 复现条件 原因 解决措施 背景 在22年进行PREEMPT-RT系 ...

  4. JVM调优总结:典型配置举例

    原文出处:http://developer.51cto.com/art/201201/311739.htm 一篇非常棒的关于JVM性能调优的文章,转载用于自己经常查阅 以下配置主要针对分代垃圾回收算法 ...

  5. windows电脑在线生成ios p12证书工具和生成教程

    使用hbuilderx开发ios APP的时候,打包APP提示需要IOS的打包证书 而hbuilderx本身是不能生成证书的,因为生成证书需要在苹果开发者中心生成.而在苹果开发者中心生成证书的时候,提 ...

  6. 使用maven 找到依赖的JAR包

    1.业务场景 有些时候,我需要知道某个jar包依赖了哪些包,这个时候可以通过maven 依赖插件将依赖的包copy出来. 2.具体做法 我们可以创建一个空的项目,增加 pom.xml 文件,增加我们需 ...

  7. Win10虚拟机安装Docker解决Docker Engine Stopped问题记录

    跟着网上的帖子开启WSL2安装DockerDesktop, 但是无法启动Docker,一直[Docker Engine stopped] 继续跟着网上的帖子解决问题,检查电脑各种配置都搞一通后还是无法 ...

  8. IE低版本cors跨域请求

    标签:js 坑位 最近接到一个活动需求,但是服务端接口全是跨域的,由于js同源策略,ajax请求是不允许跨域请求的,比较流行的解决方法是jsonp或者cors,但当服务端是走cors的时候,发现IE1 ...

  9. js面试题-代码实现

    新 API 最新的 url 参数获取的 API? URLSearchParams // 有如下一个url: http://localhost?a=1&b=2 function getUrlPa ...

  10. 中电金信多模态鉴伪技术抵御AI造假威胁

    ​ AI换脸技术,属于深度伪造最常见方式之一,是一种利用人工智能生成逼真的虚假人脸图片或视频的技术.基于深度学习算法,可以将一个人的面部特征映射到另一个人的面部,创造出看似真实的伪造内容.近年来,以A ...