vulnhub之SP:Harrison靶机
下载地址:‘https://www.vulnhub.com/entry/sp-harrison,302/’
环境:靶机放在virtualbox上运行,网卡模式
攻击机:kali Linux运行在VMware,注意网络模式选择桥接,并且桥接在virtualbox的虚拟网卡上
现在开始进入主题
首先使用netdiscover开启网络发现
发现了几个网段,因为靶机和我们是连接在同一张网卡,kali地址是192.168.163.0网段,那就上nmap这个工具
扫网段发现192.168.163.3这个机子是在vir上运行,靶机无疑。直接使用nmap -A 192.168.163.3 -p 1-65535 进行全扫描
有22,445端口
445 端口运行samba服务,是Linux下的一个共享服务,可以使用enum4linux 进行一个枚举
22端口运行ssh服务,并在扫描信息中发现了一个用户harrison,因为ssh算一个比较完善的服务,漏洞利用少,爆破也是不错的选择
使用enum4linux进行枚举,发现了一个共享文件夹Private
我们在使用smb客户端进看看是否是匿名共享,确实是匿名, -L 显示服务器端所分享出来的所有资源
直接连接smb的命令和ftp区别不大,ls一下文件发现了两个可以的.ssh目录可能存在密钥对,使我们ssh连接的时候使用私钥不用密码
flag.txt可能是我们这一关的终点站
下载到本地
查看内容,flag.txt经百度翻译为不会那么容易的。
id_rsa存私钥
authorized_keys里面存在着一份公钥,且有root字眼存在,不知道会不会是坑
使用ssh连接发现root使用不了私钥,我们前面扫描出一个用户搞好成功了,但是发现只能使用几个命令,受到限制
试试绕过,在次基础是新建一个shell终端进行绕过,最后成功了echo && 'bash'
echo 输出 &&与逻辑前面命令成功继续执行后面的所以shell就成功了
找到两个flag文件都不是,不过root下的flag有执行权限,应该是他,所以我们要进行提权
收集信息
uname -a # 查看内核/操作系统/CPU信息
cat /etc/issue,此命令也适用于所有的Linux发行版
得到几个有用的信息
找内核有没有漏洞,很不幸没有找到,可能是我的searchsploit太久没更新了,也有可能是这个版本还没有爆出漏洞,比竟这个靶机是5月份
上传LinEnum.sh
下载地址https://github.com/rebootuser/LinEnum.git
运行kali上的python形成一个简单的HTTP服务,记得放LinEnum脚本的地方最好在本地浏览器试一下
在靶机是属于wget下载脚本,运行,先给脚本可执行权限
查看一下suid(可以让调用者以文件拥有者的身份运行该文件)就是以root的权限运行
(Nmap Vim find Bash More Less Nano cp
)
到这里我熟悉的就用完了,想了一下,还有docker,进去/run查看一下运行文件,发现了docker.sock
谷歌上搜了一会发现两篇文章
https://blog.fundebug.com/2017/04/17/about-docker-sock/
https://www.freebuf.com/articles/system/201793.html
本地命令好像是这样子,但是我们要新建一个容许来挂载/root,所以要改一下poc
试一下,
curl -XPOST -H 'Content-Type: application/json' --unix-socket /var/run/docker.sock -d '{"Image":"ubuntu","Cmd":["/bin/sh"],"DetachKey":"ctrl-p,ctrl-q","Mounts":[{"Type":"bind","Source":"/root/","Target":'/os_root'}]}' http://localhost/containers/create
-XPOST 发送post请求
-h 添加请求头
Image 创造镜像名称
attach进入Docker容器,指定退出attach模式的快捷键序列,默认是CTRL+p CTRL-q
Cmd 执行的命令
Mounts 挂载 ,将root挂载在容器的os_root
--unix-socket
指定 unix socket 文件的地址 ,监听地址不是 IP:Port 而是 unix socket 的程序
curl --unix-socket /var/run/docker.sock http://localhost/images/json
获取所有的容器这个命令或许有用记下来
nc -U /var/run/docker.socket
nc不是脑残的缩写,是net cat的缩写。-U指明是unix socket
不知道传啥,然后又找到这个
改一下我们的poc
curl -XPOST -H 'Content-Type: application/json' --unix-socket /var/run/docker.sock -d '{"Image":"ubuntu","Cmd":["/bin/sh"],"DetachKey":"ctrl-p,ctrl-q","OpenStdin":true,"Mounts":[{"Type":"bind","Source":"/root/","Target":"/os_root"}]}' http://localhost/containers/create
成功提权,root
vulnhub之SP:Harrison靶机的更多相关文章
- Vulnhub实战-dr4g0n b4ll靶机👻
Vulnhub实战-dr4g0n b4ll靶机 地址:http://www.vulnhub.com/entry/dr4g0n-b4ll-1,646/ 描述:这篇其实没有什么新奇的技巧,用到的提权方式就 ...
- Vulnhub靶场——DC-1
记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...
- VulnHub PowerGrid 1.0.1靶机渗透
本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...
- vulnhub靶机Os-hackNos-1
vulnhub靶机Os-hackNos-1 信息搜集 nmap -sP 192.168.114.0/24 找到开放机器192.168.114.140这台机器,再对这台靶机进行端口扫描. 这里对他的端口 ...
- vulnhub靶机Tr0ll:1渗透笔记
Tr0ll:1渗透笔记 靶场下载地址:https://www.vulnhub.com/entry/tr0ll-1,100/ kali ip:192.168.20.128 靶机和kali位于同一网段 信 ...
- vulnhub 靶机 Kioptrix Level 1渗透笔记
靶机下载地址:https://www.vulnhub.com/entry/kioptrix-level-1-1,22/ kali ip 信息收集 先使用nmap收集目标的ip地址 nmap -sP 1 ...
- Vulnhub DC-1靶机渗透学习
前言 之前听说过这个叫Vulnhub DC-1的靶机,所以想拿来玩玩学习,结果整个过程都是看着别人的writeup走下来的,学艺不精,不过这个过程也认识到,学会了很多东西. 所以才想写点东西,记录一下 ...
- vulnhub靶机之DC6实战(wordpress+nmap提权)
0x00环境 dc6靶机下载地址:https://download.vulnhub.com/dc/DC-6.zip dc6以nat模式在vmware上打开 kali2019以nat模式启动,ip地址为 ...
- 对vulnhub靶机lampiao的getshell到脏牛提权获取flag
前言: vulnhub里面的一个靶场,涉及到drupal7 cms远程代码执行漏洞(CVE-2018-7600)和脏牛提权. 靶机下载地址:https://mega.nz/#!aG4AAaDB!CBL ...
随机推荐
- python3的hashlib库sha256、pbkdf2_hmac、blake2b基本用法
hashlib.sha256: import hashlib x = hashlib.sha256()x.update(b"asd")print("x_1 = " ...
- java基本程序设计结构总结
学习一门语言:(1)掌握它的表现形式(2)这些语言什么应用. 1.1关键字 1.关键字是被赋予了特殊含义的单词. 2.关键字特点:关键字所有字母都小写. 3.类名的每一个单词开头必须大写. 1.2标识 ...
- Java开发常用知识点总结
docker exec -it imageId redis-cli docker container ls -a docker rm containerId 复制目录&文件 cp -r /ro ...
- spring cloud 框架源码 activiti工作流 vue.js html 跨域 前后分离 springboot
1.代码生成器: [正反双向](单表.主表.明细表.树形表,快速开发利器)freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本.处理类.service等完整模块2. ...
- 学习shiro第二天
昨天讲了shiro的认证流程以及代码实现,今天将对这个进行扩展. 因为我们的测试数据是shiro.ini文件中配置的静态数据,但实际上数据应该从数据库中查询出来才合理,因此我们今天讲讲JdbcReal ...
- es6中find方法
find() 方法返回数组中满足提供的测试函数的第一个元素的值.否则返回 undefined. , , , , ]; var found = array1.find(function(element) ...
- 读《TCP/IP详解》:TCP
TCP(Transmission Control Protocol,传输控制协议),位于传输层,提供一种面向连接.可靠的字节流服务. 字节流服务(Byte Stream Service)是指,为了方便 ...
- AccessCenter 模块结构
AccessCenter 模块结构
- Linux---文件压缩与解压缩命令
压缩格式: zip.gz.bz2.tar .tar.gz.tar.bz2.tar.xz.xz.z 最常用的是.tar.gz格式和.tar.bz2格式 1.zip格式 命令 说明 zip 压缩文件名 ...
- NLP中的预训练语言模型(四)—— 小型化bert(DistillBert, ALBERT, TINYBERT)
bert之类的预训练模型在NLP各项任务上取得的效果是显著的,但是因为bert的模型参数多,推断速度慢等原因,导致bert在工业界上的应用很难普及,针对预训练模型做模型压缩是促进其在工业界应用的关键, ...